making devops really worksucesurs.org.br/sites/default/files/2020-03/devopsoug.pdf · oracle cloud...

44
Making DevOps Really Work Gustavo Michel Torres Principal Technologist Platform Technology Solutions Setembro 2017 1

Upload: others

Post on 03-Jul-2020

57 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Making DevOps Really Work

Gustavo Michel Torres

Principal Technologist

Platform Technology Solutions

Setembro 2017

1

Page 2: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Safe Harbor Statement

The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.

2

Page 3: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Sound Familiar? Who is at fault? Who to blame?

It's not my machines, it's your code!

It's not my code, it's your machines!

3

Page 4: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

DevOps Principles Cultural movement enabled by technology

Paid to add new features

Development Operations

Devops

Paid to keep system stable, fast and available

New goal: Add new features and keep the system stable, fast and available

4

Page 5: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

FASTER RELEASES

•Quickly align with business requirements

•Increase accuracy of releases - avoid downtime

SAVE MONEY

•Automate manual processes to reduce OPEX

•Prevent human error and reducing downtime

FOCUS ON BUSINESS

Allow high value employees to focus on higher value activities

Core Business Values of DevOps

5

Page 6: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly Restricted 6 Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Oracle Cloud Platform: DevOps Ready

Oracle Platform for Cloud Application Development

BACK-END SERVICES

Mobile Application Container

Java Docker Containers

EE

JET Low Code Composers

3rd Party SDKs

A FRONT-END TOOLING

Compute Network Storage

Robust IaaS

INTEGRATION SERVICES

DATA SERVICES Database NoSQL MySQL

Integration SOA

Big Data

B

COMMON SERVICES Identity

Management

Continuous Delivery

API Management

Analytics

6

Page 7: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Keys to Cloud DevOps Success

Runtime/Deployment CLOUD SERVICES

Management CLOUD SERVICES

Development/Build CLOUD SERVICES

7

Page 8: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Plan

Code

Build

Test

Release

Deploy

Operate

Monitor

DevOps

• DevOps is a culture, movement or practice that emphasizes the collaboration and communication of both software developers and other information-technology (IT) professionals while automating the process of software delivery and infrastructure changes. It aims at establishing a culture and environment where building, testing, and releasing software, can happen rapidly, frequently, and more reliably.

– Wikipedia

8

Page 9: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Cloud Native Microservice Demonstration Scenario

9

Lynn (Project Manager)

Jean (DBA)

Joe (UI Developer)

Larry (Service Developer)

Page 10: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Plan

Code

Build

Test

Release

Deploy

Operate

Monitor

Developer Cloud Service

• Track Issues

• Agile Project Management

• Wikis

10

Page 11: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Issue Tracking

11

Page 12: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Agile and Sprint Planning

12

Page 13: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Agile Reports for Progress Tracking

13

Page 14: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Plan

Code

Build

Test

Release

Deploy

Operate

Monitor

Developer Cloud Service

• Git Repositories

• Coding in the Cloud

• Code Review

• IDE Integration

14

Page 15: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Manage Code Repositories

15

Page 16: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Track Code Changes

16

Page 17: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Conduct Peer Code Review and Merge Requests

17

Page 18: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Code in the Browser*

*Coming soon

18

Page 19: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Plan

Code

Build

Test

Release

Deploy

Operate

Monitor

Developer Cloud Service

• Support Popular Build Frameworks

• Orchestration and Dependencies

• Build Reports and Notifications

19

Page 20: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Build Dashboard

20

Page 21: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Multiple Build Steps Orchestrations

21

Page 22: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Plan

Code

Build

Test

Release

Deploy

Operate

Monitor

Developer Cloud Service

• JUnit

• Selenium

• FindBugs

• QA Deployments

22

Page 23: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Test Results Dashboard

23

Page 24: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Plan

Code

Build

Test

Release

Deploy

Operate

Monitor

Developer Cloud Service

• Create packages

