An open API service indexing awesome lists of open source software.

https://github.com/becloudready/ansible-tutorials

Ansible Tutorial to Supercharge your DevOps Life
https://github.com/becloudready/ansible-tutorials

ansible devops linux

Last synced: 9 days ago
JSON representation

Ansible Tutorial to Supercharge your DevOps Life

Awesome Lists containing this project

README

          

# Ansible Tutorials

Sample programs and examples for DevOps Training

# Ansible

Contains examples of Ansible playbooks

## Get setup for your Local Git with Visual studio code

## Ansible Instructions

Please use the instructions to setup environment at:

### lab-01

Just copy paste the instructions from lab-01 folder, it should work

### lab-02
```
cd ansible/lab-02/
ansible-playbook java-nginx.yml
```
### lab-03

```
cd ansible/lab-03/
ansible-playbook web-page.yml
```
### lab-04

```
cd ansible/lab-04/
ansible-playbook deploy-web-content.yml
```

### lab-05

```
cd ansible/lab-05/
ansible-playbook deploy-web-content.yml
```

### lab-08

```
ansible-galaxy collection install community.docker
cd ansible/lab-08/
ansible-playbook -i ../inventory/ansible-nodes deploy-nifi.yml \
-e "nifi_admin_password=SomeSecurePassword"
```

## lab-06 - Please don't push your AWS key on github

Lab to create instances on AWS.

```
sudo yum install python-pip -y
sudo pip install boto
cd ansible/lab-06/
ansible-playbook create_ec2_instance.yml

```
To Terminate the instance ( You will need the instance id either from AWS console, or output from the create playbook)
```
cd ansible/lab-06/
ansible-playbook terminate_ec2_instance.yml

```

## Lab -07 - Please don't push your AWS key on github

Generate dynamic inventory and run playbooks
```
cd ansible/lab-07/
python dynamic_inventory.py

```
## Lab -08 - Please don't push your AWS key on github

Generate dynamic inventory and install docker followed by mssql docker image
```
ansible-playbook lab-08/running_roles.yml
```

## Q&A

## Assignments

- Write a ansible ad-hoc to retrieve the current date and time from web servers.
- Create a group by name “db” and add remote node to the group.Verify connectivity with the group.
- Write a ansible ad-hoc command to install & remove python3 & git package.
- Add a system user called joe on all web servers. Make sure that the user has a home directory.
- Write a ansible ad-hoc to clone the github repository. (https://github.com/becloudready/ansible-tutorials) & store it in location /tmp/.
- Write a ad-hoc command to fetch the file .bash_profile from remote node & store it on controller node in home directory by name remote_node_profile.
- Create a custom fact in remote nodes & get the git & httpd version using ansible adhoc command.
- Write a playbook to read username & password as variables & display the output.
- Write a playbook to install httpd using command line argument.
- Write a playbook to get the following details of localhost using setup module
- ansible_distribution
- ansible_distribution_version
- ansible_os_family
- Write a playbook to perform the following arithmetic operations by passing values of x & y through vars.yaml file.
- Addition
- Subtraction
- Multiplication
- Division v)Modulus
- Write a playbook to install httpd using conditional statement.
- Write a playbook to create the following users using loops.
- user:kunal groups:wheel
- user:tom groups:user
- user:bob groups:user
- Write a playbook to install nginx & wget with & without tags.
- Write a playbook to install apache web-server with customized default page which will prints "Welcome to Ansible training with ip_address of remote node".
- Write a playbook to install Tomcat server
- Write a playbook to install Tomcat server using roles
- Write a playbook to install Jenkins server using roles