solarwinds.uamsclient

Rola Klienta UAMS w Ansible

Rola Klienta UAMS w Ansible instaluje i konfiguruje Klienta UAMS.

Ustawienie

Wymagania

  • Przy używaniu z hostami Windows, wymagane jest zainstalowanie kolekcji ansible.windows. Proszę zainstalować ją na hoście kontrolera za pomocą następującego polecenia:
ansible-galaxy collection install ansible.windows

Instalacja

Zainstaluj rolę Klienta UAMS z Ansible Galaxy

ansible-galaxy install solarwinds.uamsclient

Aby wdrożyć Klienta UAMS na hostach, dodaj token dostępu, rolę i adres URL swo do swojego playbooka pod kluczem environment. Wartości mogą być zapisane na sztywno, ale przynajmniej dla tokena dostępu zaleca się używanie zmiennej, aby nie ujawniać tokena w jawnej postaci.

Masz możliwość ustawienia proxy HTTPS za pomocą zmiennej środowiskowej UAMS_HTTPS_PROXY. Po prostu zdefiniuj tę zmienną, aby wskazywała na żądane proxy HTTPS. Pamiętaj, że zmienna środowiskowa UAMS_HTTPS_PROXY ustawia proxy HTTPS tylko dla połączeń nawiązanych przez Klienta UAMS i jego wtyczki. Aby używać proxy HTTPS podczas instalacji, skonfiguruj proxy HTTPS na swoim komputerze, aby Ansible mogło z niego korzystać.

  environment:
    UAMS_ACCESS_TOKEN: "TWÓJ_TOKEN_DOSTĘPU_SWO"
    UAMS_METADATA: "ROLA"
    SWO_URL: "https://swo-url"
    UAMS_HTTPS_PROXY: "https://twoje-proxy" # opcjonalnie
    UAMS_OVERRIDE_HOSTNAME: "nazwa_własna" # opcjonalnie

Proszę zapoznać się z przykładowym playbookiem, który używamy w testach CI.

Nadpisanie nazwy hosta

Opcjonalna zmienna środowiskowa UAMS_OVERRIDE_HOSTNAME jest używana do ustawienia niestandardowej nazwy Agenta. Domyślnie nazwa Agenta jest ustawiana na nazwę hosta. Możesz przypisać wartość do tej zmiennej, używając zmiennych z pliku inwentarza. Zobacz przykład poniżej.

# Plik inwentarza

[test_servers]
192.168.0.123 ansible_user=user override_hostname=web_server1
192.168.0.124 ansible_user=user override_hostname=web_server2
# Plik playbooka

  environment:
    UAMS_OVERRIDE_HOSTNAME: "DEV_{{ override_hostname }}"

Odinstalowanie

Aby odinstalować Klienta UAMS na hostach, dodaj etykietę uninstall podczas uruchamiania playbooka.
Przykład:

ansible-playbook -i inventory playbook.yml --tags uninstall

Proszę zapoznać się z przykładowym playbookiem, który używamy w testach CI.

Dodawanie wtyczki DBO do Klienta UAMS

Przegląd

Ta rola Ansible instaluje i konfiguruje wtyczkę DBO dla Klienta UAMS. Aby zainstalować wtyczkę DBO, musisz uruchomić następujące polecenie:

ansible-playbook -i inventory playbook.yml --tags dbo

Spowoduje to wykonanie zadań związanych z etykietą dbo, instalując i konfigurując wtyczkę DBO zgodnie z twoim plikiem inwentarza lub plikami zmiennych. Upewnij się, że twój inwentarz i/lub sekrety są poprawnie skonfigurowane przed uruchomieniem playbooka.

Konfiguracja

Aby używać wtyczki DBO, musisz zdefiniować niezbędne zmienne w swoim inwentarzu Ansible lub pliku sekretów. Oto format tych zmiennych: Dodatkowo musisz podać token z pełnym dostępem, aby mieć dostęp do API do instalacji wtyczek DBO.

uams_full_access_token: "<full_access_token>"
dbo_plugin:
  - databaseType: "mongo"
    name: "mongodb profiler na dev-amd64-mu nasłuchujący na 10.0.2.2:27018"
    host: "10.0.2.2"
    port: "27018"
    user: "myUser"
    password: "<password>"
    packetCaptureEnabled: false
    metricsCaptureMethod: "profiler"

Sposoby podawania zmiennych

  1. Plik inwentarza: możesz bezpośrednio zdefiniować zmienną dbo_plugin i uams_full_access_token w swoim pliku inwentarza.
  2. Zmienne grupowe lub hostowe
  3. Ansible Vault

Dla wrażliwych informacji, takich jak hasła, zaleca się użycie Ansible Vault do zaszyfrowania zmiennych. Możesz utworzyć zaszyfrowany plik dla swoich sekretów:

Zaszyfruj ten plik za pomocą następującego polecenia:

ansible-vault encrypt path/to/secrets.yml

Następnie odwołaj się do niego w swoim playbooku lub pliku inwentarza:

vars_files:
  - path/to/secrets.yml

Zmienne roli

Zmienna Opis
uams_local_pkg_path Nadpisz lokalizację, w której przechowywany jest pakiet instalacyjny (domyślnie: /tmp/uams)
uams_local_pkg_path_windows Nadpisz lokalizację, w której przechowywany jest pakiet instalacyjny na Windows (domyślnie: wartość zmiennej TEMP)
uams_remove_installer Jeśli pakiet instalacyjny powinien być usunięty (domyślnie: true)

AWX

Rola Klienta UAMS może być również używana w konfiguracji AWX. Należy wziąć pod uwagę następujące kwestie:

  1. AWX musi być skonfigurowane do pobierania ról z Ansible Galaxy. W obecnym czasie (z AWX 0.30.0) musi być to włączone w Ustawienia > Zadania (Enable Role Download) oraz muszą być skonfigurowane dane logowania do Ansible Galaxy na poziomie organizacji. Plik roles/requirements.yml musi być obecny w repozytorium projektu i zawierać wymaganą rolę (przykład poniżej).
  2. Wartości dla zmiennych reprezentujących token dostępu, rolę i adres URL swo powinny być podawane przez interfejs AWX.
  3. Playbook musi zawierać wartość hosts: dopasowaną do grupy hostów (lub poszczególnego hosta) zdefiniowanej w inwentarzu AWX. Playbook nie będzie dostępny w AWX do tworzenia szablonu zadania, jeśli nie została podana odpowiednia wartość.
  4. Ustawienie eskalacji uprawnień w szablonie zadania może spowodować niepowodzenie zadań delegowanych do localhost z powodu braku polecenia sudo w kontenerze wykonawczym.

Przykłady konfiguracji AWX

Playbook

---
- name: Zainstaluj klienta UAMS
  # Istniejąca grupa hostów z inwentarza
  hosts: uams-hosts

  environment:
    UAMS_ACCESS_TOKEN: "{{ uams_access_token }}"
    UAMS_METADATA: "{{ uams_metadata }}"
    SWO_URL: "{{ swo_url }}"

  roles:
    - role: solarwinds.uamsclient

roles/requirements.yml

Jeśli wersja jest pominięta, zainstalowana zostanie najnowsza wersja.

roles:
  - src: solarwinds.uamsclient
    version: 1.8.0
O projekcie

SolarWinds UAMS Client Installer

Zainstaluj
ansible-galaxy install solarwinds.uamsclient
Licencja
mit
Pobrania
5.5k
Właściciel