geerlingguy.elasticsearch-curator
Rola Ansible: Elasticsearch Curator
Rola Ansible, która instaluje Elasticsearch Curator na systemach RedHat/CentOS lub Debian/Ubuntu.
Wymagania
Brak, ale dużo łatwiej jest, gdy masz działający Elasticsearch!
Na systemach RedHat/CentOS upewnij się, że masz skonfigurowane repozytorium EPEL, aby móc zainstalować pakiet python-pip
. Możesz zainstalować repozytorium EPEL, dodając po prostu geerlingguy.repo-epel
do ról w swoim playbooku.
Zmienne roli
Dostępne zmienne są wymienione poniżej, wraz z domyślnymi wartościami (patrz defaults/main.yml
):
elasticsearch_curator_version: ''
Wersja elasticsearch-curator
, którą chcesz zainstalować. Dostępne wersje są wymienione na Python Package Index. Domyślnie nie podano wersji, więc zostanie zainstalowana najnowsza.
elasticsearch_curator_cron_jobs:
- name: "Uruchom akcje elastycznego kuratora."
job: "/usr/local/bin/curator ~/.curator/action.yml"
minute: 0
hour: 1
Lista zadań cron. Zazwyczaj uruchamiasz jedno zadanie cron używając akcji zdefiniowanych w action.yml
, ale możesz także podzielić zadania lub użyć curator_cli
, aby uruchomić akcje indywidualnie zamiast z pliku akcji. Możesz dodać dowolne z minute
, hour
, day
, weekday
, i month
do zadań cron—wartości, które nie są jawnie ustawione, będą miały domyślną wartość *
. Możesz również użyć state
, aby określić, czy zadanie ma być obecne
czy nieobecne
.
elasticsearch_curator_config_directory: ~/.curator
Folder, w którym będą przechowywane konfiguracje (i plik akcji) Kuratora.
elasticsearch_curator_hosts:
- 'localhost:9200'
elasticsearch_curator_http_auth: ''
Te zmienne kontrolują parametry używane w domyślnym pliku elasticsearch_curator_yaml
. Jeśli stworzysz własny niestandardowy elasticsearch_curator_yaml
, możesz nie musieć definiować lub nadpisywać tych zmiennych. _hosts
to lista hostów z portami, a _http_auth
to podstawowy ciąg http_auth
użytkownik:hasło
, jeśli twoja instancja Elasticsearch wymaga podstawowej autoryzacji HTTP.
elasticsearch_curator_yaml: |
---
client:
hosts: {{ elasticsearch_curator_hosts | to_yaml }}
url_prefix:
use_ssl: False
certificate:
client_cert:
client_key:
ssl_no_validate: False
http_auth: {{ elasticsearch_curator_http_auth }}
timeout: 30
master_only: False
logging:
loglevel: INFO
logfile:
logformat: default
blacklist: ['elasticsearch', 'urllib3']
Ten YAML trafia do pliku ~/.curator/curator.yml
i przechowuje szczegóły połączenia, które Kurator wykorzystuje do łączenia się z Elasticsearch, a także konfigurację logowania Kuratora.
elasticsearch_curator_action_yaml: |
---
actions:
1:
action: delete_indices
options:
ignore_empty_list: True
disable_action: False
filters:
- filtertype: pattern
kind: prefix
value: logstash-
exclude:
- filtertype: age
source: name
direction: older
timestring: '%Y.%m.%d'
unit: days
unit_count: 45
exclude:
Ten YAML trafia do pliku ~/.curator/action.yml
i definiuje akcje, które Kurator wykonuje, gdy uruchamiane jest domyślne zadanie cron. Zobacz dokumentację: Plik akcji Kuratora.
elasticsearch_curator_pip_package: 'python3-pip'
elasticsearch_curator_pip_executable: "{{ 'pip3' if elasticsearch_curator_pip_package.startswith('python3') else 'pip' }}"
Pakiet systemowy pip, który musi być zainstalowany, oraz plik wykonywalny pip
, który należy uruchomić. W przypadku starszych systemów operacyjnych lub przy używaniu Pythona 2, możesz potrzebować nadpisać to i zmienić na python-pip
oraz pip
odpowiednio.
Zależności
- geerlingguy.repo-epel (tylko RedHat/CentOS)
Przykład Playbooka
- hosts: search
roles:
- { role: geerlingguy.elasticsearch-curator }
Licencja
MIT / BSD
Informacje o autorze
Ta rola została stworzona w 2014 roku przez Jeffa Geerlinga, autora Ansible for DevOps.
Elasticsearch curator for Linux.
ansible-galaxy install geerlingguy.elasticsearch-curator