Sök…


parametrar

Parameter Förklaring
ansible_connection Anslutningstyp till värden. Detta kan vara namnet på någon av ansibles anslutningsplugins. SSH-protokolltyper är smart , ssh eller paramiko . Standardvärdet är smart. Icke-SSH-baserade typer beskrivs i nästa avsnitt.
ansible_host Namnet på värden att ansluta till, om det skiljer sig från det alias du vill ge det.
ansible_port Ssh-portnumret, om inte 22
ansible_user Standardnamnet ssh användarnamn att använda.
ansible_ssh_pass Ssh-lösenordet att använda (detta är osäkert, vi rekommenderar starkt att du använder --ask-pass eller SSH-nycklar)
ansible_ssh_private_key_file Privat nyckelfil som används av ssh. Användbart om du använder flera nycklar och inte vill använda SSH-agent.
ansible_ssh_common_args Denna inställning läggs alltid till standardkommandoraden för sftp , scp och ssh . Användbart för att konfigurera en ProxyCommand för en viss värd (eller grupp).
ansible_sftp_extra_args Den här inställningen läggs alltid till på kommandoraden sftp .
ansible_scp_extra_args Denna inställning läggs alltid till på kommandoraden för scp .
ansible_ssh_extra_args Den här inställningen läggs alltid till i kommandoraden ssh .
ansible_ssh_pipelining Bestämmer om SSH-rörledning ska användas eller inte. Detta kan åsidosätta pipelining inställningen i ansible.cfg .
ansible_become Likvärdigt med ansible_sudo eller ansible_su , gör det möjligt att tvinga eskalering av privilegier
ansible_become_method Gör det möjligt att ställa in metod för eskalering av privilegier
ansible_become_user Likvärdigt med ansible_sudo_user eller ansible_su_user , gör det möjligt att ställa in användaren som du blir genom privilegieradeskalering
ansible_become_pass ansible_sudo_pass med ansible_sudo_pass eller ansible_su_pass , låter dig ställa in lösenordet för eskalering av privilegium
ansible_shell_type Målsystemets skaltyp. Du bör inte använda den här inställningen om du inte har ställt ansible_shell_executable till ett icke-Bourne (sh) -kompatibelt skal. Som standard formateras kommandon med hjälp av sh style syntax. Om du ställer in detta på csh eller fish kommer kommandon som körs på målsystem att följa det skalets syntax istället.
ansible_python_interpreter Mytvärdens pythonväg. Detta är användbart för system med mer än en Python eller inte finns på / usr / bin / python som * BSD, eller där / usr / bin / python inte är en 2.X-serie Python. Vi använder inte / usr / bin / env mekanism som kräver fjärranvändaren väg ställas höger och även antar python körbara heter Python, där den körbara kan namnges något liknande python2.6.
ansible _ * _ tolk Fungerar för allt som rubin eller perl och fungerar precis som ansible_python_interpreter . Detta ersätter shebang av moduler som kommer att köras på den värden.
ansible_shell_executable Detta ställer in skalet som den ansvarsfulla styrenheten kommer att använda på målmaskinen, åsidosätter executable i ansible.cfg som standard / bin / sh . Du bör egentligen bara ändra det om det inte går att använda / bin / sh (dvs. / bin / sh är inte installerat på målmaskinen eller inte kan köras från sudo.). Ny i version 2.1.

Inventering med användarnamn och lösenord

Inventory är det ansvarsfulla sättet att spåra alla system i din infrastruktur. Här är en enkel inventeringsfil som innehåller ett enda system och inloggningsuppgifterna för Ansible.

[targethost]
192.168.1.1 ansible_user=mrtuovinen ansible_ssh_pass=PassW0rd

Inventering med anpassad privat nyckel

[targethost]
192.168.1.1 ansible_user=mrtuovinen ssh_private_key_file=~/.ssh/custom_key

Inventering med anpassad SSH-port

[targethost]
192.168.1.1 ansible_user=mrtuovinen ansible_port=2222

Skicka statisk inventering till ansible-playbook

ansible-playbook -i path/to/static-inventory-file -l myhost myplaybook.yml

Skicka dynamisk inventering till ansible-playbook

ansible-playbook -i path/to/dynamic-inventory-script.py -l myhost myplaybook.yml

Se dynamisk inventering för mer information.

Inventering, gruppvaror och du

projektstruktur (ansvarsfull bästa praxis).

project/
  group_vars/
     development
  inventory.development
  playbook.yaml

allt börjar med inventaris.development

[development]
dev.fakename.io

[development:vars]
ansible_host: 192.168.0.1
ansible_user: dev
ansible_pass: pass
ansible_port: 2232

[api:children]
development

som låter dig länka till group_vars. Håll data "specifika" för den miljön ...

---
app_name: NewApp_Dev
app_url: https://dev.fakename.io
app_key: f2390f23f01233f23f

som låter en köra följande spellista MOT inventeringsfilen:

---
- name: Install api.
  hosts: api
  gather_facts: true
  sudo: true
  tags:
    - api
  roles:
    - { role: api,         tags: ["api"]         }

med följande runline:

ansible-playbook playbook.yaml -i  inventory.development

Värdfilen

Värdfilen används för att lagra anslutningar för Anisble-spelböcker. Det finns alternativ för att definiera anslutningsparametrar:

ansible_host är värdnamnet eller IP-adressen

ansible_port är den port som maskinen använder för SSH

ansible_user är ansible_user att ansluta som

ansible_ssh_pass om du använder ett lösenord för SSH

ansible_ssh_private_key_file om du behöver använda flera tangenter som är specifika för värdar

Dessa är de mest använda alternativen. Mer finns i den officiella dokumentationen Ansible .

Här är ett exempel på en hosts :

# Consolidation of all groups
[hosts:children]
web-servers
offsite
onsite
backup-servers

[web-servers]
server1 ansible_host=192.168.0.1 ansible_port=1600
server2 ansible_host=192.168.0.2 ansible_port=1800

[offsite]
server3 ansible_host=10.160.40.1 ansible_port=22 ansible_user=root
server4 ansible_host=10.160.40.2 ansible_port=4300 ansible_user=root

# You can make groups of groups
[offsite:children]
backup-servers

[onsite]
server5 ansible_host=10.150.70.1 ansible_ssh_pass=password

[backup-servers]
server6 ansible_host=10.160.40.3 ansible_port=77


Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow