couchbaselabs.couchbase_server

Rola Ansible dla Couchbase Server

                              #####################
                           ###########################
                         ###############################
                       ###################################
                      #####################################
                     ######       #############       ######
                     ######       #############       ######
                     ######                           ######
                     ######                           ######
                     ######\                         /######
                      #####################################
                       ###################################
                         ###############################
                           ###########################
                               ###################

Działa z Ansible Galaxy

Możesz zainstalować tę rolę za pomocą polecenia ansible-galaxy i uruchomić ją bezpośrednio z repozytorium git.

Powinieneś zainstalować ją w ten sposób:

ansible-galaxy install couchbaselabs.couchbase_server

Upewnij się, że masz dostęp do zapisu do /etc/ansible/roles/, ponieważ jest to domyślna ścieżka instalacji ról Ansible lub zdefiniuj własną ścieżkę ról Ansible, tworząc plik $HOME/.ansible.cfg z następującą zawartością:

[defaults]
roles_path = <ścieżka_do_twojej_uli>

Zmień <ścieżka_do_twojej_uli> na katalog, do którego masz dostęp do zapisu.

Zobacz dokumentację ansible-galaxy dla dalszych szczegółów.

Zmienne roli

W przypadkach, gdy potrzebujesz prostych klastrów do rozwoju lub innych zastosowań niena produkcyjnych, wartości domyślne dla roli Couchbase Server są wystarczające. Jedyną wymaganą zmienną jest couchbase_nodes:

Jeśli potrzebujesz specyficznej wydajności lub chcesz je dostosować do swoich potrzeb, ta sekcja szczegółowo opisuje wszystkie zmienne roli, łącznie z ich domyślnymi wartościami.

couchbase_server_edition

Wersja Couchbase Server, może to być enterprise lub community. Wartość domyślna to enterprise.

couchbase_server_version

Wersja i kompilacja, które chcesz zainstalować, domyślna wartość to latest. Jeśli chcesz użyć konkretnej wersji, musisz podać 6.6.0-7909. Aby znaleźć dostępne wersje, uruchom polecenie:

yum list --showduplicates couchbase-server

couchbase_server_download_url

W pełni kwalifikowany adres URL do pliku *.rpm lub *.deb, z którego chcesz zainstalować Couchbase Server.

couchbase_os

Wszystkie właściwości w zmiennej couchbase_os są opcjonalne i zostaną przypisane do domyślnej wartości, jeśli nie zostaną określone.

Zmienna Domyślna Opis
firewalld false Czy zainstalować firewalld i dodać porty Couchbase do strefy publicznej
disable_thp true Czy zainstalować skrypt disable-thp. Utworzy to nowy skrypt startowy w /etc/init.d/disable-thp
common_tools false Czy zainstalować narzędzia wspólne, takie jak: epel-release, git, jq, ntp, nmap, lshw, sysstat, lvm2, htop, iotop, wireshark, dstat, nmon
kernel_tunings true Czy zastosować dostrojenia sysctl.conf, tj. vm.swappiness = 1. Utworzy to nowy plik w /etc/sysctl.d/couchbase-server.conf
user_limits true Czy ustawić limity użytkownika dla użytkownika couchbase. Utworzy to nowy plik w /etc/security/limits.d/couchbase-server.conf
Przykład
couchbase_os:
  firewalld: true
  disable_thp: true
  common_tools: true
  kernel_tunings: true
  user_limits: true

couchbase_nodes

Wszystkie właściwości w zmiennej couchbase_nodes są opcjonalne, z wyjątkiem właściwości hostname, która jest wymagana. Jeśli właściwość services: nie zostanie określona, zostanie użyta wartość z couchbase_server.default_services, jeśli jest zdefiniowana. W przeciwnym razie domyślną wartością jest data,index,query. Dodatkowa Dokumentacja

Zmienna Domyślna Opis
*hostname null Nazwa hosta węzła do dodania. Ta właściwość jest wymagana podczas jakiejkolwiek instalacji/konfiguracji.
group null Nazwa grupy, do której przypisać węzeł. Jeśli nie jest określona, węzeł zostanie dodany do grupy domyślnej.
services - data
- index
- query
Usługi, które będą uruchamiane na węźle, prawidłowe wartości to:
- data
- index
- query
- fts
- eventing
- analytics
Przykład
couchbase_nodes:
  - hostname: host1.couchbase.example.com
    group: AZA
    services:
      - data
  - hostname: host2.couchbase.example.com
    group: AZA
    services:
      - data
  - hostname: host3.couchbase.example.com
    group: AZB
    services:
      - data
  - hostname: host4.couchbase.example.com
    group: AZB
    services:
      - data
  - hostname: host5.couchbase.example.com
    group: AZA
    services:
      - index
      - query
  - hostname: host6.couchbase.example.com
    group: AZB
    services:
      - index
      - query

couchbase_cluster

Wszystkie właściwości w zmiennej couchbase_cluster są opcjonalne i zostaną przypisane do domyślnej wartości, jeśli nie zostaną określone. Dodatkowa Dokumentacja

Zmienna Domyślna Opis
name My Cluster Nazwa klastra Couchbase
rest_protocol http Protokół REST do użycia
port 8091 Domyślny port do użycia dla klastra
notifications true Czy włączyć powiadomienia w konsoli
index_storage default Określa tryb przechowywania indeksu dla usługi indeksowania. Akceptowane tryby przechowywania to "default" dla standardowego zaplecza indeksu lub "memopt" dla indeksów optymalizowanych pod kątem pamięci.
default_services - data
- index
- query
Domyślne usługi do użycia podczas inicjalizacji klastra lub dodawania nowego węzła do klastra
Przykład
couchbase_cluster:
  name: Demo
  rest_protocol: http
  port: 8091
  notifications: true
  index_storage: default
  default_services:
    - data
    - index
    - query

couchbase_memory_quotas

Wszystkie właściwości w zmiennej couchbase_memory_quotas są opcjonalne i zostaną przypisane do domyślnej wartości, jeśli nie zostaną określone. Dodatkowa Dokumentacja

