ansible_manager_roles_nfs
This is an old revision of the document!
Gerenciar Roles no Ansible - NFS Server
$ sudo ansible-galaxy role init nfs-server
- Role nfs-server was created successfully
$ sudo ansible-galaxy role list # /etc/ansible/roles - conf-base, 1.0.0 - nfs-server, (unknown version)
$ sudo cp -r ~/roles/nfs-server/* nfs-server/ $ sudo cp -r ~/roles/nfs-server/*.* nfs-server/
Conteúdo do diretório tasks:
- main.yml: Arquivo principal responsável em carregar os arquivos
install.ymleconfigure.yml; - install.yml: Arquivo responsável pela instalação do NFS;
- configure.yml: Arquivo responsável pela configuração do NFS.
$ cat nfs-server/meta/main.yml --- galaxy_info: role_name: nfs-server author: 4Linux DevOps description: Instalacao e Configuracao do servidor NFS company: 4Linux license: GPLv3 min_ansible_version: 2.9 platforms: - name: Ubuntu versions: - focal - name: EL versions: - 8 galaxy_tags: - nfs dependencies: - conf-base
$ cat nfs-server/tasks/main.yml --- - name: Define instalacao do servidor NFS import_tasks: install.yml - name: Define configuracao do servidor NFS import_tasks: configure.yml
$ cat nfs-server/tasks/configure.yml --- - name: Inicia o serviço rpcbind service: name: rpcbind state: started - name: Define o arquivo de configuracao do servidor NFS no Debian/Ubuntu when: ansible_os_family == "Debian" copy: src: exports dest: /etc/exports owner: root group: root mode: 0644 notify: - Restart NFS Ubuntu tags: nfs - name: Define o arquivo de configuracao do servidor NFS no RedHat/CentOS when: ansible_os_family == "RedHat" copy: src: exports dest: /etc/exports owner: root group: root mode: 0644 notify: - Restart NFS CentOS tags: nfs - name: Verifica se diretorio /opt/site/admin existe stat: path: /opt/site/admin register: site_directory - name: Criando diretorio site when: not site_directory.stat.exists copy: src: site/ dest: /opt/site owner: root group: root tags: nfs
$ cat nfs-server/tasks/install.yml --- - name: Instala servidor NFS no Debian/Ubuntu when: ansible_os_family == "Debian" apt: name: nfs-kernel-server state: present update_cache: true notify: - Start NFS Ubuntu tags: nfs - name: Instala servidor NFS no RedHat/CentOS when: ansible_os_family == "RedHat" yum: name: nfs-utils state: present notify: - Start NFS CentOS tags: nfs - name: Inicia e ativa na inicializacao o servico NFS when: ansible_os_family == "RedHat" systemd: name: nfs-server state: started enabled: true tags: nfs
$ cat nfs-server/handlers/main.yml --- - name: Start NFS Ubuntu when: ansible_os_family == "Debian" service: name: nfs-kernel-server state: started - name: Restart NFS Ubuntu when: ansible_os_family == "Debian" ansible.builtin.command: "exportfs -va" - name: Start NFS CentOS when: ansible_os_family == "RedHat" service: name: nfs-server state: started - name: Restart NFS CentOS when: ansible_os_family == "RedHat" ansible.builtin.command: "exportfs -va"
$ cat nfs-server/files/exports /opt/site 10.240.0.0/16(rw,no_root_squash,no_subtree_check)
$ cat ~/roles/playbooks/nfs-server.yml --- - hosts: ol-vm-02 vars: ansible_python_interpreter: /usr/bin/python3.9 roles: - nfs-server
$ sudo ansible-playbook --syntax-check ~/roles/playbooks/nfs-server.yml playbook: /home/vagrant/roles/playbooks/nfs-server.yml
$ sudo ansible-playbook ~/roles/playbooks/nfs-server.yml PLAY [ol-vm-02] ************************************************************************************************************************************************************************************************* TASK [Gathering Facts] ****************************************************************************************************************************************************************************************** ok: [ol-vm-02] TASK [conf-base : Testando entradas no arquivo /etc/hosts] ****************************************************************************************************************************************************** ok: [ol-vm-02] TASK [conf-base : Limpa o arquivo /etc/hosts] ******************************************************************************************************************************************************************* skipping: [ol-vm-02] TASK [conf-base : Configuracao do arquivo /etc/hosts] *********************************************************************************************************************************************************** ok: [ol-vm-02] => (item={'ip': '127.0.0.1', 'fqdn': 'localhost.localdomain', 'alias': 'localhost'}) ok: [ol-vm-02] => (item={'ip': '10.240.0.200', 'fqdn': 'ansible-server.juntotelecom.com.br', 'alias': 'ansible-server'}) ok: [ol-vm-02] => (item={'ip': '10.240.0.201', 'fqdn': 'ub-vm-01.juntotelecom.com.br', 'alias': 'ub-vm-01'}) ok: [ol-vm-02] => (item={'ip': '10.240.0.202', 'fqdn': 'ol-vm-02.juntotelecom.com.br', 'alias': 'ol-vm-02'}) ok: [ol-vm-02] => (item={'ip': '10.240.0.203', 'fqdn': 'de-vm-03.juntotelecom.com.br', 'alias': 'de-vm-03'}) TASK [conf-base : Instala pacotes base no Debian/Ubuntu] ******************************************************************************************************************************************************** skipping: [ol-vm-02] TASK [conf-base : Instala pacotes base no RedHat/CentOS 7] ****************************************************************************************************************************************************** skipping: [ol-vm-02] TASK [conf-base : Instala pacotes base no RedHat/CentOS 8] ****************************************************************************************************************************************************** skipping: [ol-vm-02] TASK [conf-base : Adiciona usuario HelpDesk] ********************************************************************************************************************************************************************ok: [ol-vm-02] TASK [conf-base : Adiciona usuario DevOps] ********************************************************************************************************************************************************************** ok: [ol-vm-02] TASK [nfs-server : Instala servidor NFS no Debian/Ubuntu] ******************************************************************************************************************************************************* skipping: [ol-vm-02] TASK [nfs-server : Instala servidor NFS no RedHat/CentOS] ******************************************************************************************************************************************************* changed: [ol-vm-02] TASK [nfs-server : Inicia e ativa na inicializacao o servico NFS] *********************************************************************************************************************************************** changed: [ol-vm-02] TASK [nfs-server : Inicia o serviço rpcbind] ******************************************************************************************************************************************************************** ok: [ol-vm-02] TASK [nfs-server : Define o arquivo de configuracao do servidor NFS no Debian/Ubuntu] *************************************************************************************************************************** skipping: [ol-vm-02] TASK [nfs-server : Define o arquivo de configuracao do servidor NFS no RedHat/CentOS] *************************************************************************************************************************** changed: [ol-vm-02] TASK [nfs-server : Verifica se diretorio /opt/site/admin existe] ************************************************************************************************************************************************ ok: [ol-vm-02] TASK [nfs-server : Criando diretorio site] ********************************************************************************************************************************************************************** changed: [ol-vm-02] RUNNING HANDLER [nfs-server : Start NFS CentOS] ***************************************************************************************************************************************************************** ok: [ol-vm-02] RUNNING HANDLER [nfs-server : Restart NFS CentOS] *************************************************************************************************************************************************************** changed: [ol-vm-02] PLAY RECAP ****************************************************************************************************************************************************************************************************** ol-vm-02 : ok=13 changed=5 unreachable=0 failed=0 skipped=6 rescued=0 ignored=0
$ sudo ansible ol-vm-02 -m shell -e 'ansible_python_interpreter=/usr/bin/python3.9' -a 'showmount -e' ol-vm-02 | CHANGED | rc=0 >> Export list for ol-vm-02: /opt/site 172.17.0.0/16,172.16.0.0/16
ansible_manager_roles_nfs.1753560543.txt.gz · Last modified: by wikiadm