• Direct deployment

24

Page 25: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Deployment Configuration

25

Page 26: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Plan

Code

Build

Test

Release

Deploy

Operate

Monitor

Oracle Cloud Services

• Easily provision deployment platforms

• Java Cloud Service

– Java EE in the Cloud

• Application Container Cloud

– Java SE, NodeJS, PHP, Ruby*, Python*

• Mobile Cloud Service

– Mobile Services

• Container Cloud Service

– Docker Containers

26

Page 27: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Polyglot Platform for Running any Workload

Developer CS

Mobile CS

Java CS (Java EE)

Application Container CS (Java SE & Node) Container CS

(Docker Containers)

27

Page 28: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 28

Easy Configuration – Fast Provisioning

Page 29: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Cloud Native Completely Automated with DevOps Plugging into Existing DevOps Pipelines Seamlessly

29

Service API Catalog

Oracle Cloud

REST APIS

• Docker, VMs, Storage, Network

REST APIs for IaaS

• AppDev, Integration, Mobile, BI, DB…

REST API for PaaS

• ERP, Service, Sales, Support ...

REST APIs for SaaS

Service APIs

DevOps Pipelines

Automation Tools

Command Line tools or curl

>psm setup >psm list services >psm push app …

>curl -i -X GET -H

"Authorization:joe@exam

ple.com:joePassword" \ -

H ...

Oracle DevCS

Page 30: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal Use Only

Cloud Stack Manager: Manage Many PaaS Services as One

• Manage group of cloud services as a single atomic unit called a Cloud Stack

• Template driven approach to maximize reuse and sharing

• Eliminate manual tasks to create a cloud environment

• Automatically manages dependencies

• True Infrastructure-as-Code for your DevOps needs

Page 31: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Plan

Code

Build

Test

Release

Deploy

Operate

Monitor

Oracle Cloud Services

• Automatic Scaling

• Easy Patching/Upgrade

• Live Reporting

31

Page 32: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 32

Scale Out & Scale Up

Page 33: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Automatic Scaling Settings

33

Page 34: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

One Click Upgrades

34

Page 35: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Plan

Code

Build

Test

Release

Deploy

Operate

Monitor

Oracle Management Cloud

35

01100100 01100001 01110100 01100001 0110010001100001 01110100 0100 0110000101100100 01100001 01110100 01100001 0110010001100001 01011 01110100110000101100100 01100001 01110100 110000101100100 01100001 01110100 011000010110010001100001 01110100 110000101100100 0100111 01100001 01110100110000101100100 01100001 01110100 01100001 011010 0110010001100001 0111010001100001 0110010001100001 01110100 01001 01100001 0110010001100001 0111010001100001 0110010001100001 01001 01110100 01100001 0110010001100001 0111010001100001 0100101001 001 0110010001100001 01110100 01100001 011001000110000101110100 010011 01100001 0110010001100001 01110100 01100001 01100100 0110000101001 01110100 01100001 0110010001100001 01110100 01100001 01100100 0100 0110000101110100 01100001 0110010001100001 01110100 01000100 0100 11000010110010001100001 01110100 110000101100100 01100001 01110100 01100001 011001000110000101110100 110000101100100 01100001 010001 01110100 110000101100100 0110000101110100 01100001 01000100 010011 0110010001100001 01110100 011000010110010001100001 01110100 01000 01110100 110000101100100 01100001 0111010001100001 01000100 010011 0110010001100001 01110100 01100001 011001000110000101110100 010011

END USER EXPERIENCE

APPLICATION

MIDDLE TIER

DATA TIER

VIRTUALIZATION TIER

VM CONTAINER

INFRASTRUCTURE TIER

VM CONTAINER

Real UsersSynthetic Users

Unified Platform

App metricsTransactions

Server metricsDiagnosticsLogs

Host metricsVM metricsContainer metrics

CMDBTicketsAlerts

INTELLIGENT, UNIFIED PLATFORM…