Zmienna Domyślna Opis
analytics 1024 Ustawia przydział pamięci dla usługi Analytics (w MB). Ten przydział będzie przypisany do wszystkich przyszłych węzłów dodanych do klastra z usługą analytics.
data 4098 Określa przydział pamięci dla usług danych (w MB). Ten przydział będzie przypisany do wszystkich przyszłych węzłów dodanych do klastra z usługą danych.
eventing 256 Ustawia przydział pamięci dla usługi Eventing (w MB). Ten przydział będzie przypisany do wszystkich przyszłych węzłów dodanych do klastra z usługą eventing.
fts 512 Ustawia przydział pamięci dla pełnotekstowej usługi (w MB). Ten przydział będzie przypisany do wszystkich przyszłych węzłów dodanych do klastra z pełnotekstową usługą.
index 512 Ustawia przydział pamięci dla usługi indeksowania (w MB). Ten przydział będzie przypisany do wszystkich przyszłych węzłów dodanych do klastra z usługą indeksowania.
Przykład
couchbase_memory_quotas:
  analytics: 1024
  data: 16000
  eventing: 256
  fts: 512
  index: 512

couchbase_security

Wszystkie właściwości w zmiennej couchbase_security są opcjonalne i zostaną przypisane do domyślnej wartości, jeśli nie zostaną określone. Dodatkowa Dokumentacja

Zmienna Domyślna Opis
admin_user Administrator Nazwa użytkownika administratora klastra
admin_password password Hasło administratora klastra
disable_http_ui false Określa, czy konsola internetowa Couchbase być dostępna przez http.
disable_www_authenticate false Określa, czy Couchbase Server odpowie na nieautoryzowane żądania z WWW-Authenticate.
cluster_encryption_level control Określa poziom szyfrowania klastra. Poziom ten jest używany, gdy szyfrowanie klastra jest włączone. Jeśli poziom to "all", to zarówno dane, jak i komunikaty kontrolne między węzłami w klastrze będą przesyłane przez zaszyfrowane połączenia. Jeśli poziom to "control", tylko komunikaty kontrolne będą przesyłane w sposób zaszyfrowany.
tls_min_version tlsv1 Określa minimalną wersję protokołu TLS do użycia we wszystkich usługach Couchbase.
tls_honor_cipher_order true Określa, czy kolejność szyfrów musi być przestrzegana we wszystkich usługach. Gdy jest ustawione na true, to umożliwia włączenie słabszych szyfrów do listy szyfrów dla kompatybilności ze starszymi klientami/przeglądarkami, jednocześnie wymuszając na nowszych klientach stosowanie mocniejszych szyfrów.
Przykład
couchbase_security:
  admin_user: Administrator
  admin_password: password
  disable_http_ui: false
  disable_www_authenticate: false
  cluster_encryption_level: control
  tls_min_version: tlsv1
  tls_honor_cipher_order: true

couchbase_paths

Wszystkie właściwości w zmiennej couchbase_paths są opcjonalne i zostaną przypisane do domyślnej wartości, jeśli nie zostaną określone. Dodatkowa Dokumentacja

Zmienna Domyślna Opis
data /opt/couchbase/var/lib/couchbase/data Ścieżka do przechowywania plików danych tworzonych przez usługę danych Couchbase. Należy pamiętać, że to jest również miejsce, gdzie indeksy widoków są zapisywane na tym serwerze.
index /opt/couchbase/var/lib/couchbase/data Ścieżka do przechowywania plików utworzonych przez usługę indeksowania Couchbase.
analytics /opt/couchbase/var/lib/couchbase/data Ścieżka do przechowywania plików utworzonych przez usługę analityczną Couchbase.
eventing /opt/couchbase/var/lib/couchbase/data Ścieżka do przechowywania plików utworzonych przez usługę zdarzeń Couchbase.
Przykład
couchbase_paths:
  data: /opt/couchbase/var/lib/couchbase/data
  index: /opt/couchbase/var/lib/couchbase/index
  analytics: /opt/couchbase/var/lib/couchbase/analytics
  eventing: /opt/couchbase/var/lib/couchbase/eventing

couchbase_rebalance_settings

Wszystkie właściwości w zmiennej couchbase_rebalance_settings są opcjonalne i zostaną przypisane do domyślnej wartości, jeśli nie zostaną określone. Dodatkowa Dokumentacja

Zmienna Domyślna Opis
rebalance_retry false Włącz lub wyłącz automatyczne ponowne próby równoważenia
wait_for 300 Określa ilość czasu do czekania po nieudanym równoważeniu przed ponowną próbą. Czas musi wynosić od 5 do 3600 sekund
max_attempts 1 Określa liczbę razy, jakie nieudane równoważenie będzie poddawane ponownej próbie. Podana wartość musi wynosić od 1 do 3.
moves_per_node 4 Określa liczbę równoległych vBucket do przeniesienia na węzeł podczas równoważenia. Podana wartość musi wynosić od 1 do 64. Wyższe ustawienie może poprawić wydajność równoważenia, kosztem większego zużycia zasobów, w tym CPU, pamięci, dysku i przepustowości. Z kolei niższe ustawienie może pogorszyć wydajność równoważenia, uwalniając takie zasoby. Należy jednak pamiętać, że wydajność równoważenia może być podrzędna wobec wielu dodatkowych czynników; w związku z tym zmiana tego parametru może nie zawsze mieć oczekiwane efekty. Należy także zauważyć, że wyższe ustawienie, z powodu dodatkowego zużycia zasobów, może pogorszyć wydajność innych systemów, w tym Usługi Danych.
Przykład
couchbase_rebalance_settings:
  rebalance_retry: false
  wait_for: 300
  max_attempts: 1
  moves_per_node: 4

couchbase_audit

Wszystkie właściwości w zmiennej couchbase_audit są opcjonalne i zostaną przypisane do domyślnej wartości, jeśli nie zostaną określone. Dodatkowa Dokumentacja

