My Efforts to Define DevOps

11
DevOps Sopan Shewale

Transcript of My Efforts to Define DevOps

Page 1: My Efforts to Define DevOps

DevOps Sopan Shewale

Page 2: My Efforts to Define DevOps

What’s DevOps?

Learn how to recognize problems

happen in IT organizations how these problems jeopardize every commitment the business makes around

Development, IT Operations Information Security

DevOps techniques can fix the problem to help the business win.

Page 3: My Efforts to Define DevOps

What’s DevOps? (cont…)

PROJECTProduct

Service

OPERATIONS

• Deployment (infrastructure & software)

• Monitoring (Services up/down, capacity)

• Patching, Upgrades, Backups, DR• Making sure – Applications are

running and used by End Users (SLA… some number of 9’s)

• Project Managers• Architect – Design,

POC• Developers • QA Engineers• Usability Engineers

Non-Collaborative Environment in Teams

• Delays in Delivery• Delays in Deployments • Versions, Patches, OS conflicts• Manual Work or semi-Automation

Page 4: My Efforts to Define DevOps

What’s DevOps? (cont…)

PROJECTProduct

Service

OPERATIONS

• Deployment (infrastructure & software)

• Monitoring (Services up/down, capacity)

• Patching, Upgrades, Backups, DR• Making sure – Applications are

running and used by End Users (SLA… some number of 9’s)

• Project Managers• Architect – Design,

POC• Developers • QA Engineers• Usability Engineers

Non-Collaborative Environment in Teams

• Delays in Delivery• Delays in Deployments • Versions, Patches, OS conflicts• Manual Work or semi-Automation

Solutio

ns

Page 5: My Efforts to Define DevOps

How Innovation Happens? People Issues – New Innovation Happens

New Product Born May be new Frameworks, Techniques Born Systems Administration Job: Many tasks are thankless,

right? Developer/QA Engineer: Do they need to know reverse

proxy? So new Roles introduced To business happen, Different ways of collaboration adopted

(DevOps born) Technology Issues – New Innovation Happens

Programming Languages (many – people are differently skilled) New Frameworks (to save time, to aggregate skills, discipline,

right?) Need was: Focus on Business, why waste time on Technology?

(Cloud Born)

Page 6: My Efforts to Define DevOps

Operations - IT

Infrastructure

• OS Installations, Patches, Hardening• Application Deployment • Application Patches, Upgrades• Monitoring

• Application• OS (for default attributes e.g. Disk)

• Capacity Planning

Answerable• Business Owners• Application Users• Developers• Sales, QE, UX ….

ALMOST EVERYONE

Page 7: My Efforts to Define DevOps

Developers and OthersDevelopment Infrastructure • Develop Software, Design Software

• No, do not have to worry about production• Checkin/Checkout Code from Repository

• Repositories are managed by others• Build Application – but has special skilled people

Answerable• Business Owners• Application Users• Developers• Sales, QE, UX ….

EVERYONE – DEFINITELY NOT

Page 8: My Efforts to Define DevOps

Approximate Picture of Software

Idea/Business Requirement

Brainstorm, POC, Demo

Architect the components

Development Repository

Build and

Release

Testing

Infrastructure

ProductionInfrastructure

Stamp Machines

Keep Running

Backups, DR

Deployment

ConfigurationSoftware Tool, Artifacts, LibrariesData (user, application, infrastructure)Log – what happened and when? Trends

Page 9: My Efforts to Define DevOps

Approximate Picture of Software

Development Repository

Build and

Release

Testing

Infrastructure

ProductionInfrastructure

ConfigurationSoftware Tool, Artifacts, LibrariesData (user, application, infrastructure)Log – what happened and when? Trends

DevOps Help Manage Software by

• Collaboration Framework

• Automation

Page 10: My Efforts to Define DevOps

Configuration Management Chef, Puppet, Custom Configuration Management using Trac, Subversion

Log Management Splunk and Logstash Google Search Appliance, - Search Appliances

Application Performance Management NewRelic

Monitoring Tools NagiosXI Developed Many Plugins to meet Application Monitoring Requirements Tools around "htmlunit" Java library (simulation of browser user) Auto-Restart Services (using tools like Fabirc)

Deployement Tools "Ansible” (Python and Any other Scripting Programming) "Fabric” (Python Programming) "RunDeck” (previous version was ControlTier – that’s Java, Python or other scripting

Langs) Job Execution

Restart Complete Data Center Applications (Fabric) Support Engineers can pull log files, execute ad-hoc tasks (ControlTier with Liferay Portal)

Infrastructure Vagrant, Docker, vSphare, VPN tunneling (to support remote)

A Few Tools – My Own Experience

Page 11: My Efforts to Define DevOps

THANK YOU