mirror of
https://github.com/vyos/vyos-documentation.git
synced 2025-10-26 08:41:46 +01:00
94 lines
2.4 KiB
ReStructuredText
94 lines
2.4 KiB
ReStructuredText
:lastproofread: 2023-01-16
|
|
|
|
.. _vyos-ansible:
|
|
|
|
Ansible
|
|
=======
|
|
|
|
VyOS supports configuration via ansible.
|
|
Need to install ``ansible`` and ``python3-paramiko`` module
|
|
|
|
Structure of files
|
|
|
|
.. code-block:: none
|
|
|
|
.
|
|
├── ansible.cfg
|
|
├── files
|
|
│ └── id_rsa_docker.pub
|
|
├── hosts
|
|
└── main.yml
|
|
|
|
|
|
File contents
|
|
-------------
|
|
|
|
ansible.cfg
|
|
|
|
.. code-block:: none
|
|
|
|
[defaults]
|
|
host_key_checking = no
|
|
retry_files_enabled = False
|
|
ANSIBLE_INVENTORY_UNPARSED_FAILED = true
|
|
|
|
id_rsa_docker.pub. Needs to declare only public key exactly.
|
|
|
|
.. code-block:: none
|
|
|
|
AAAAB3NzaC1yc2EAAAADAQABAAABAQCoDgfhQJuJRFWJijHn7ZinZ3NWp4hWVrt7HFcvn0kgtP/5PeCtMt
|
|
|
|
|
|
hosts
|
|
|
|
.. code-block:: none
|
|
|
|
[vyos_hosts]
|
|
r11 ansible_ssh_host=192.0.2.11
|
|
|
|
[vyos_hosts:vars]
|
|
ansible_python_interpreter=/usr/bin/python3
|
|
ansible_user=vyos
|
|
ansible_ssh_pass=vyos
|
|
ansible_network_os=vyos
|
|
ansible_connection=network_cli
|
|
|
|
main.yml
|
|
|
|
.. code-block:: none
|
|
|
|
---
|
|
|
|
- hosts: r11
|
|
|
|
connection: network_cli
|
|
gather_facts: 'no'
|
|
|
|
tasks:
|
|
- name: Configure remote r11
|
|
vyos_config:
|
|
lines:
|
|
- set system host-name r11
|
|
- set system name-server 203.0.113.254
|
|
- set service ssh disable-host-validation
|
|
- set system login user vyos authentication public-keys docker@work type ssh-rsa
|
|
- set system login user vyos authentication public-keys docker@work key "{{ lookup('file', 'id_rsa_docker.pub') }}"
|
|
- set system time-zone America/Los_Angeles
|
|
- set interfaces ethernet eth0 description WAN
|
|
|
|
Run ansible
|
|
-----------
|
|
|
|
.. code-block:: none
|
|
|
|
$ ansible-playbook -i hosts main.yml
|
|
|
|
PLAY [r11] ******************************************************************************************************************************************************************************************************
|
|
|
|
TASK [Configure remote r11] *************************************************************************************************************************************************************************************
|
|
changed: [r11]
|
|
|
|
PLAY RECAP *****************************************************************************************************************************************************************************************************
|
|
r11 : ok=1 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
|
|
|