Top Banner
Cloud and Devops - Time to Change !!! PRESENTED BY: Vijay
32

Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

May 07, 2018

Download

Documents

doandan
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

Cloud and Devops - Time to Change !!!

PRESENTED BY: Vijay

Page 2: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

CloudnLoud training wing is founded in response to the desire to find a better alternative to the formal IT training methods and strategies.We offers trainings that help trainees to cultivate their strengths and equip them with skills and knowledge on industry demanding Cloud/Linux & virtualization technologies,

ABOUT CLOUDNLOUD

Page 3: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

In CloudnLoud we prepare candidates for a successful and rewarding career by enriching skills in their areas of specialization and competency through our task-focused with well constructed curriculum. Industry expert trainer's working with Cloud n Loud having extensive professional experience in leading Global IT companies make us stand out from our competitors.

OUR MISSION

Page 4: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

What is Automation

What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install software or initiate other activities. Traditional IT administrators use sequential scripts to perform a series of tasks (e.g. software installation or configuration); however, this is now considered an antiquated technique in a modern cloud-based environment. Orchestration differs from automation in that it does not rely entirely on static sequential scripts but rather sophisticated workflows; multiple automated threads; query-based and if/then logic; object-oriented and topology workflows; and even the ability to back-out a series of automated commands if necessary.

Page 5: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

What is automation and Orchestration

Automation is not the same as orchestration. The difference is profound. Orchestration combines automated tasks into a workflow. An automated network configuration program can check VLAN numbers, select one, analyze which switches need that VLAN, and then deliver the configuration changes to the target devices. Orchestration refers to combining multiple automation tasks to provision the network, storage array, SAN, firewalls, hypervisor, operating system and even the application.

Page 6: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

Why Need to Plan Ourselves

Orchestration, on the other hand, is designed to “understand” a composite system, receive business requirements, and transition the system to a new state that satisfies the needs of the business. In the specific case of security policy orchestration, business owners define their connectivity needs and the system, taking into account the current network configuration, designs a set of firewall policy changes that achieve the required connectivity while adhering to security and compliance policies.

Page 7: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

7

Cloud Automation ToolsFabric

Create a Python module containing one or more functions and then execute them via the fab command-line tool

Run a task on one or more servers, once it is definedImport Fabric’s components into other Python code

Puppet

Handles just a few servers or thousands of physical and virtual machines

Automates the software delivery process at every stepEnsures consistency, reliability, and stabilityFosters collaboration between SysAdmins and developers for better-designed code

Cuisine

Small, easy to read, single-file API

Covers file/dir operations, user/group operations, and package operationsText processing and template functions

Page 8: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

8

Cloud Automation Tools

Chef

Recipes (resuable definitions) automate infrastructure tasks

Recipes use resources (building blocks) that describe a piece of infrastructure; use the resources included in Chef or create your ownChef servers store recipes and your other configuration data and determines whether nodes are out of date – if they are, the Chef client runs them on the recipes to update the nodes.

Ansible

Page 9: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

9

DEVOPS Process

Page 10: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

What is Ansible ?

* Configuration Management* Orchestration Utility* Its Architecture is Agentless* Originally written by Michael DeHaan* Built, on Python* Supported by known DevOps tools like vagrant, Jenkins etc.

Page 11: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

What is Ansible.....contd

• Ansible creates “plays” in “playbooks”.• Work is pushed to remote hosts when Ansible executes.• Modules are the programs that perform the actual work of the tasks of a play.• Ansible is immediately useful because it comes with hundreds of core modules that perform useful system administrative work.

Page 12: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

Ansible Architecture

SSH

Ansible Python2.6 or 2.7

Page 13: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

Ansible Architecture

Page 14: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

Key Terminologies

• Configuration : Ansible have its own config which manages the behaviour of ansible• Host Inventory: Its the list the of “Managed Hosts” and their connection configuration.• Core Modules: There are around 400+ core modules that comes bundled with Ansible• Custom Modules: Users can extend Ansible's functionality by writing custom modules, which are written in Python typically, but can also be written in Ruby, Python, shell etc.#ansible-doc –l#ansible-doc yum

Page 15: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

