ansible and cloudforms hybrid cloud management with€¦ · unify provisioning, configuration, and...

32
Hybrid cloud management with Ansible and CloudForms Subheading goes here Presenter Presenter’s title Date

Upload: others

Post on 10-Jun-2020

30 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

Hybrid cloud management with Ansible and CloudFormsSubheading goes here

PresenterPresenter’s titleDate

Page 2: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

MOISES RIVERA

Moises has been in Red Hat for more than 6 years and he is still as felt in love as the first day.

Works as a Solutions Architect in different verticals and his expertise is related with infrastructure, storage and cloud

Page 3: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

VICTOR ESTIVAL

Victor joined Red Hat back in 2015 as a CloudForms Specialist Solution Architect for EMEA and since 2017 work for the BU

Victor used to work with AIX for a long time until he discovered THE CLOUD in 2010.

Page 4: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

MANAGEMENT & AUTOMATIONreducing complexity of the hybrid cloud

HYBRID CLOUD MANAGEMENTAND AUTOMATION

CLOUD-NATIVEAPP PLATFORMS

HYBRID CLOUD INFRASTRUCTURE

LINUX OS & CONTAINERS

Page 5: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

AUTOMATION IS CRITICAL

86%Automation is either mission critical or very important to their future Cloud strategy

79%Of IT organizations will need to deploy new management and automation software between now and 2020

Source: IDC Infobrief sponsored by Red Hat, Automation, DevOps and the Demands of a Multicloud World, March 2018 N= 1171 Worldwide It Operations Decision Makers

Page 6: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

CLOUDFORMS DELIVERS SERVICES ACROSS HYBRID ENVIRONMENTS

SERVICE AUTOMATION

Complete lifecycle and operational management that allows IT to remain in control.

POLICY &COMPLIANCE

Deploy across virtualization, private cloud, public cloud and container-based environments.

UNIFIED HYBRID MANAGEMENT

Draws on continuous monitoring and deepinsights to raise alerts or remediate issues.

Streamline complex servicedelivery processes, saving time and money.

OPERATIONALVISIBILITY

Page 7: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

HYBRID CLOUD MANAGEMENT

Self Service Provisioning,Service Catalog, Ops Console

Governance,Reporting,Cost, Inventory

Discovery, Monitoring &Relationship Mapping

PUBLIC CLOUDS

HYBRID INFRASTRUCTURE ON-PREMISE/PRIVATE CLOUD

RHOSP

OPERATIONSDEVELOPER SYS/CLOUD ADMIN

COMPLIANCE

CloudForms

Page 8: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

AUTOMATE EVERYTHING

Page 9: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

RED HAT ANSIBLE

THE MOST POPULAR OPEN SOURCE AUTOMATION PLATFORM

Goal: Unify provisioning, configuration, and application deployment

Result: AnsibleA python-based command line engine that interprets and executes YAML-based “Playbooks” that contain one or more “plays” or tasks.

Page 10: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

CLOUD

WINDOWS

VIRT ANDCONTAINER

NETWORK

NOTIFY

AWS

AzureCentury

LinkCloudScale

GoogleLinode

OpenStack

Rackspace

Docker

Digital Ocean

CloudStackDocker

VMwareRHV

OpenStack

OpenShift

Atomic

ACLs

Files

Commands

Packages

IIS

Regedits

Shell

SharesServices

DSC

Users

Domains

Arista

A10

Cumulus

Big Switch

Cisco

Cumulus

Dell

F5

Juniper

Palo Alto

OpenSwitch

HipChat

IRC

Jabber

Email

RocketChat

Sendgrid

Slack

Twilio

10

Page 11: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

THE UNIVERSAL LANGUAGE

DEV NETWORK IT OPERATIONSBUSINESS

Page 12: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

DAY 1 DEPLOYMENT DEMO

Page 13: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

ENVIRONMENT

RHVM