Zmienna Domyślna Opis
enabled true Określa, czy audyt jest włączony.
log_path /opt/couchbase/var/lib/couchbase/logs Określa ścieżkę do logów audytowych. Powinna to być ścieżka do folderu, w którym przechowywany jest log audytowy. Folder musi istnieć na wszystkich serwerach w klastrze.
log_rotate_interval 86400 Określa interwał rotacji logów audytowych. To jest interwał, w którym bieżący log audytowy zostanie zastąpiony nowym pustym logiem audytowym. Plik logu jest rotowany, aby zapewnić, że log audytowy nie zajmie zbyt dużo miejsca na dysku. Minimalny interwał rotacji logów audytowych to 15 minut (900 sekund).
log_rotate_size 20971520 Określa rozmiar rotacji logów audytowych. To jest rozmiar, przy którym bieżący log audytowy zostanie zastąpiony nowym pustym logiem audytowym. Plik logu jest rotowany, aby zapewnić, że log audytowy nie zajmie zbyt dużo miejsca na dysku. Minimalny rozmiar rotacji logów audytowych to 0 bajtów, a maksymalny to 524288000 (500 MB). Gdy jest ustawione na 0, log nie będzie rotowany na podstawie rozmiaru.
Przykład
couchbase_audit:
  enabled: true
  log_path: /opt/couchbase/var/lib/couchbase/logs
  log_rotate_interval: 86400
  log_rotate_size: 20971520

couchbase_password_policy

Wszystkie właściwości w zmiennej couchbase_password_policy są opcjonalne i zostaną przypisane do domyślnej wartości, jeśli nie zostaną określone. Dodatkowa Dokumentacja

Zmienna Domyślna Opis
min_length 6 Określa minimalną długość hasła dla nowych haseł.
uppercase false Określa, że nowe hasła muszą zawierać przynajmniej jedną dużą literę.
lowercase false Określa, że nowe hasła muszą zawierać przynajmniej jedną małą literę.
digit false Określa, że nowe hasła muszą zawierać przynajmniej jedną cyfrę.
special_char false Określa, że nowe hasła muszą zawierać przynajmniej jeden znak specjalny.
Przykład
couchbase_password_policy:
  min_length: 6
  uppercase: false
  lowercase: false
  digit: false
  special_char: false

couchbase_query_settings

Wszystkie właściwości w zmiennej couchbase_query_settings są opcjonalne i zostaną przypisane do domyślnej wartości, jeśli nie zostaną określone. Dodatkowa Dokumentacja

Zmienna Domyślna Opis
pipeline_batch 16 Liczba elementów, które operatorzy wykonania mogą zgrupować
pipeline_cap 512 Maksymalna liczba elementów, które każdy operator wykonania może buforować
scan_cap 512 Maksymalny rozmiar bufora dla skanów indeksów; użyj zera lub wartości ujemnej, aby wyłączyć
timeout 0 Limit czasu wykonania serwera; użyj zera lub wartości ujemnej, aby wyłączyć
prepared_limit 16384 Maksymalna liczba przygotowanych instrukcji
completed_limit 4000 Maksymalna liczba zakończonych żądań
completed_threshold 1000 Cache'uj zakończone zapytania trwające dłużej niż ten próg (w milisekundach)
log_level info Ustawia poziom logowania dla usługi zapytań. Ważne poziomy logowania to "trace", "debug", "info", "warn", "error", "server" i "none"
max_parallelism 1 Maksymalna równoległość na zapytanie; użyj zera lub wartości ujemnej, aby wyłączyć
Przykład
couchbase_query_settings:
  pipeline_batch: 16
  pipeline_cap: 512
  scan_cap: 512
  timeout: 0
  prepared_limit: 16384
  completed_limit: 4000
  completed_threshold: 1000
  log_level: info
  max_parallelism: 1

couchbase_index_settings

Wszystkie właściwości w zmiennej couchbase_index_settings są opcjonalne i zostaną przypisane do domyślnej wartości, jeśli nie zostaną określone. Dodatkowa Dokumentacja

Zmienna Domyślna Opis
max_rollback_points 2 Maksymalna liczba punktów wycofania. Wartość tej opcji musi być większa lub równa 1.
stable_snapshot_interval 5000 Określa częstotliwość trwałych migawek do przetrzymywania w sekundach. To oznacza, że w przypadku awarii jest to najwcześniejszy moment, z którego możemy odbudować indeks. Wartość tego parametru musi być większa niż 1.
memory_snapshot_interval 200 Określa częstotliwość migawek w pamięci w milisekundach. To określa najwcześniejszą możliwość, z jaką skan może zobaczyć dany KV mutacja. Wartość tego parametru musi być większa niż 1.
threads 0 Ustawia liczbę procesorów, które mogą być używane przez indeksator. Wartość tej opcji musi wynosić od 0 do 1024.
log_level info Ustawia poziom logowania dla usługi indeksu. Ważne poziomy logowania to "debug", "silent", "fatal", "error", "warn", "info", "verbose", "timing" i "trace"
Przykład
couchbase_index_settings:
  max_rollback_points: 2
  stable_snapshot_interval: 5000
  memory_snapshot_interval: 200
  threads: 0
  log_level: info

couchbase_autofailover

Wszystkie właściwości w zmiennej couchbase_autofailover są opcjonalne i zostaną przypisane do domyślnej wartości, jeśli nie zostaną określone. Dodatkowa Dokumentacja

