Ansible to platforma oprogramowania typu open source do konfigurowania komputerów i zarządzania nimi. Łączy wdrażanie oprogramowania z wieloma węzłami, wykonywanie zadań ad hoc i zarządzanie konfiguracją.
Korzystam z Ansible, aby udostępnić mój serwer programistyczny. Chcę, żeby zawsze uruchamiało dla mnie niektóre usługi. Mam w tym celu moduły obsługi, ale jaki jest najlepszy sposób na wywołanie procedury obsługi bez warunków, np. Aby zawsze działała? Coś takiego: tasks: - name: Trigger handler run_handler: name=nginx-restart
Próbuję użyć Ansible do automatyzacji procesu instalacji nowych instancji serwera. Jedno z zadań instalacyjnych zmienia domyślny port SSH, dlatego wymaga ode mnie aktualizacji listy hostów. Czy można to zautomatyzować, korzystając z opcji Ansible fallback do określonego portu, jeśli nie można nawiązać połączenia z domyślnym portem SSH?
Próbuję uruchomić ten prosty skrypt obsługi administracyjnej, ale występują błędy podczas uruchamiania, vagrant upa następnie vagrant provisionpoleceń. Przeczytałem, że muszę utworzyć /etc/ansible/hostsplik, który zrobiłem, wypełniając go: [vagrant] 192.168.222.111 Moja konfiguracja SSH (niektóre szczegóły zostały usunięte): Host default HostName 127.0.0.1 User vagrant Port 2222 UserKnownHostsFile /dev/null StrictHostKeyChecking no PasswordAuthentication no IdentityFile …
Pracuję nad podręcznikiem, aby dołączyć systemy Linux do Active Directory. Nie mogę znaleźć sposobu na konwersję wartości ansible_hostname na wielkie litery. Jedno z poleceń, które muszę uruchomić, wymaga podania nazwy hosta wielkimi literami.
Jest to oparte na tym mistyfikacyjnym pytaniu tutaj. Opisany problem polega na posiadaniu skryptu bash, który zawiera coś takiego: rm -rf {pattern1}/{pattern2} ... który, jeśli oba wzorce zawierają jeden lub więcej pustych elementów, rozwinie się do co najmniej jednej instancji rm -rf /, przy założeniu, że oryginalne polecenie zostało poprawnie …
Utrzymuję stado serwerów EC2 z ansible. Serwery są regularnie aktualizowane i uaktualniane za pomocą modułu apt . Kiedy ręcznie próbowałem zaktualizować serwer, otrzymałem następujący komunikat: $ sudo apt-get upgrade Reading package lists... Done Building dependency tree Reading state information... Done Calculating upgrade... Done The following packages were automatically installed and …
Próbuję uruchomić określone zadanie Ansible jako inny użytkownik niż ten, który prowadzi playbook. Mój .ymlplik wygląda następująco: --- - hosts: staging_servers tasks: - name: check user remote_user: someusername shell: whoami Uruchomienie tego zadania pokazuje mi, że whoamipolecenie zwraca innego użytkownika niż zdefiniowałem w zadaniu (dokładnie zwraca użytkownika zdefiniowanego w hostspliku …
Napisałem podręcznik, który instaluje i konfiguruje Google Authenticator na użytkownika. Chcę ostatni krok catporadnika do pliku konfiguracyjnego google_authenticator. Za pomocą modułu „debugowanie” jestem w stanie uzyskać dane do wyświetlenia na ekranie, ale tylko jako komunikat debugowania: TASK: [debug var=details.stdout_lines] **************************************** ok: [localhost] => { "details.stdout_lines": [ "ZKMFTE2ADYA2OYCH", "\"RATE_LIMIT 3 30", …
Jak zainstalować pakiet .rpm na zdalnym komputerze za pomocą Ansible? Oczywistym rozwiązaniem jest użycie commandmodułu, ale to trochę głupie. Chciałbym również uniknąć konfigurowania repozytorium yum tylko dla jednego pakietu. Czy istnieje bardziej pragmatyczne podejście do tego problemu?
Bardziej znane systemy zarządzania konfiguracją (CM), takie jak Puppet i Chef, wykorzystują podejście oparte na ciągnięciu: klienci okresowo odpytują scentralizowanego mastera w celu uzyskania aktualizacji. Niektóre z nich oferują masterless podejścia, jak również (tak, push-based), ale stwierdza, że jest to „nie do produkcji” (Saltstack) lub „mniej skalowalne” (Lalek). Jedyny znany …
Konfiguruję serwer MySQL i chcę, aby Ansible ustawił mysql-roothasło podczas instalacji. Przy pomocy Internetu wymyśliłem to rozwiązanie: - name: Set MySQL root password before installing debconf: name='mysql-server' question='mysql-server/root_password' value='{{mysql_root_pwd | quote}}' vtype='password' - name: Confirm MySQL root password before installing debconf: name='mysql-server' question='mysql-server/root_password_again' value='{{mysql_root_pwd | quote}}' vtype='password' - name: Install …
Jaki jest najlepszy sposób zarządzania iptables z jednego miejsca i możliwość edycji czegoś na lokalnym serwerze. Musimy dodać niektóre reguły scentralizowane na wszystkich serwerach, ale mamy określone serwery o określonych wymaganiach, które powinny mieć własny zestaw reguł. Myślałem o skrypcie bash z wieloma włączeniami, który jest zarządzany scentralizowany za pomocą …
Jaki jest najczystszy sposób to zrobić? Próbowałem dodać użytkownika do grupy sudo za pomocą modułu users, ale Ansible zgłasza, że nie może znaleźć grupy sudo.
Produkt mojej firmy to w zasadzie Linux-Box (Ubuntu) siedzący w czyjejś sieci z naszym oprogramowaniem. Do tej pory mieliśmy na wolności mniej niż 25 pudełek i korzystaliśmy z TeamViewer do zarządzania nimi. Niedługo wyślemy 1000 takich pudeł, a TeamViewer nie jest już opcją. Moim zadaniem jest wymyślenie sposobu dostępu do …
W zależności od wartości (True / False) zmiennej zdefiniowanej w group_vars Próbuję zdefiniować niektóre zmienne w pliku vars. Ich wartość zależy od wartości grupy var. Mój aktualny plik var wygląda następująco: {% if my_group_var %} test: var1: value var2: value ... varn: value {% else %} test: var1: other_value var2: …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.