Cisco: Puppet Team. SoftServe

Содержание

Слайд 2

Automation Team Oleksiy Molchanov Vasyl Mykhailyshyn Oleksandr Martsyniuk "In God we trust, the rest we automate"

Automation Team

Oleksiy Molchanov

Vasyl Mykhailyshyn

Oleksandr Martsyniuk

"In God we trust, the rest we

automate"
Слайд 3

Automation is process Puppet is a tool for implementation this process

Automation is process

Puppet is a tool for implementation this process

Слайд 4

What do you think ,when hear word ”Automation”?

What do you think ,when hear word ”Automation”?

Слайд 5

Automation is a process in the development of machine production. It

Automation is a process in the development of machine production. It

occurs when management and control functions which were previously performed by a human are delegated to devices and automatic instruments.

What is automation?

Automation is one of the areas of science and technology, which uses a self-regulating hardware and mathematical methods to liberate human from routine work.

Automation is the next step in the Industrial Revolution.

Automation is the evolution.

After Automation

Human physical effort
is
reduced
with 100% to 20%

Слайд 6

Automation’s Benefits The biggest benefit of automation is that it saves

Automation’s Benefits

The biggest benefit of automation is that it saves effort

and time
Significantly reduce the complexity of the operations
Effective implementation of operations with high accuracy
Improving product quality
Слайд 7

Tedious Typical Sysadmin job Manual Repetition of simple actions Many different OS's Optimize infrastructure

Tedious

Typical Sysadmin job

Manual

Repetition of simple actions

Many different
OS's

Optimize
infrastructure

Слайд 8

Deployment Specification Add repositories Install packages Create folders NFS mounts Deploy

Deployment Specification

Add repositories
Install packages
Create folders
NFS mounts
Deploy Files
Services
Symlinks
Crons
Loopbacks
Run ConfigBuilders

And another actions

Слайд 9

“1-click-deploy” with Puppet

“1-click-deploy”
with Puppet

Слайд 10

Puppet. What is it?

Puppet. What is it?

Слайд 11

What is PUPPET? Puppet is: Functionality Ruby Flexibility Open source Multi-platform

What is PUPPET?

Puppet is:

Functionality

Ruby

Flexibility

Open source

Multi-platform

Слайд 12

Lifecycle of a Puppet Run Puppet Master

Lifecycle of a Puppet Run

Puppet
Master

Слайд 13

What can we manage? augeas cron exec file filebucket group host

What can we manage?
augeas cron exec file filebucket group host

interface mailalias maillist mount nagios_* notify package resources router schedule scheduled_task selboolean selmodule service ssh_authorized_key sshkey stage tidy user vlan yumrepo zfs
Слайд 14

PUPPET’S BENEFITS Large developer base Automation Unification Accuracy Reproducibility Reduce time

PUPPET’S BENEFITS

Large developer base
Automation
Unification
Accuracy
Reproducibility
Reduce time
Save money
Optimized and easier configuration language
Better documentation
Abstracted from underlying OS

(more platform support)
Easily scalable and customizable
Large installed base (Google, Siemens, Red Hat, Cisco)
Слайд 15

Large installed base

Large installed base

Слайд 16

Requesting a new automation project To start a new project, the

Requesting a new automation project

To start a new project, the

automation team needs:
a deployment document (on that very wiki) per purpose. What's a purpose?
a JIRA ticket

Step 1: creating the document

Display the SecApps Automation(https://confluence.sco.cisco.com/display/AUT/SecApps+Automation) page
On the top right, click "Add" and then "Page from template"
Select "New project Page“ -> Choose the right project name -> Add the right information -> Save
Select "New Automation Form“ -> Choose the right Automation project page name and enter correct information -> Save

Слайд 17

Step 2: create the JIRA ticket Open a new JIRA ticket

Step 2: create the JIRA ticket

Open a new JIRA ticket in

the AUTO group and add the following information:
Type: Service Request
Product:
Environment:
Due Date: default: 2 weeks.
Details: as follow:

Requesting a new automation project

And WE write manifests!!!

Слайд 18

CMDB/ASDB Automation OS Hostname Network Role (Environment/Product/Purpose) Tags Managed and configured What do we do?

CMDB/ASDB

Automation

OS

Hostname
Network
Role (Environment/Product/Purpose)
Tags

Managed and configured

What do we do?

Слайд 19

Dev team QA team Automation OpsEng / ProdOps Dev environment QA

Dev team

QA team

Automation

OpsEng /
ProdOps

Dev environment

QA environment

Dev Auto environment

QA-Auto environment

Stage environment

Prod environment

Deployment

doc, packages, config files

Signoff

The current right moment for Automation

AUTOMATION
“After QA, before Stage”

Слайд 20

Client1 Puppet PUPPET MODULES Automation Framework Client2 Client3 Client4 … Puppet

Client1

Puppet

PUPPET MODULES

Automation Framework

Client2

Client3

Client4


Puppet

FRAMEWORK

DATA
(YAML)

HIERA

PUPPET MODULES

Client1

Client2

Client3

Client4


FRAMEWORK APPROACH

COMMON APPROACH

Слайд 21

What are benefits for clients? Saving time Repeatability of test results

What are benefits for clients?

Saving time
Repeatability of test results
Ease of Use
Avoid

human errors(stage and prod)
Different environments
Слайд 22

Links Confluence links: Home: https://confluence.ironport.com/display/AUT/Automation+Operations Automation Deployment Guidelines: https://confluence.ironport.com/display/AUT/Deployment+Automation+Guidelines Generic product

Links

Confluence links:
Home: https://confluence.ironport.com/display/AUT/Automation+Operations
Automation Deployment Guidelines: https://confluence.ironport.com/display/AUT/Deployment+Automation+Guidelines
Generic product installation: https://confluence.ironport.com/display/AUT/Generic+Product+Installation+Procedure
Implementation Process and

Handoff: https://confluence.ironport.com/pages/viewpage.action?pageId=2918810
Puppet OpsDoc: https://opswiki.ironport.com/bin/view/Main/PuppetOpsDoc