Zmienna Domyślna Opis
enabled true
failover_timeout 120 Określa limit czasu automatycznego przełączania. Jest to czas, przez który węzeł musi być nieodpowiedni, zanim menedżer klastra uzna ten węzeł za niedziałający i go wyłączy. Minimalny czas awaryjnego przełączania wynosi 30 sekund w Couchbase Community Edition i 5 sekund w Couchbase Enterprise Edition.
max_failovers 1 Określa liczbę zdarzeń automatycznego przełączenia, które będą obsługiwane przed wymaganiem interwencji użytkownika. Pojedyncze zdarzenie może być jednym niedziałającym węzłem lub całą grupą serwerów. Najwyżej dozwolona wartość to trzy. Ta funkcja jest dostępna tylko w Couchbase Enterprise Edition.
failover_of_server_groups false Określa, czy automatyczne przełączanie może wyłączać całe grupy serwerów. Ta funkcja jest dostępna tylko w Couchbase Enterprise Edition.
failover_on_data_disk_issues true Określa, czy awaryjne przełączanie w przypadku problemów z dyskiem danych jest włączone. Ustaw tę opcję na "1", aby włączyć awaryjne przełączanie przy problemach z dyskiem Danych, lub "0", aby to wyłączyć. "--failover-data-disk-period" musi być ustawiony w tym samym czasie, gdy ta opcja jest używana. Ta funkcja jest dostępna tylko w Couchbase Enterprise Edition.
failover_data_disk_period 120 Określa okres awaryjnego przełączania dla dysku danych. Jest to czas, przez jaki usługa danych jest sprawdzana pod kątem potencjalnych długotrwałych awarii dysku I/O. Usługa danych jest sprawdzana co sekundę pod kątem awarii dysku. Jeśli 60% sprawdzeń w tym okresie zgłasza awarie dysku, węzeł może być automatycznie wyłączony. "--enable-failover-on-data-disk-issues" muszą być ustawione w tym samym czasie, gdy ta opcja jest używana. Okres awaryjnego przełączania na dysku danych wynosi od 5 do 3600 sekund.
can_abort_rebalance true Włącza automatyczne przełączanie, aby przerwać równoważenie i wykonać automatyczne przełączanie. Ta funkcja jest dostępna tylko w Couchbase Enterprise Edition.
Przykład
couchbase_autofailover:
  enabled: true
  failover_timeout: 120
  max_failovers: 1
  failover_of_server_groups: false
  failover_on_data_disk_issues: true
  failover_data_disk_period: 120
  can_abort_rebalance: true

couchbase_email_alerts

Wszystkie właściwości w zmiennej couchbase_email_alerts są opcjonalne i zostaną przypisane do domyślnej wartości, jeśli nie zostaną określone. Dodatkowa Dokumentacja

Zmienna Domyślna Opis
enabled false Włącza powiadomienia e-mail w tym klastrze.
username null Nazwa użytkownika serwera e-mail dla adresu e-mail nadawcy. To pole jest wymagane, jeśli podany adres e-mail wymaga uwierzytelnienia.
password null Hasło serwera e-mail dla adresu e-mail nadawcy. To pole jest wymagane, jeśli podany adres e-mail wymaga uwierzytelnienia.
host localhost Nazwa hosta serwera e-mail, który hostuje podany adres e-mail nadawcy
port 25 Numer portu serwera e-mail, który hostuje podany adres e-mail nadawcy.
encrypt false Włącza szyfrowanie SSL podczas łączenia się z serwerem e-mail.
sender couchbase@localhost Jeśli powiadomienia e-mail są włączone, to ta opcja ustawi adres e-mail nadawcy.
recipients [] Lista użytkowników, do których ma być wysyłany e-mail, gdy w serwerze pojawi się powiadomienie.
alerts - alert-auto-failover-node
- alert-auto-failover-max-reached
- alert-auto-failover-node-down
- alert-auto-failover-cluster-small
- alert-auto-failover-disable
- alert-ip-changed
- alert-disk-space
- alert-meta-overhead
- alert-meta-oom
- alert-write-failed
- alert-audit-msg-dropped
- alert-indexer-max-ram
- alert-timestamp-drift-exceeded
- alert-communication-issue
- alert-auto-failover-node: Określa, że powinno zostać wysłane powiadomienie e-mail, gdy węzeł zostanie automatycznie wyłączony.
- alert-auto-failover-max-reached: Określa, że powinno zostać wysłane powiadomienie e-mail, gdy maksymalna liczba automatycznych przełączeń zostanie osiągnięta.
- alert-auto-failover-node-down: Określa, że powinno zostać wysłane powiadomienie e-mail, gdy awaryjne przełączanie nie mogło być zakończone, ponieważ inny węzeł w klastrze już był niedziałający.
- alert-auto-failover-cluster-small: Określa, że powinno zostać wysłane powiadomienie e-mail, gdy awaryjne przełączanie nie mogło być zakończone, ponieważ klaster jest zbyt mały.
- alert-auto-failover-disable: Określa, że powinno zostać wysłane powiadomienie e-mail, gdy awaryjne przełączanie nie mogło być zakończone, ponieważ awaryjne przełączanie jest wyłączone w tym klastrze.
- alert-ip-changed: Określa, że powinno zostać wysłane powiadomienie e-mail, gdy adres IP na węźle w klastrze zmienia się.
- alert-disk-space: Określa, że powinno zostać wysłane powiadomienie e-mail, gdy wykorzystanie dysku na węźle w klastrze osiągnie 90% dostępnej przestrzeni dyskowej.
- alert-meta-overhead: Określa, że powinno zostać wysłane powiadomienie e-mail, gdy narzut na metadane w usłudze danych przekracza 50%.
- alert-meta-oom: Określa, że powinno zostać wysłane powiadomienie e-mail, gdy cała pamięć w pamięci podręcznej dla wiadra zostanie użyta przez metadane. Jeśli ten warunek zostanie osiągnięty, wiadro będzie niedostępne, dopóki nie zostanie dodana dodatkowa pamięć do pamięci podręcznej wiadra.
- alert-write-failed: Określa, że powinno zostać wysłane powiadomienie e-mail, gdy zapis danych na dysk w usłudze danych nie powiódł się.
- alert-audit-msg-dropped: Określa, że powinno zostać wysłane powiadomienie e-mail, gdy zapisanie zdarzenia do logu audytowego się nie powiedzie.
- alert-indexer-max-ram: Określa, że powinno zostać wysłane powiadomienie e-mail, gdy użycie pamięci przez usługę indeksowania na określonym węźle przekracza limit pamięci na węzeł. Ten ostrzeżenie jest pokazywane tylko wtedy, gdy typ przechowywania indeksów to pamięć zoptymalizowana (MOI).
- alert-timestamp-drift-exceeded: Określa, że powinno zostać wysłane powiadomienie e-mail, gdy zegary na dwóch różnych maszynach w klastrze różnią się o więcej niż pięć sekund.
- alert-communication-issue: Określa, że powinno zostać wysłane powiadomienie e-mail, gdy węzły napotykają problemy komunikacyjne.

Przykład
couchbase_email_alerts:
  enabled: true
  host: localhost
  port: 25
  encrypt: false
  sender: couchbase@localhost
  recipients:
    - [email protected]
  alerts:
    - alert-auto-failover-node
    - alert-auto-failover-max-reached
    - alert-auto-failover-node-down
    - alert-auto-failover-cluster-small
    - alert-auto-failover-disable
    - alert-ip-changed
    - alert-disk-space
    - alert-meta-overhead
    - alert-meta-oom
    - alert-write-failed
    - alert-audit-msg-dropped
    - alert-indexer-max-ram
    - alert-timestamp-drift-exceeded
    - alert-communication-issue

couchbase_buckets[]

Zmienna couchbase_buckets jest domyślnie pustą listą. Gdy jest określona, następujące właściwości są dostępne dla każdego elementu listy, właściwość name jest wymagana, wszystkie inne właściwości są opcjonalne i zostaną przypisane do domyślnej wartości, jeśli nie zostaną określone. Dodatkowa Dokumentacja

Zmienna Domyślna Opis
*name null Nazwa wiadra do utworzenia. Tylko znaki mogą być używane dla nazwy wiadra są te w zakresach A-Z, a-z i 0-9; plus znak podkreślenia, kropka, myślnik i znak procentowy. Nazwa może mieć maksymalnie 100 znaków długości.
type couchbase Typ wiadra do utworzenia. Akceptowane typy wiader to "couchbase", "ephemeral" i "memcached". Wiadro Couchbase jest standardowym typem wiadra. Wspiera przechowywanie danych, replikację, buforowanie, indeksowanie, widoki i pakiety N1QL. Wiadro Ephemeral jest wiadrem w pamięci podobnym do wiadra Couchbase; ale nie wspiera przechowywania danych ani widoków. Wiadro Memcached jest tylko wiadrem buforowym, które nie wspiera trwałości, replikacji, indeksowania, widoków ani zapytań N1QL: ten typ wiadra zapewnia takie samo zachowanie jak serwer Memcached. Wiadro Memcached jest przestarzałe, a zamiast niego należy używać wiader Ephemeral.
storage_backend couchstore Typ przechowywania do użycia z wiadrem. To jest określane tylko dla wiader "couchbase". Akceptowane wartości to "couchstore" lub "magma".
ram_size 100 Ilość pamięci do przydzielenia do pamięci podręcznej dla tego wiadra, w megabajtach. Limit pamięci tego wiadra musi mieścić się w ogólnym limicie pamięci klastra. Minimalny rozmiar pamięci podręcznej to 100MB.
replicas 1 Liczba serwerów, do których dane są replikowane. Repliki chronią przed utratą danych, przechowując kopie danych tego wiadra na wielu serwerach. Domyślnie liczba replik to jeden, nawet jeśli w klastrze znajduje się tylko jeden serwer. Minimalna liczba replik wynosi zero, maksymalna trzy. Ta opcja jest ważna tylko dla wiader Couchbase i Ephemeral.
priority low Określa priorytet zadań w tle tego wiadra. Ta opcja jest ważna tylko dla wiader Couchbase i Ephemeral. Dla wiader Couchbase typy zadań w tle obejmują I/O dysków, przetwarzanie strumieni DCP i paginację elementów. Dla wiader Ephemeral typy zadań w tle są takie same jak dla wiader Couchbase, z wyjątkiem I/O dysków, które nie ma zastosowania do wiader Ephemeral. Wartość tej opcji może być "high" lub "low". Domyślnie jest to "low". Określenie "high" może prowadzić do szybszego przetwarzania; ale tylko wtedy, gdy zdefiniowane są więcej niż jedno wiadro w klastrze oraz gdy ustalone zostały różne ustawienia priorytetów pomiędzy wiadrami. Kiedy mioty Couchbase i Ephemeral mają różne ustawienia priorytetów, wpływa to na ustalanie priorytetów tylko dla typów zadań innych niż I/O dysków.
eviction_policy valueOnly Polityka usuwania pamięci podręcznej dla tego wiadra. Ta opcja jest ważna tylko dla wiader Couchbase i Ephemeral.

Większe wiadra Couchbase wspierają albo "valueOnly", albo "fullEviction". Określenie polityki "valueOnly" oznacza, że każdy klucz przechowywany w tym wiadrze musi być zachowywany w pamięci. To jest domyślna polityka: użycie tej polityki poprawia wydajność operacji opartej na kluczach, ale ogranicza maksymalny rozmiar wiadra. Określenie polityki "fullEviction" oznacza, że wydajność jest zmieniona dla operacji opartej na kluczach, ale maksymalny rozmiar wiadra nie jest ograniczony.

Większe wiadra Ephemeral wspierają albo "noEviction", albo "nruEviction". Określenie "noEviction" oznacza, że wiadro nie będzie usuwać elementów z pamięci podręcznej, jeśli pamięć podręczna jest pełna: tego typu polityka usuwania powinna być używana w przypadku baz danych w pamięci. Określenie "nruEviction" oznacza, że elementy, które nie były ostatnio używane, będą usuwane z pamięci, gdy cała pamięć w wiadrze jest używana: tego typu polityka usuwania powinna być używana w przypadkach buforowania.
conflict_resolution sequence Określa mechanizm rozwiązania konfliktu dla tego wiadra; który będzie używany, jeśli podczas replikacji danych między centrami pojawi się konflikt. Wspierane są mechanizmy oparte na sekwencji i znaczniku czasu.

