Ansible Variable Lab & Excercise – Part 2

DevOps

YOUR COSMETIC CARE STARTS HERE

Find the Best Cosmetic Hospitals

Trusted • Curated • Easy

Looking for the right place for a cosmetic procedure? Explore top cosmetic hospitals in one place and choose with confidence.

“Small steps lead to big changes — today is a perfect day to begin.”

Explore Cosmetic Hospitals Compare hospitals, services & options quickly.

✓ Shortlist providers • ✓ Review options • ✓ Take the next step with confidence

Assigment 1 – Create a playbook and setup a webserver(httpd) and use httpd as a variable decalared in role var file

<webserver.yaml>

- name: This sets up an httpd webserver
  hosts: localhost
  vars_files:
    - vars-file.yaml

  tasks:
  - name: Install the httpd apps
    yum:
      name={{ servicename }}
      state=latest
  - name: 
    ansible.builtin.service:
      name={{ servicename }}
      state=started

<vars-file.yaml>

servicename: httpdCode language: HTML, XML (xml)

2.Assigment 2 – Create a playbook and setup a webserver(httpd) and use httpd as a variable decalared using prompt

<webserver.yaml>

- name: This sets up an httpd webserver
  hosts: localhost
  vars_prompt:
    - name: "servicename"
      prompt: "Enter service name"
      private: false

  tasks:
  - name: Install the httpd apps
    yum:
      name={{ servicename }}
      state=latest
  - name: 
    ansible.builtin.service:
      name={{ servicename }}
      state=started
  - name: Print the vars
    ansible.builtin.debug:
      msg: Service name {{ servicename }}



Code language: PHP (php)

Assigment 3 – Create a playbook and setup a webserver(httpd) and find a list of .txt file in some directory and output using register variables

<webserver.yaml>

- name: This sets up an httpd webserver
  hosts: localhost
  vars_prompt:
    - name: "servicename"
      prompt: "Enter service name"
      private: false

  tasks:
  - name: Install the httpd apps
    yum:
      name={{ servicename }}
      state=latest
  - name: 
    ansible.builtin.service:
      name={{ servicename }}
      state=started
  - name: Print the vars
    ansible.builtin.debug:
      msg: Service name {{ servicename }}
  - name: 
    shell: "find *.txt"
    args:
      chdir: "/home/centos/ansible/bhavya"
      register: find_outputCode language: PHP (php)

Assigment 4 – Create a playbook and setup a webserver(httpd), copy a index.html and interpolate variables in template file decalared in playbook.


<webserver.yaml>

- name: This sets up an httpd webserver
  hosts: localhost
  vars_prompt:
    - name: "servicename"
      prompt: "Enter service name"
      private: false

  tasks:
  - name: Install the httpd apps
    yum:
      name={{ servicename }}
      state=latest
  - name: 
    ansible.builtin.service:
      name={{ servicename }}
      state=started
  - name: Print the vars
    ansible.builtin.debug:
      msg: Service name {{ servicename }}
  - name: copy index.html
    ansible.builtin.template:
     src: index.html.j2
     dest: /var/www/html/
 -  name: Start service httpd, if not started
    ansible.builtin.service:
     name: "{{servicenamename}}"
     state: startedCode language: PHP (php)