Playbooks Flashcards

1
Q

Como verificas un paquete con un módulo

A

ansible server -m yum -a “name=nmap state=latest”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Como se realiza una validación de sintaxis de un playbook

A

ansible-playbook about.yml —syntax-check

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Como se ponen las opciones de vim

A

.vimrc

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Como se ponen opciones de yaml en vim

A

autocmd FileType yaml setlocal ai ts=2 sw=2 et nu cuc

autocmd FileType yaml colo desertgbmf

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Como se busca la ayuda en yum para opciones de vim

A

Gllllm

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Como despliegas más información de verbose de ejecución de playbooks

A

ansible-playbook -vvvv NAME

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Como se escribe un playbook para instalar y copiar httpd

A

—-

  • name: Install and start apache httpd
    hosts: web
    tasks:
    • name:
      yum:
      name: httpd
      state: present
    • name: correct index.html is present
      copy:
      src: files/index.html
      dest: /var/www/html/index.html
     - name: httpd is started
        service:
            name: httpd
            state: started
            enabled: true
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Como se válida que un archivo tenga contenido específico y da valide

A

  • name
    hosts: serverb
    tasks:
      - name: Good example of module usage
         copy:
            content: nameserver 8.8.8.8
            dest: /etc/resolv.conf
...
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Como puedes preservar las líneas como
Las
Colocas en módulo copy en playbook

A

  • name: example
    hosts: serverb
    tasks:
     - name: lots of lines
        copy: 
            content: |
                 This is line 1
                 And this line 2 
                 Finally, this is another line in line 3
             dest: /var/tmp/lots_of_lines
    
       - name: one long line
          copy: 
              content: >
                 This is one really long line 
                  that looks like it may be finalized as many lines
                   but because of the > character, ir will be collapsed
                dest: /var/tmp/one_line
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Como se habilita el servicio firewalld y de ejecuta

A
  • name: firewalld enabled and running
    service:
    name: firewalld
    enabled: true
    state: started
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Como se habilita el servicio httpd en el firewall com playbooks

A
  • name: firewalld permits access to httpd service
    firewalld:
    service: http
    permanent: true
    state: enabled
    inmediate: true
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Como se habilita e inicia el servicio httpd

A
- name: httpd enabled and running
   service:
      name: httpd
      enabled: true
      state: started
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Como se usa el módulo uri

A
  • name: connect to intranet web server
    hosts: localhost
    become: no
    tasks:
       - name: connect to intranet web server
          uri:
               url: http://servera
               return_content: yes
               state_code: 200
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Como se colocan varios paquetes a instalar con el

Módulo yum en playbooks

A
  • name: latest packages
    yum:
    name:
    - firewalld
    - httpd
    - mariadb-server
    - php
    - php-mysqlnd
    state: latest
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Como se elevan privilegios en un play

A
  • name: nombre
    hosts: serverb
    become: true
    tasks: …
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Como se elevan privilegios por un task

A

name: nombre
become: yes
Module:…

17
Q

Prueba de contexto en módulo get_url

A
- name: test php installed
   get_url:
         url: http://server/index.php
         dest: /var/www/html/index.html
         mode: 0644
18
Q

Como se instalan paquetes usando variables en playbook

A


- name: NAME
hosts: servera
vars:

   packages:

      - nmap 
      - httpd
      - php
      - mod_php
      - mod_ssl

tasks: 

   — name: instalar NAME
       yum:
           - name: “{{ packages }}”
           - state: present
19
Q

Como se debe de llamar un folder para ser cargado como

Archivo de variables

A

Grupo
group_vars

Hosts
host_vars

20
Q

Contenido de archivo de variables

A

packages:

- systat

21
Q

Precedencia en grupo de variables

A
  1. Command line values
  2. role defaults
  3. Inventory file or script group
  4. Inventory grupo
22
Q

Como se declara un array en un playbook ambas formas

A

name: nombre de play
vars:

    users: 
         fflinstone:
            uname: Fred
            fname: Fred
            lname: Flintstone
            home: /home/fflintstone
            shell: /bin/zsh

tasks:

  • name: create a User from array
    user:
    name: “{{ users.fflintstone.uname }}”
    comment: “ {{ users[‘flintstone’][‘fname’] }} {{ users[‘fflintstone’][‘lname’] }}”
    shell: “{{ users: [‘flintstone’][‘shell’] }}”
    state: present

———

“{{ users.flintstone.uname }}”

23
Q

Que hace la variable register en las tareas

A

tasks:

register: VARNAME

24
Q

Cómo se usa el módulo debug para mostrar el contenido de una variable

A
  • name:
    debug:
    var: VARNAME
     msg: “string message so var is {{ VARNAME }}”
25
Q

Si el resultado es un array como se obtiene el valor content de la variable var1

A
  • name: ejemplo de debug
    debug:
    var: var1.content
26
Q

Como se elimina el usuario fred en playbook

A
  • name: elimina usuario
    hosts: serveratasks:
    • name: nombre tarea
      user:
      name: fred
      state: absent
27
Q

Como se crea un usuario con password que no se vea en playbook

A

Se crea un archivo de variables

myfile

ansible-vault encrypt my_variables

En playbook especificar solo variable

  • name: nombre de play
    hosts: servera
    tasks:
    - name: nombre del task
      user:  
           name: {{ USERNAME }}
           password: {{ PASSWORD }}
           state: present
28
Q

Como se visualiza el contenido de un archivo de variables encriptado

A

ansible-vault view my_variables

29
Q

Como se encripta un archivo de variables

A

ansible-vault encrypt my_variables

30
Q

Como se modifica el contenido de un archivo de variables encriptado

A

ansible-vault edit my_variables

31
Q

Como se ejecuta un playbook con un archivo de variables encriptado

A

ansible-playbook —vault-id @prompt playbook.yml

32
Q

Como tienes que crear la estructura para que los

Hosts especificados en folders tomen las variables encriptadas

A

host_vars/servera.example.com/

Archivo vault

33
Q

Como se prueba la autenticación por password por ssh

A

ssh -o PreferredAuthentications=password fred@servera

34
Q

Como
Se
Cambia el password de un vault de variables de ansible

A

ansible-vault rekey host_vars/servera.example.com/vault

35
Q

Como se descripta el password de un ansible vault de variables

A

ansible-vault decrypt /hosts_vars/servera.example.com/vault

36
Q

Crear playbook que use archivo encriptado

A
—-
- name: name of play
   hosts: devservers 
   become: true
   remote_user: devops

var_files:
- secret.yml

tasks:

   - name: creando usuario desde secreto yml
      user:
          name: “{{ username }}”
          password: “{{ pwhash }}”
37
Q

Como se crea y usa un archivo con password en claro de vault

A

echo “redhat”> vault-pass
chmod 0600 vault-pass

ansible-playbook create _users.yml —vault-password-file=vault-pass