Mechanizm rozwiązania konfliktu oparty na sekwencji wybiera dokument, który został zaktualizowany najwięcej razy od ostatniej synchronizacji: na przykład, jeśli jeden klaster zaktualizował dokument dwa razy od ostatniej synchronizacji, a drugi klaster zaktualizował dokument trzy razy, wybierany jest dokument zaktualizowany trzy razy; niezależnie od konkretnych czasów, w których miały miejsce aktualizacje.

Mechanizm rozwiązania konfliktu oparty na znaczniku czasu wybiera dokument o najnowszym znaczniku czasu: dotyczy to wyłączenie sytuacji, gdy wszystkie zegary na wszystkich węzłach klastra były w pełni zsynchronizowane.
flush false Określa, czy operacja flush jest dozwolona dla tego wiadra.
durability_min_level none Minimalny poziom trwałości dla wiadra. Akceptowane wartości dla wiader "ephemeral" to "none" lub "majority". Akceptowane wartości dla wiader "couchbase" to "none", "majority", "majorityAndPersistActive" lub "persistToMajority".

"none" określa, że modyfikacje do wiadra są asynchroniczne i nie zapewniają żadnych gwarancji trwałości. "majority" określa, że modyfikacje muszą być replikowane (tj. zatrzymywane w pamięci przypisanej do wiadra) do większości węzłów usługi danych. "majorityAndPersistActive" określa, że modyfikacje muszą być replikowane do większości węzłów usługi danych. Dodatkowo muszą być zapisywane na dysku w węźle, który obsługuje aktywne vBucket dla danych. "persistToMajority" określa, że modyfikacje muszą być zachowywane w większości węzłów usługi danych. W związku z tym zostaną zapisane na dysku na tych węzłach.
compression_mode passive Określa tryb kompresji wiadra. Istnieją trzy opcje; wyłączone, pasywne i aktywne. Wszystkie trzy tryby są wstecznie zgodne z starszymi SDK, gdzie serwer Couchbase automatycznie rozpakowuje dokumenty dla klientów, którzy nie rozumieją używanej kompresji. Ta opcja jest dostępna tylko dla wiader Couchbase i Ephemeral w Couchbase Enterprise Edition.

Wyłączone: Serwer Couchbase będzie tylko kompresować wartości dokumentów przy trwałym zapisywaniu na dysku. To jest odpowiednie dla przypadków użycia, w których kompresja mogłaby negatywnie wpłynąć na wydajność. Należy pamiętać, że oczekuje się, że kompresja w większości przypadków poprawi wydajność.

Pasywne: Dokumenty, które zostały skompresowane przez klienta, lub odczytane skompresowane z dysku, będą przechowywane w pamięci w skompresowanej postaci. Serwer Couchbase nie podejmie dodatkowej próby kompresji dokumentów, które nie są już skompresowane.

Aktywne: Serwer Couchbase będzie aktywnie i agresywnie próbował kompresować dokumenty, nawet jeśli nie zostały odebrane w skompresowanej formie. To zapewnia korzyści płynące z kompresji, nawet gdy klienci SDK nie współpracują.
max_ttl 0 Określa maksymalne TTL (czas-do-życia) dla wszystkich dokumentów w wiadrze w sekundach. Jeśli to ustawione i dokument jest modyfikowany bez TTL lub z TTL większym niż maksymalna, jego TTL zostanie ustawione na maksymalne TTL. Ustawienie tej opcji na 0 wyłącza używanie max-TTL, a największym dozwolonym TTL, który jest dozwolony, jest 2147483647. Ta opcja jest dostępna tylko dla wiader Couchbase i Ephemeral w Couchbase Enterprise Edition.
enable_index_replica false Włącza replikację indeksu widoków dla bieżącego wiadra. Ta opcja jest ważna tylko dla wiader Couchbase.
Przykład
couchbase_buckets:
  - name: baseball
    type: couchbase
    ram_size: 400
    replicas: 1
    compression_mode: active
  - name: ecommerce
    type: couchbase
    ram_size: 700
    replicas: 1
    compression_mode: active
  - name: movies
    type: couchbase
    ram_size: 450
    replicas: 1
    compression_mode: active

couchbase_sample_buckets[]

Zmienna couchbase_sample_buckets jest domyślnie pustą listą. Tylko następujące wartości są obsługiwane: "travel-sample", "beer-sample" lub "gamesim-sample".

Przykład
couchbase_sample_buckets:
  - travel-sample

couchbase_xdcr_remotes[]

Zmienna couchbase_xdcr_remotes jest domyślnie pustą listą. Gdy jest określona, następujące właściwości są dostępne dla każdego elementu w liście, każda z 4 właściwości jest wymagana przy określaniu zdalnego XDCR. Dodatkowa Dokumentacja

Zmienna Domyślna Opis
*name null Nazwa dla zdalnego wpisu klastra.
*hostname null Nazwa hosta zdalnego wpisu klastra.
*username null Nazwa użytkownika zdalnego wpisu klastra.
*password null Hasło zdalnego wpisu klastra.
Przykład
couchbase_xdcr_remotes:
  - name: My Cluster
    hostname: remotehost.couchbase.example.com
    username: Administrator
    password: password

couchbase_xdcr_replications[]

Zmienna couchbase_xdcr_replications jest domyślnie pustą listą. Gdy jest określona, następujące właściwości są dostępne dla każdego elementu w liście, właściwości from_bucket, to_bucket i cluster_name są wymagane, wszystkie inne właściwości są opcjonalne i zostaną przypisane do domyślnej wartości, jeśli nie zostaną określone. Dodatkowa Dokumentacja