POWERED BY MACHINE LEARNING

COMPLETE, INTEGRATED SUITE

HETEROGENEOUS AND OPEN

• Intelligent management for heterogeneous environments

• Unified cross-stack operational data

Page 36: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

01100100 01100001 01110100 01100001 0110010001100001 01110100 0100 01100001 01100100 01100001 01110100 01100001 0110010001100001 01011 01110100 110000101100100 01100001 01110100 110000101100100 01100001 01110100 01100001 0110010001100001 01110100 110000101100100 0100111 01100001 01110100 110000101100100 01100001 01110100 01100001 011010 0110010001100001 01110100 01100001 0110010001100001 01110100 01001 01100001 0110010001100001 01110100 01100001 0110010001100001 01001 01110100 01100001 0110010001100001 01110100 01100001 0100101001 001 0110010001100001 01110100 01100001 0110010001100001 01110100 010011 01100001 0110010001100001 01110100 01100001 01100100 01100001 01001 01110100 01100001 0110010001100001 01110100 01100001 01100100 0100 01100001 01110100 01100001 0110010001100001 01110100 01000100 0100 110000101100100 01100001 01110100 110000101100100 01100001 01110100 01100001 0110010001100001 01110100 110000101100100 01100001 010001 01110100 110000101100100 01100001 01110100 01100001 01000100 010011 0110010001100001 01110100 01100001 0110010001100001 01110100 01000 01110100 110000101100100 01100001 01110100 01100001 01000100 010011 0110010001100001 01110100 01100001 0110010001100001 01110100 010011

36

Powered by Machine Learning

END USER EXPERIENCE

APPLICATION

MIDDLE TIER

DATA TIER

VIRTUALIZATION TIER

VM CONTAINER

INFRASTRUCTURE TIER

VM CONTAINER

Real Users Synthetic Users

Unified Platform

App metrics Transactions

Server metrics Diagnostics Logs

Host metrics VM metrics Container metrics

CMDB Tickets Alerts

ANOMALY DETECTION

CLUSTERING

PREDICTION

CORRELATION

Page 37: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Normal application behavior and expected component and transaction performance are automatically learned by Oracle Management Cloud, ensuring intelligent alerting.

37

Application topologies and cross-tier dependencies are automatically learned and kept up to date by Oracle Management Cloud, ensuring rapid troubleshooting.

Rapid Troubleshooting Across The Stack

Page 38: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Developer Cloud Real World Example

Page 39: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

A Real World Example – The DevCS Development Team

43

~170 Project Members

1000s LOCs

2 Week Sprints

Oracle Developer Cloud Service

Page 40: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Merge Process – Merge Requests

• ~200 commits a week

45

Master

New feature/ bug fixes

Complete code Merge request

to target

Code review

Iterate, fix & review

Code approved Automate build

Page 41: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Build Process

• Check in builds

– ~50 builds a day

• + 2 times a day

– All git repositories

– Deploy to dev VM

– Automated tests

46

• Master branched every 2 weeks

– All git repositories

– Deploy to stage VM

– Automated tests

– Manual QA

– Candidate for production deploy

– ~Candidate for customers

Development Production

Page 42: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

Metrics: Developer Cloud Service Team

• One Developer Cloud Service Project

• 40 git repositories, 1 binary repository

• 170 project members, 50 active contributors

• 200 commits a week

• 50 builds a day

• 21365 issues

• 250 wiki pages

47

Page 43: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

For More Information

More About DevOps https://cloud.oracle.com/en_US/application-development

Oracle Application Development 30-Day Free Trials https://cloud.oracle.com/en_US/tryit

Join the Conversation

Page 44: Making DevOps Really Worksucesurs.org.br/sites/default/files/2020-03/DevOpsOUG.pdf · Oracle Cloud Platform: DevOps Ready Oracle Platform for Cloud Application Development BACK-END

Innovation to grow. Insight to control.