Creating, Operating and Consuming Automation
AS
Published · 42 slides · 0 views
1 / 1
Description
Creating, Operating and Consuming Automation Ansible Platform Technical Deck Anyone can automate, but an enterprise needs to coordinate scale Too many unintegrated, domain-specific tools Many organizations have a problem IT
Related Topics
Share
Embed code
Download this presentation From Below
"Creating, Operating and Consuming Automation" is the property of its rightful owner. Permission is granted to download and print the materials on this website for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Presentation Transcript
01
Creating, Operating and Consuming Automation Ansible Platform Technical Deck ‹#›<br>
02
‹#› Anyone can automate, but an enterprise needs to coordinate & scale<br>
03
‹#› Too many unintegrated, domain-specific tools Many organizations have a problem IT ops Devs/DevOps SecOps Network ops<br>
04
‹#› Break down silos Different teams a single platform Cloud Edge Datacenter IT ops Devs/DevOps SecOps Network ops Line of business Consistent Governance<br>
05
‹#› Why the Ansible Automation Platform?<br>
06
‹#› POWERFUL AGENTLESS SIMPLE Ansible Easily integrate with hybrid environments. Orchestrate complex processes at enterprise scale. Simplify automation creation and management across multiple domains.<br>
07
‹#› Do this... Automate the deployment and management of automation for your entire IT footprint Orchestrate Firewalls Manage configurations Deploy applications Provision / deprovision Deliver continuously Secure andcomply Load balancers Applications Containers Clouds Servers Infrastructure Storage And more ... Network devices On these...<br>
08
Cloud Virt & Container Windows Network Security Monitoring AWS
Azure
Digital Ocean
Google
OpenStack
Rackspace
+more Docker
Kubernetes
OpenStack
OpenShift
VMware
+more ACLs
Files
Packages
IIS
Registry
Shares
Services
Configs
Users
Domains
Updates
+more Arista
Aruba
Bigswitch
Cisco
Ericsson
F5
FRR
Juniper
Meraki
OpenvSwitch
Ruckus
VyOS
+more Checkpoint
Cisco
CyberArk
F5
Fortinet
Juniper
IBM
Palo Alto
Snort
+more Dynatrace
Datadog
LogicMonitor
New Relic
Sensu
+more
Devops
Jira
GitHub
Vagrant
Jenkins
Slack
+more Storage
Infinidat
Netapp
Pure Storage
+more Red Hat Products
RHEL
Satellite
Insights
+more Time to automate is measured in minutes, 40+ certified partners Ansible automates technologies you use ‹#›<br>
Azure
Digital Ocean
OpenStack
Rackspace
+more Docker
Kubernetes
OpenStack
OpenShift
VMware
+more ACLs
Files
Packages
IIS
Registry
Shares
Services
Configs
Users
Domains
Updates
+more Arista
Aruba
Bigswitch
Cisco
Ericsson
F5
FRR
Juniper
Meraki
OpenvSwitch
Ruckus
VyOS
+more Checkpoint
Cisco
CyberArk
F5
Fortinet
Juniper
IBM
Palo Alto
Snort
+more Dynatrace
Datadog
LogicMonitor
New Relic
Sensu
+more
Devops
Jira
GitHub
Vagrant
Jenkins
Slack
+more Storage
Infinidat
Netapp
Pure Storage
+more Red Hat Products
RHEL
Satellite
Insights
+more Time to automate is measured in minutes, 40+ certified partners Ansible automates technologies you use ‹#›<br>
09
‹#› What makes a platform?<br>
10
‹#› Combining the universal automation language with cloud services and certified content for automating, deploying and operating applications, infrastructure and services securely at enterprise scale. Providing scalable, secure implementation for describing, building and managing the deployment of enterprise IT applications across diverse ENTERPRISE architectures. ANSIBLE AUTOMATION Cloud services that facilitate team COLLABORATION and provide operational analytics for automating heterogeneous, hybrid environments. CLOUD SERVICES Extends native platform capabilities with certified, supported CONTENT designed to expand the automation domain and accelerate adoption for enterprise customers. CERTIFIED CONTENT Red Hat Ansible Automation Platform<br>
11
Red Hat Ansible Automation Platform ‹#› Create Operate Consume Holistic Automation for your enterprise<br>
12
‹#› Ansible Tower Automation
Hub Automation
Services Catalog Fueled by an open source community Automation
Analytics Ansible Command Line Ansible Cloud Services OnPrem<br>
Hub Automation
Services Catalog Fueled by an open source community Automation
Analytics Ansible Command Line Ansible Cloud Services OnPrem<br>
13
‹#› Create<br>
14
‹#› Create The Automation Lifecycle Automation Hub Red Hat Cloud / On Prem Ansible Content Experience BUILD DISCOVER TRUST<br>
15
‹#› ---
- name: install and start apache
hosts: web
become: yes
tasks:
- name: httpd package is present
yum:
name: httpd
state: latest
- name: latest index.html file is present
template:
src: files/index.html
dest: /var/www/html/
- name: httpd is started
service:
name: httpd
state: started Ansible Playbook example<br>
- name: install and start apache
hosts: web
become: yes
tasks:
- name: httpd package is present
yum:
name: httpd
state: latest
- name: latest index.html file is present
template:
src: files/index.html
dest: /var/www/html/
- name: httpd is started
service:
name: httpd
state: started Ansible Playbook example<br>
16
‹#› What makes up an Ansible playbook? Ansible Playbook Modules Plugins Plays<br>
17
‹#› Top level specification for a group of tasks. Will tell that play which hosts it will execute on and control behavior such as fact gathering or privilege level What are they? Multiple plays can exist within an Ansible Playbook that execute on different hosts Building blocks for playbooks Ansible Plays What am I automating? ---
- name: install and start apache
hosts: web
become: yes<br>
- name: install and start apache
hosts: web
become: yes<br>
18
‹#› Parametrized components with internal logic, representing a single step to be done.
The modules “do” things in Ansible. What are they? Usually Python, or Powershell for Windows setups. But can be of any language. Language Ansible modules The “tools in the toolkit” - name: latest index.html file ...
template:
src: files/index.html
dest: /var/www/html/<br>
The modules “do” things in Ansible. What are they? Usually Python, or Powershell for Windows setups. But can be of any language. Language Ansible modules The “tools in the toolkit” - name: latest index.html file ...
template:
src: files/index.html
dest: /var/www/html/<br>
19
‹#› Plugins are pieces of code that augment Ansible’s core functionality. Ansible uses a plugin architecture to enable a rich, flexible and expandable feature set. What are they? Ansible plugins The “extra bits” ---
- name: install and start apache
hosts: web
become: yes {{ some_variable | to_nice_json }}
{{ some_variable | to_nice_yaml }} Example Filter Plugins: Example Become Plugin:<br>
- name: install and start apache
hosts: web
become: yes {{ some_variable | to_nice_json }}
{{ some_variable | to_nice_yaml }} Example Filter Plugins: Example Become Plugin:<br>
20
‹#› Group your tasks and variables of your automation in a reusable structure. Write roles once, and share them with others who have similar challenges in front of them. What are they? Ansible roles Reusable automation actions ---
- name: install and start apache
hosts: web
roles:
- common
- webservers Example Become Plugin:<br>
- name: install and start apache
hosts: web
roles:
- common
- webservers Example Become Plugin:<br>
21
Collections are a data structure containing automation content:
modules
playbooks
roles
plugins ‹#› Collections Simplified and consistent content delivery modules playbooks roles plugins docs tests Collection<br>
modules
playbooks
roles
plugins ‹#› Collections Simplified and consistent content delivery modules playbooks roles plugins docs tests Collection<br>
22
‹#› nginx_core
├── playbooks
│ ├── deploy-nginx.yml
│ └── ...
├── plugins
├── README.md
└── roles
├── nginx
│ ├── defaults
│ ├── files
│ │ └── …
│ ├── tasks
│ └── templates
│ └── ...
├── nginx_app_protect
└── nginx_config ---
- name: Install NGINX Plus
hosts: all
tasks:
- name: Install NGINX
include_role:
name: nginxinc.nginx
vars:
nginx_type: plus
- name: Install NGINX App Protect
include_role:
name: nginxinc.nginx_app_protect
vars:
nginx_app_protect_setup_license: false
nginx_app_protect_remove_license: false
nginx_app_protect_install_signatures: false<br>
├── playbooks
│ ├── deploy-nginx.yml
│ └── ...
├── plugins
├── README.md
└── roles
├── nginx
│ ├── defaults
│ ├── files
│ │ └── …
│ ├── tasks
│ └── templates
│ └── ...
├── nginx_app_protect
└── nginx_config ---
- name: Install NGINX Plus
hosts: all
tasks:
- name: Install NGINX
include_role:
name: nginxinc.nginx
vars:
nginx_type: plus
- name: Install NGINX App Protect
include_role:
name: nginxinc.nginx_app_protect
vars:
nginx_app_protect_setup_license: false
nginx_app_protect_remove_license: false
nginx_app_protect_install_signatures: false<br>
23
‹#› Deploying either on-prem or to a cloud, customers can run their own private instances of Automation Hub integrated into Ansible Automation Platform Customer Controlled Manage the lifecycle and internal distribution of in-house Ansible content within Private Content Via synch from Community (Galaxy) and Supported (Automation Hub) sources, customers can supply internal users with approved content in one controlled location Customizable Content Catalog Automation Hub Trusted source<br>
24
‹#› Value of Private Automation Hub Private Automation Hub Architecture Private Automation Hub Custom
Enterprise Content Automation Hub
cloud.redhat.com Ansible Galaxy Ansible Automation Platform cluster DEVELOPER IDE CONTENT SDK BUILD PUBLISH DELIVER<br>
Enterprise Content Automation Hub
cloud.redhat.com Ansible Galaxy Ansible Automation Platform cluster DEVELOPER IDE CONTENT SDK BUILD PUBLISH DELIVER<br>
25
How to get them Accessing collections ‹#› Requirements file defines the required collections for a playbook Ansible Tower pulls the collections from Automation Hub automatically CLI access is also possible via ansible-galaxy command<br>
26
‹#› Operate<br>
27
‹#› Automation Analytics Operate The Automation Lifecycle Ansible Tower Automation Hub Ansible Command Line CONTROL MANAGE DEPLOY Ansible Cloud Services OnPrem<br>
28
‹#› $ ansible-playbook deploy_httpd.yml
PLAY [deploy java stack] ************************************
TASK [Gathering Facts] **************************************
ok: [web1.munich.com]
ok: [web2.paris.com]
TASK [httpd package is present] *****************************
ok: [web1.munich.com]
ok: [web2.paris.com]
TASK [latest index.html file is present] ********************
changed: [web1.munich.com]
changed: [green.local]
TASK [http is started] **************************************
changed: [web1.munich.com]
changed: [green.local]
PLAY RECAP **************************************************
web1.munich.com : ok=4 changed=2 unreachable=0 failed=0
skipped=0 rescued=0 ignored=0
web2.paris.com : ok=4 changed=2 unreachable=0 failed=0
skipped=0 rescued=0 ignored=0<br>
PLAY [deploy java stack] ************************************
TASK [Gathering Facts] **************************************
ok: [web1.munich.com]
ok: [web2.paris.com]
TASK [httpd package is present] *****************************
ok: [web1.munich.com]
ok: [web2.paris.com]
TASK [latest index.html file is present] ********************
changed: [web1.munich.com]
changed: [green.local]
TASK [http is started] **************************************
changed: [web1.munich.com]
changed: [green.local]
PLAY RECAP **************************************************
web1.munich.com : ok=4 changed=2 unreachable=0 failed=0
skipped=0 rescued=0 ignored=0
web2.paris.com : ok=4 changed=2 unreachable=0 failed=0
skipped=0 rescued=0 ignored=0<br>
29
‹#› The central execution of automation content is managed and done either via central cluster, or on separate nodes.
Takes care of collections, can also sync git repositories, takes care of credentials, loggin, is auditable. Execution of content Where it all starts<br>
Takes care of collections, can also sync git repositories, takes care of credentials, loggin, is auditable. Execution of content Where it all starts<br>
30
‹#› An inventory is a collection of hosts (nodes) with associated data and groupings that the automation platform can connect to and manage.
nodes
groups
can be static or dynamic
smart inventories possible
And what usernames & passwords do you use during connection? That is kept in the credentials. Inventories & Credentials How to talk to others<br>
nodes
groups
can be static or dynamic
smart inventories possible
And what usernames & passwords do you use during connection? That is kept in the credentials. Inventories & Credentials How to talk to others<br>
31
‹#› Workflows Combine automation to create something bigger Workflows enable the creation of powerful holistic automation, chaining together multiple pieces of automation and events.
Simple logic inside these workflows can trigger automation depending on the success or failure of previous steps.<br>
Simple logic inside these workflows can trigger automation depending on the success or failure of previous steps.<br>
32
‹#› API Integration of automation into larger workflows The API provides programmatic access to the automation via a defined interface.
Underneath it is still powered by the same bits and pieces which are at the core: workflows, inventories, etc.
It offers simple integration into other tools like ITSM, SOAR, etc.<br>
Underneath it is still powered by the same bits and pieces which are at the core: workflows, inventories, etc.
It offers simple integration into other tools like ITSM, SOAR, etc.<br>
33
‹#› Dashboards Understand what is going on. Overview of the actual cluster, the jobs happening, the nodes connected, what works and fails right this moment. Overview across clusters, better insight into use cases of automation; insight into adoption of automation per organization<br>
34
‹#› Consume<br>
35
‹#› Consume The Automation Lifecycle Ansible Tower EXECUTE INTEGRATE ADOPT Automation
Services Catalog Ansible Tower Ansible Command Line<br>
Services Catalog Ansible Tower Ansible Command Line<br>
36
Execution Environments RBAC Automation Job Self Service Approval API Web UI Control Plane Execution Plane<br>
37
‹#› Self Service Provide others the mean to consume For teams accessing directly the automation environment and are close to the automation platform processes For high level access distant or not even aware of the underlying automation environment. Lines of business for example<br>
38
‹#› RBAC How to manage access Role based access control system: Users can be grouped in teams, and roles can be assigned to the teams
Rights to edit or use can be assigned across all objects
All backed by enterprise authentication if needed<br>
Rights to edit or use can be assigned across all objects
All backed by enterprise authentication if needed<br>
39
‹#› Approval Govern access Approval processes allow a human interaction to the automation, to add governance like human level administration
Both available at the operational level on the Tower automation UI as well as in the service catalog level.<br>
Both available at the operational level on the Tower automation UI as well as in the service catalog level.<br>
40
‹#› ITSM integration Incorporate automation into your IT service management Integrate high level workflows in existing ITSM toolsets with the automation platform.
Have the automation platform reach out to the ITSM system whenever things are changing, including data transmission between the tools<br>
Have the automation platform reach out to the ITSM system whenever things are changing, including data transmission between the tools<br>
41
‹#› Learn more Youtube, Twitter, Workshops, docs Get started Evals, cloud.redhat.com Get serious Automation Adoption Journey, training, consulting Where To Go Next<br>
42
‹#› Red Hat is the world’s leading provider of enterprise open source software solutions. Award-winning support, training, and consulting services make
Red Hat a trusted adviser to the Fortune 500. Thank you<br>
Red Hat a trusted adviser to the Fortune 500. Thank you<br>