Ansible Playbooks
Limited Time Offer!
For Less Than the Cost of a Starbucks Coffee, Access All DevOpsSchool Videos on YouTube Unlimitedly.
Master DevOps, SRE, DevSecOps Skills!
1.Write a Ansible Playbook to create a group called “deploy”
- name: Create a group
hosts: group
tasks:
- name: Add group "deploy"
group:
name: deploy
state: present
.2.Write a Ansible Playbook to create a user called “deploy-user” which is part of group called “deploy” and with /bin/bash shell.
- name: Create a user
hosts: user
tasks:
- name: Add user "deploy-user"
user:
name=deploy-user groups=deploy password="" shell=/bin/bash
append=yes
state=present
3.Write a Ansible Playbook to install package named “httpd” in RHEL/centos.
- name: To install an httpd webserver
hosts: web
tasks:
- name: Install httpd packages
yum:
name: httpd
state: present
4. Write a Ansible Playbook to start and enable the service named “httpd”
- name: To start and enable an httpd webserver
hosts: web
tasks
- name: start httpd
service:
name: httpd
state: started
- name: enable httpd
service:
name: httpd
enabled: yes
5. Write a Ansible Playbook to create a file called “index.html” in /var/www/html with some dummy html contents.
- name: creating a file
hosts: all
tasks:
- name: create a file index.html
file:
path: "/var/www/htmlindex.html"
state: touch
- name: adding contents to indexfile
blockinfile:
dest: /var/www/html/index.html
block: |
<html>
<h1> Welcome to HP Ansible class </h1>
</html>
9. Write a Ansible Playbook to reboot a self machine.
- name: Started reboot
hosts: webservers
tasks:
- name: rebooting the machine
reboot:
name: reboot the machine
msg: rebooting the machine
8. Write a Ansible Playbook to clone git repo. thttps://github.com/scmgalaxy/ansible-role-template
- name: Cloning git repo
hosts: web
environment:
http_proxy: 'http://web-proxy:8080'
https_proxy: 'http://web-proxy:8080'
tasks:
- name: cloning....
git: repo=https://github.com/scmgalaxy/ansible-role-template clone=yes dest=./ansible-role-template
6. Write a Ansible Playbook to reboot a self machine.
- name: Copying File
hosts: webservers
tasks:
- name: copy a file
copy:
src: index.html
dest: /var/www/html/second.html