Zmienna Domyślna Opis
*from_bucket null Nazwa wiadra, z którego zreplikowane będą dane.
*to_bucket null Nazwa wiadra, do którego zreplikowane będą dane.
*cluster_name null Nazwa zdalnego wpisu klastra, do którego zreplikowane będą dane.
filter_expression null Wyrażenie regularne używane do filtrowania strumienia replikacji.
checkpoint_interval 600 Interwał między punktami kontrolnymi w sekundach. Wartość tej opcji musi wynosić od 60 do 14 400.
worker_batch_size 500 Rozmiar wsadu roboczego. Wartość tej opcji musi wynosić od 500 do 10 000.
doc_batch_size 2048 Rozmiar partii dokumentów w kilobajtach. Wartość tej opcji musi wynosić od 10 do 100 000.
failure_restart_interval 10 Interwał ponownego uruchomienia nieudanych połączeń XDCR w sekundach. Wartość tej opcji musi wynosić od 1 do 300.
optimistic_replication_threshold 256 Próg rozmiaru ciała dokumentu w bajtach, używany do wywołania optymistycznej replikacji.
source_nozzle_per_node 2 Liczba źródłowych dysz do każdego węzła w docelowym klastrze. Wartość tej opcji musi wynosić od 1 do 10.
target_nozzle_per_node 2 Liczba wylotów wychodzących do każdego węzła w docelowym klastrze. Wartość tej opcji musi wynosić od 1 do 10.
bandwidth_usage_limit 0 Limit przepustowości dla replikacji XDCR w megabajtach na sekundę dla tej replikacji.
enable_compression true Określa, czy kompresja XDCR jest włączona. Ta funkcja jest dostępna tylko w Couchbase Enterprise Edition i może być używana tylko tam, gdzie zdalny klaster obsługuje kompresję.
log_level Info Poziom logowania XDCR. Wspierane są następujące wartości: "Error", "Info", "Debug", "Trace"
stats_interval 1000 Interwał aktualizacji statystyk w milisekundach.
priority High Określa priorytet dla replikacji. Opcje to "High", "Medium" lub "Low"
reset_expiry false Gdy jest ustawione na true, wszystkie modyfikacje wysyłane do zdalnego klastra będą miały wygaśnięcie ustawione na zero. Oznacza to, że dokumenty nie wygaśnie w zdalnym klastrze. To można nadpisać, ustawiając max-ttl na docelowym wiadrze.
filter_deletion false Gdy jest ustawione na true, modyfikacje usunięcia nie będą wysyłane do zdalnego klastra. Oznacza to, że dokumenty nie będą usuwane w zdalnym klastrze w wyniku operacji usunięcia na źródłowym klastrze.
filter_expiration false Gdy jest ustawione na true, modyfikacje wygaśnięcia nie będą wysyłane do zdalnego klastra. Oznacza to, że dokumenty nie będą usuwane w zdalnym klastrze w wyniku wygaśnięć w źródłowym klastrze.
Przykład
couchbase_xdcr_replications:
  - from_bucket: beer
    to_bucket: demo
    cluster_name: My Cluster

couchbase_ldap

Wszystkie właściwości w zmiennej couchbase_ldap są opcjonalne i zostaną przypisane do domyślnej wartości, jeśli nie zostaną określone. Dodatkowa Dokumentacja

Zmienna Domyślna Opis
hosts [] Lista hostów LDAP. Jeśli ta lista jest pusta, LDAP nie jest skonfigurowany.
port 389 Port LDAP.
encryption none Bezpieczeństwo używane do komunikacji z serwerami LDAP. Obsługiwane opcje to: tls, startTLS, none.
cacert cacert Ścieżka do certyfikatu CA używanego do walidacji certyfikatu serwera, wymagane, jeśli walidacja certyfikatu nie jest wyłączona.
server_cert_validation false Włącza lub wyłącza walidację certyfikatu podczas łączenia się z serwerem LDAP.
bind_dn null DN użytkownika, aby uwierzytelnić się w celu umożliwienia wyszukiwania użytkowników i synchronizacji grup. Jeśli nie podano szczegółów powiązania lub certyfikatu TLS klienta, stosowane będzie powiązanie anonimowe.
bind_password null Hasło użytkownika powiązania.
client_cert null Certyfikat TLS klienta, który ma być używany do powiązania z serwerem LDAP, umożliwiając synchronizację użytkowników i grup. Jeśli nie podano szczegółów powiązania lub certyfikatu TLS klienta, stosowane będzie powiązanie anonimowe. '--client-cert' i '--client-key' muszą być ustawione razem.
client_key null Klucz TLS klienta. Używany z flagą '--client-cert' do uwierzytelniania za pomocą certyfikatu. '--client-cert' i '--client-key' muszą być ustawione razem.
authentication_enabled false Włącza używanie LDAP do uwierzytelnienia użytkowników.
user_dn_query null Zapytanie LDAP do uzyskania DN użytkownika. Musi zawierać co najmniej jedną instancję %u. Na przykład: ou=Users,dc=example??one?(uid=%u)
authorization_enabled false Włącza używanie LDAP do zarządzania uprawnieniami użytkowników.
group_query null Zapytanie LDAP, aby uzyskać grupy użytkowników po nazwie użytkownika w formacie RFC4516. Można używać symboli zastępczych %u i %D, gdzie %u to nazwa użytkownika, a %D to DN użytkownika. Jeśli atrybut jest obecny w zapytaniu, lista wartości atrybutów w wyniku wyszukiwania jest uważana za listę grupy użytkowników (przewiduje się pojedynczy wynik). Na przykład: '%D?memberOf?base'. Jeśli atrybut nie jest obecny w zapytaniu, każda zwrócona pozycja jest uważana za grupę, na przykład: 'ou=groups,dc=example,dc=com??one?(member=%D)'.
max_parallel_connections 100 Maksymalna liczba równoległych połączeń, które mogą być nawiązane z serwerami LDAP.
max_cache_size 10000 Maksymalna liczba zapytań, które mogą być buforowane, domyślnie wynosi 10000.
cache_value_lifetime 300000 Czas życia wartości w pamięci podręcznej w milisekundach. Domyślnie 300000 ms.
enable_nested_groups false Jeśli włączone, serwer Couchbase spróbuje rekurencyjnie wyszukać grupy dla każdej odkrytej grupy LDAP.
nested_groups_max_depth 10 Maksymalna liczba rekurencyjnych wyszukiwań grup, które serwer ma zezwolenie na wykonanie. Ta opcja jest ważna tylko wtedy, gdy włączone są zagnieżdżone grupy. Głębokość jest liczbą całkowitą między 1 a 100, domyślnie wynosi 10.
request_timeout 1000 Czas oczekiwania na żądania LDAP w milisekundach.
Przykład
couchbase_ldap:
  hosts:
    - ldap.example.com
  port: 389
  encryption: none
  server_cert_validation: false
  bind_dn: uid=aaronb,ou=People,dc=example,dc=com
  bind_password: password
  authentication_enabled: true
  user_dn_query: ou=People,dc=example,dc=com??one?(uid=%u)
  authorization_enabled: true
  group_query: ou=People,dc=example,dc=com?(gidNumber=5000)?one
  max_parallel_connections: 100
  max_cache_size: 10000
  cache_value_lifetime: 300000
  enable_nested_groups: true
  enable_nested_groups: true
  nested_groups_max_depth: 10