RHV HOST1

RHV HOST XCloudForms

ituser

Page 14: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

● Task #1. Deploy VMs.○ CF will deploy abundle made of:

■ 1 LB on RHV■ 1 Web Server on RHV■ 1 Web Server on OSP

TASKS

Page 15: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

DAY 2 OPERATIONS DEMO

Page 16: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

ANSIBLE TOWER

CONTROL

SIMPLE POWERFUL AGENTLESS

KNOWLEDGE DELEGATION

TOWER EMPOWERS TEAMS TO AUTOMATE

AT ANSIBLE’S CORE IS AN OPEN-SOURCE AUTOMATION ENGINE

Scheduled andcentralized jobs

Visibility and compliance Role-based access and self-service

Everyone speaks thesame language

Designed for multi-tier deployments

Predictable, reliable,and secure

Page 17: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

ENVIRONMENT

Load Balancer

haproxy

HTTP Server

apache1

HTTP Server

apache2

tower

nagios

repo

itoperator itadminoperator

itroot

GitHubConfig & Ansible

Playbook Repository

Page 18: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

DUTIESIT Operators IT Admin Operators

HTTP GET CONFIG

HTTP START

HTTP STOP

HTTP RESTART

ENVIRONMENT DEPLOY

HTTP MODIFY CONFIG

Page 19: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

● Task #1. Environment Deploy.○ Deploy HTTP Servers and HAproxy server.

● Task #2. Modify Configuration.○ Modify HTTP configuration.

● Task #3. Integration with third party tools.○ Run a Template using Ansible Tower API.

TASKS

Page 20: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

TASK #1 - Environment Deploy

Load Balancer

haproxy

HTTP Server

apache1

HTTP Server

apache2

tower

nagios

repo

Minimal RHEL.yum repo: repo

Minimal RHEL.yum repo: repo

Minimal RHEL.yum repo: repo

itoperator itadminoperator

itroot

GitHubConfig & Ansible

Playbook Repository

Page 21: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

TASK #1 - Environment Deploy - After

Load Balancer

haproxy

HTTP Server

apache1

HTTP Server

apache2

tower

nagios

repo

Minimal RHEL.yum repo: repo

HAproxy listen :80

Minimal RHEL.yum repo: repoHTTP listen :80

Minimal RHEL.yum repo: repoHTTP listen :80

Monitoring HTTP Servers

(apache[1..2])

itoperator itadminoperator

itroot

GitHubConfig & Ansible

Playbook Repository

Page 22: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

TASK #2 - Modify Configuration

Load Balancer

haproxy

HTTP Server

apache1

HTTP Server

apache2

tower

nagios

repo

Minimal RHEL.yum repo: repo

HAproxy listen :80

Minimal RHEL.yum repo: repoHTTP listen :80

Minimal RHEL.yum repo: repoHTTP listen :80

Monitoring HTTP Servers

(apache[1..2])

itoperator itadminoperator

itroot

GitHubConfig & Ansible

Playbook Repository

Page 23: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

TASK #2 - Modify Configuration - After

Load Balancer

haproxy

HTTP Server

apache1

HTTP Server

apache2

tower

nagios

repo

Minimal RHEL.yum repo: repo

HAproxy listen :80

Minimal RHEL.yum repo: repo

HTTP listen :xxxx

Minimal RHEL.yum repo: repo

HTTP listen :xxxx

Monitoring HTTP Servers

(apache[1..2])

itoperator itadminoperator

itroot

GitHubConfig & Ansible

Playbook Repository

Page 24: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

TASK #3 - Integration with Nagios

Load Balancer

haproxy

HTTP Server

apache1

HTTP Server

apache2

tower

nagios

repo

Minimal RHEL.yum repo: repo

HAproxy listen :80

Minimal RHEL.yum repo: repo

HTTP listen :xxxx

Minimal RHEL.yum repo: repo

