Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sanketbhandare/ansible-complete-course
Complete Ansible Course with Real-Time Examples
https://github.com/sanketbhandare/ansible-complete-course
ansible ansible-collection ansible-galaxy ansible-playbook ansible-project ansible-role
Last synced: 24 days ago
JSON representation
Complete Ansible Course with Real-Time Examples
- Host: GitHub
- URL: https://github.com/sanketbhandare/ansible-complete-course
- Owner: Sanketbhandare
- Created: 2024-12-05T17:23:16.000Z (24 days ago)
- Default Branch: main
- Last Pushed: 2024-12-05T17:28:09.000Z (24 days ago)
- Last Synced: 2024-12-05T18:30:25.214Z (24 days ago)
- Topics: ansible, ansible-collection, ansible-galaxy, ansible-playbook, ansible-project, ansible-role
- Homepage: https://www.youtube.com/@sanket.bhandare
- Size: 2.93 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Complete Ansible Zero to Hero Course
Complete Ansible Zero to Hero Course with Real-Time Examples. Keep Learning!---
### Course Requirements:
1. **Laptop (with admin privileges)**
2. **Desire to Learn**.---
## **Module 1: Ansible Basics & Architecture**
- **Introduction to Ansible**: Automation tool for configuration management, application deployment, and orchestration.
- **Architecture**: Master (control node) and managed nodes (hosts).
- **Ansible Components**: Inventory, modules, playbooks, and tasks.---
## **Module 2: Ansible Playbooks & Variables**
- **Playbooks**: YAML files that define automation tasks.
- **Variables**: Use variables for dynamic values in playbooks.
- Declare and use variables in playbooks.
- Facts: Collect system information during execution.---
## **Module 3: Ansible Modules & Collections**
- **Modules**: Core building blocks for tasks (e.g., `yum`, `copy`, `service`).
- **Collections**: Reusable code packaged together, containing roles, modules, and plugins.---
## **Module 4: Ansible Roles, Galaxy & Vault**
- **Roles**: Organize playbooks into reusable units.
- **Galaxy**: Download and share roles via Ansible Galaxy.
- **Vault**: Store sensitive data (passwords, keys) securely in playbooks.---
## **Module 5: Error Handling & Debugging**
- **Error Handling**: Handle task failures using `ignore_errors`, `when`, and `block`.
- **Debugging**: Use the `debug` module to print variable values or task output for troubleshooting.---
## **Module 6: Dynamic Inventories, CI/CD Integration**
- **Dynamic Inventories**: Automate host inventory using scripts or cloud plugins (AWS, Azure).
- **CI/CD Integration**: Automate playbook execution within CI/CD pipelines (e.g., Jenkins, GitLab).---
## **Module 7: System Management**
- **Package Management**: Install, update, and remove software (e.g., `apt`, `yum`).
- **Service Management**: Manage system services (start, stop, restart) using Ansible modules.---
## **Module 8: End-to-End Project**
1. **Step 1: Setup Inventory**:
- Create static and dynamic inventories for managed hosts.
2. **Step 2: Write Playbooks**:
- Write playbooks for installing a web server (e.g., Nginx or Apache).
- Use variables for configuration.
3. **Step 3: Implement Roles**:
- Organize playbooks into roles (e.g., `webserver`, `database`).
- Download roles from Ansible Galaxy if necessary.
4. **Step 4: Use Vault**:
- Securely manage sensitive information (e.g., passwords, API keys).
5. **Step 5: Error Handling & Debugging**:
- Handle errors gracefully and use debugging for troubleshooting.
6. **Step 6: Integrate with CI/CD**:
- Integrate playbook execution into a CI/CD pipeline (e.g., Jenkins) to deploy applications automatically.
7. **Step 7: System Management**:
- Automate system setup tasks, including package installation and service management.
8. **Step 8: Final Testing & Deployment**:
- Test the entire setup by executing playbooks and verify the automation pipeline.---
## **Module 9: Final Project**
- **Automate Multi-Server Deployment**:
- Deploy a multi-tier web application (web server + database).
- Use Ansible to automate the deployment process, from configuration to maintenance.
- Implement monitoring and logging, manage servers, and automate updates.---