couchbase_user_groups[]

Zmienna couchbase_user_groups jest domyślnie pustą listą. Gdy jest określona, następujące właściwości są dostępne dla każdego elementu w liście, właściwość name jest wymagana, wszystkie inne właściwości są opcjonalne i zostaną przypisane do domyślnej wartości, jeśli nie zostaną określone. Dodatkowa Dokumentacja

Zmienna Domyślna Opis
*name null Określa grupę docelową dla operacji grupowych.
description null Określa opis grupy.
ldap_ref null Określa pełną nazwę grupy LDAP, aby połączyć grupę Couchbase z grupą LDAP.
roles [] Określa role, które mają być przypisane profilowi użytkownika RBAC. Zobacz sekcję ROLES dla dalszych informacji na temat dostępnych ról w Couchbase.
Przykład
couchbase_user_groups:
  - name: Demo
    description: test
    roles:
      - cluster_admin
      - replication_admin
  - name: Test
    description: test
    roles:
      - cluster_admin
      - replication_admin
  - name: admins
    description: test
    roles:
      - cluster_admin
      - replication_admin

couchbase_users[]

Zmienna couchbase_users jest domyślnie pustą listą. Gdy jest określona, następujące właściwości są dostępne dla każdego elementu w liście, właściwość name jest wymagana, wszystkie inne właściwości są opcjonalne i zostaną przypisane do domyślnej wartości, jeśli nie zostaną określone. Dodatkowa Dokumentacja

Zmienna Domyślna Opis
username null Określa nazwę użytkownika profilu użytkownika RBAC do modyfikacji. Ta opcja jest używana podczas usuwania, tworzenia lub aktualizacji profilu użytkownika RBAC.
password null Określa hasło, które ma być używane dla profilu użytkownika RBAC. Ta opcja jest używana tylko podczas tworzenia lub aktualizacji lokalnego profilu użytkownika RBAC. Couchbase nie przechowuje hasła dla zewnętrznych ról RBAC.
name null Określa nazwę, która ma być używana dla profilu użytkownika RBAC, i zaleca się, aby ta opcja była ustawiona na pełne imię i nazwisko użytkownika.
roles [] Określa role, które mają być przypisane profilowi użytkownika RBAC. Zobacz sekcję ROLES dla dalszych informacji na temat dostępnych ról w Couchbase.
groups null Określa grupy, do których ma być dodany użytkownik.
domain local Określa auth_domain do użycia dla profilu użytkownika RBAC i może być ustawione na lokalne lub zewnętrzne. Zewnętrzni użytkownicy są użytkownikami zarządzanymi przez zewnętrzne źródło, takie jak LDAP.
Przykład
couchbase_users:
  - username: aaronb
    name: Aaron B
    roles:
      - admin
      - cluster_admin
    groups:
      - Demo
    auth_domain: external
  - username: jadt
    password: password
    name: Jad Talbert
    roles:
      - admin
      - cluster_admin
    groups:
      - Demo
      - Test
    auth_domain: local

couchbase_indexes[]

Zmienna couchbase_indexes jest domyślnie pustą listą. Gdy jest określona, następujące właściwości są dostępne dla każdego elementu w liście, właściwości bucket i definition są wymagane, wszystkie inne właściwości są opcjonalne i zostaną przypisane do domyślnej wartości, jeśli nie zostaną określone.

Zmienna Domyślna Opis
*bucket null Nazwa wiadra, na którym ma być utworzony indeks.
*definition null Definicja indeksu do utworzenia. Nie określaj bloku WITH {...}.
num_replicas null Liczba replik do utworzenia.
num_partitions null Liczba partycji indeksu do utworzenia, jeśli używasz PARTITION BY w definicji indeksu.
nodes [] Lista węzłów do wdrożenia indeksu.
sec_key_size null Średnia długość łączonej wartości klucza indeksu.
doc_key_size null Średnia długość klucza dokumentu meta().id.
arr_size null Średnia długość pola tablicy. Typy pól, które nie są tablicami, będą ignorowane.
num_doc null Liczba dokumentów, której oczekuje się w indeksie.
resident_ratio null Oszacowana proporcja rezydentów indeksu.
Przykład
couchbase_indexes:
  - bucket: demo
    definition: CREATE INDEX idx_test ON demo (username)
    replicas: 1
  - bucket: demo
    definition: CREATE INDEX idx_test2 ON demo (email)
    replicas: 1
  - bucket: ecommerce
    definition: CREATE INDEX idx_test3 ON demo (username)
    replicas: 1
O projekcie

Installs, initializes and configures Couchbase Server clusters

Zainstaluj
ansible-galaxy install couchbaselabs.couchbase_server
Licencja
apache-2.0
Pobrania
9.2k
Właściciel