HTTP listen :xxxx

Monitoring HTTP Servers

(apache[1..2])

pkill -9 httpd

itoperator itadminoperator

itroot

GitHubAnsible Playbook

Repository

Page 25: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

TASK #3 - Integration with Nagios - After

Load Balancer

haproxy

HTTP Server

apache1

HTTP Server

apache2

tower

nagios

repo

Minimal RHEL.yum repo: repo

HAproxy listen :80

Minimal RHEL.yum repo: repo

HTTP listen :xxxx

Minimal RHEL.yum repo: repo

HTTP listen :xxxx

Monitoring HTTP Servers

(apache[1..2])

itoperator itadminoperator

itroot

GitHubAnsible Playbook

Repository

Page 26: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

BONUS TRACK - SSH interactive connections (ON/OFF)

Load Balancer

haproxy

HTTP Server

apache1

HTTP Server

apache2

tower

nagios

repo

Minimal RHEL.yum repo: repo

HAproxy listen :80SSH interactive: ON

Minimal RHEL.yum repo: repo

HTTP listen :xxxxSSH interactive: ON

Monitoring HTTP Servers

(apache[1..2])

Bonus

Track

Minimal RHEL.yum repo: repo

HTTP listen :xxxxSSH interactive: ON

itoperator itadminoperator

itroot

GitHubAnsible Playbook

Repository

Page 27: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

BONUS TRACK - SSH interactive connections (ON/OFF) - After

Load Balancer

haproxy

HTTP Server

apache1

HTTP Server

apache2

tower

nagios

repo

Minimal RHEL.yum repo: repo

HAproxy listen :80SSH interactive: OFF

Minimal RHEL.yum repo: repo

HTTP listen :xxxxSSH interactive: OFF

Monitoring HTTP Servers

(apache[1..2])Minimal RHEL.yum repo: repo

HTTP listen :xxxxSSH interactive: OFF

itoperator itadminoperator

itroot

GitHubAnsible Playbook

Repository

Bonus

Track

Page 28: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

https://github.com/MoyRivera/dcFailover

Why don’t you try it at home?

A challenge for you...

Page 29: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

AUTOMATION & MANAGEMENTCome see us in the Red Hat booth in the Ecosystem Expo

‘Management - What’s New’New products under development

plus

Page 30: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

THANK YOUplus.google.com/+RedHat

linkedin.com/company/red-hat

youtube.com/user/RedHatVideos

facebook.com/redhatinc

twitter.com/RedHat

Page 31: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

INSERT DIVIDER COPY

Page 32: Ansible and CloudForms Hybrid cloud management with€¦ · Unify provisioning, configuration, and application deployment Result: Ansible A python-based command line engine ... NETWORK

ANSIBLE TOWER DEMOPlaybooks/Roles/uPlaybooks/Workflows

apply_conf.ymlApply the configuration

site_deploy.ymlDeploy a site and the test page to

check the HTTP service

apache-mng.ymlStart, Stop, Reload, Restart

HTTP service

apache_deploy.ymlInstall and activate HTTP service

nagios-deploy.ymlAdd the server(s) to RH Insights

---- hosts: “{{ host_or_group }}” remote_user: root vars_files: - vars/httpd_vars.ynml

tasks: - name: Download and install httpd pkg yum: name={{ item }} state=present with_items: - apr - apr-util - httpd

- name: Applying configuration template: src:templates/{{ file }} dest: {{ config_file_path }}

- name: Activating service on boot service: name: httpd state: started enabled: yes … … … …

PLAYBOOK uPLAYBOOKs

site_deploy.ymlDeploy a site and the test page to

check the HTTP service

apply_conf.ymlApply the configuration

apache_deploy.ymlInstall and activate HTTP service

nagios-deploy.ymlAdd the server(s) to RH Insights

apache-mng.ymlStart, Stop, Reload, Restart

HTTP service

WORKFLOWs