• Playbooks: Ansible playbooks are files written in YAML syntax that define the modules, with arguments, to apply to managed nodes. They declare the tasks that need to be performed.• Connection Plugins: Plugins that enable communication with managed hosts or cloud providers. These include native SSH, paramiko SSH, and local.• Plugins: Extensions that enhance Ansible's functionality. Examples include e-mail notifications and logging.

Key Terminologies

Page 16: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

Requirements for Control Node

• Ansible software is installed on the control node.• A machine acting as a control node must have Python 2.6 or 2.7 installed.• Red Hat Enterprise Linux 6 or 7 will run Ansible software.• Windows is not supported for the control node at this time.

Page 17: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

Requirements on Managed Node

• SSH must be installed and configured to allow incoming connections.• Managed hosts must have Python 2.4 or later installed.• The python-simplejson package must also be installed on Red Hat Enterprise Linux 5 managed hosts. It is not required on Red Hat Enterprise Linux 6 and 7 managed hosts, since Python 2.5 (and newer versions) provide its functionality by default.

Page 18: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

Ansible Deployments

• It can detect various host specific information from “managed hosts”.(ansible-facts)• For example, the version of RHEL running, installed applications, subscriptions entitled etc.• Jboss version and its configuration and subscriptions as well.

Page 19: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

• Can help in finishing provisioning of servers.• Can do Rolling Upgrades with zero downtime• Serialization is also possible.• By default, it does parallel execution of “plays”.

Ansible Deployments

Page 20: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

Control Node

Pre-requisites -:

• Python 2.6

• Ansible is required to be installed only on control node,unlike Puppet

of Chef.

• Python3 is not used by Ansible as of now

• Ansible is not a part of RHEL repo ( as of now ). Try GitHub or EPEL

Repos.

• Officially we can get ansible from www.ansible.com.

Page 21: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

Ansible Modules

Ansible Modules are classified into different categories.

Some examples are1. Cloud2. Clustering3. Commands4. Database5. Messaging6. Monitoring7. Network8. Packaging9. System10. Storage11. Windows12. Notification

Page 22: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

Examples of Ansible Commands

• The output show ping result success as shown below

Page 23: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

Examples of Ansible commands (Cnt)

• How to run commands to fetch hard drives utilization • ansible -m command -a 'df -h' Servers• How to run commands to fetch system uptime • ansible -m command -a ‘uptime' Servers

Page 24: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

Examples of Ansible commands ( Cnt)• The full configuration environment inventory of a particular client

machine can be obtain using the command below.• ansible -m setup 192.168.167.51 ( output as shown below)

Page 25: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

Understanding Ansible Playbook Configurations

• The output of the ansible-playbook command as below

Page 26: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

ANSIBLE TOWER

• Ansible Tower is a web-based UI that provides an enterprise solution for IT automation.

• It has a user-friendly dashboard to manage deployments and monitor resources.

• Ansible Tower complements Ansible, adding automation, visual management, and monitoring capabilities.

• Tower provides user access control to administrators.• Graphically managed of inventory.• Synchronized with a wide variety of cloud sources, including

Red Hat OpenStack Platform.

Page 27: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

Ansible Documentations

• You can find more explanation in the Ansible Docs.• Ad-hoc commands• Inventories• Variables• Modules• Playbook Roles

• Similar tools that does the same function as Ansible are as below.• Puppet• Chef • Salt

Page 28: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install
Page 29: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

29

Certification - RedHat

Page 30: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

Redhat Courses Offering – Cloud & DevOps

RHCE

RHCVA

RHCSA

Openstack

vCourses

Hardening

Hybrid Storage

Openshift

AWS Amazon

Cloud Forms

JBOSS

Puppet

Ansible

Python Administration

Netapp Storage

DevOps

Page 31: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

You can reach us at

Phone: +91 988 456 1188Email: [email protected]

Web: www.cloudnloud.com

………....…..THANK YOUWishing Fruitful Association With Your Esteem Organization….

Page 32: Cloud and Devops - Time to Change is Automation What is meant by automation? Automation is technique used in traditional data centers–and critical in a cloud environment–to install

Likely to reach across the world …

……………………………………………