DevOps Classroom notes 29/Oct/2024

Overview of CI/CD Pipelines

  • Basic Pipeline
    Preview
  • In each Enviroment such as System Test or Performance Test or Load Test environment, expectation is
    • Ensure the application is deployed and running
    • We execute the Automated Tests and showcase the results
  • Relevance of Configuration Management:
    • This comes into play when your application is deployed on Physical or virtual machines

Configuration Management (CM)

  • This is used to configure applications or setups on servers.
  • Where is it used
    • deploying applications on servers
    • network automation
  • How does this work ?
    Preview
  • Models in Configuration Managment
    • PUSH BASED CM:
      • Examples:
        • Ansible
        • Salt
    • PULL BASED CM
      • Examples
        • Chef
        • Puppet
    • HYBRID (Support Both)
      • Examples:
        • Powershell DSC
  • PUSH BASED CM (Design Considerations):
    • In this case CM Server needs to maintain list of all node details like (name, ipaddress etc)
    • It also needs credentials
      Preview
  • PULL BASED CM
    • In this agent needs to be installed on node
    • No credentials are required
      Preview

Ansible

  • Ansible is simple to use,
  • Ansible works in two ways
    • directly execute commands
    • write yaml files (playbooks) to define what you want.
  • Ansible is an opensource software developed in python Refer Here
  • Ansible is also widely used in Network and Datacenter Automations
  • In the world of Ansible
    • CMServer => Ansible control node
    • list of node and ip details => inventory
    • Ansible uses python to work
      Preview

Understanding Ansible Workflow

  • Goal: Deploy nginx on a server
  • Manual activities:
sudo apt update
sudo apt install nginx -y
  • Ansible’s approach (Declarative):
  • I will create a playbook
---
- name: install nginx
  hosts: all
  become: yes
  tasks:
    - name: install and update nginx
      apt:
        name: nginx
        update_cache: yes
        state: present   

Preview

Goals

  1. Try doing some manual deployments
  2. Learn YAML
  3. Automate manual deployments by writing playbooks
  4. Write Ansible Playbooks effeciently

Published
Categorized as Uncategorized Tagged

By continuous learner

devops & cloud enthusiastic learner

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Please turn AdBlock off
Animated Social Media Icons by Acurax Responsive Web Designing Company

Discover more from Direct DevOps from Quality Thought

Subscribe now to keep reading and get access to the full archive.

Continue reading

Visit Us On FacebookVisit Us On LinkedinVisit Us On Youtube