Migrating deployment processes and Continuous Integration at SAP SE to a future-proof design using SLES12, Chef, GitHub, OBS and KIWI

Similar documents
SUSE Manager. A Comprehensive Linux Server Management the Linux Way. Name. Title

SUSE Cloud 2.0. Pete Chadwick. Douglas Jarvis. Senior Product Manager Product Marketing Manager

Automation and DevOps Best Practices. Rob Hirschfeld, Dell Matt Ray, Opscode

DevOps and SUSE From check-in to deployment

Of Pets and Cattle and Hearts

Understand IBM Cloud Manager V4.2 for IBM z Systems

Iron Chef: Bare Metal OpenStack

DevOps Course Content

SUSE Cloud 5 Private Cloud based on OpenStack

GitLab as an Alternative Development Platform for Github.com

How To Install Eucalyptus (Cont'D) On A Cloud) On An Ubuntu Or Linux (Contd) Or A Windows 7 (Cont') (Cont'T) (Bsd) (Dll) (Amd)

Software Defined Everything

SUSE Cloud Installation: Best Practices Using an Existing SMT and KVM Environment

System Management with RHN Satellite

Using SUSE Cloud to Orchestrate Multiple Hypervisors and Storage at ADP

Open Source Datacenter Conference 2011 System Management with RHN Satellite. Dirk Herrmann, Solution Architect, Red Hat

Continuous Integration using Docker & Jenkins

Service Orchestration

A Complete Open Cloud Storage, Virt, IaaS, PaaS. Dave Neary Open Source and Standards, Red Hat

Continuous Delivery for Alfresco Solutions. Satisfied customers and happy developers with!! Continuous Delivery!

Getting Started with DevOps Automation

DevOps. Building a Continuous Delivery Pipeline

Red Hat CloudForms for Cloud Management: Key Features & Roadmap

Agile Software Factory: Bringing the reliability of a manufacturing line to software development

Creating a dynamic software deployment solution using free/libre software

Build & Manage Clouds with Red Hat Cloud Infrastructure Products. TONI WILLBERG Solution Architect Red Hat toni@redhat.com

Google

DevOps. Josh Preston Solutions Architect Stardate

Private Cloud Management

Virtualization and Cloud: Orchestration, Automation, and Security Gaps

The Virtualization Practice

Ubuntu OpenStack on VMware vsphere: A reference architecture for deploying OpenStack while limiting changes to existing infrastructure

Develop a process for applying updates to systems, including verifying properties of the update. Create File Systems

Open Source Virtualization with ovirt. DI (FH) René Koch Systems Engineer Siedl Networks GmbH Grazer Linuxtage,

KVM, OpenStack, and the Open Cloud

Automated deployment of virtualization-based research models of distributed computer systems

Timofey Turenko. Kirill Krinkin St-Petersburg Electrotechnical University

White Paper Server. SUSE Linux Enterprise Server 12 Modules

CLOUDFORMS Open Hybrid Cloud

IOS110. Virtualization 5/27/2014 1

SUSE Virtualization Technologies Roadmap

CHEF IN THE CLOUD AND ON THE GROUND

TUT5605: Deploying an elastic Hadoop cluster Alejandro Bonilla

How an Open Source Cloud Will Help Keep Your Cloud Strategy Options Open

Application Release Automation (ARA) Vs. Continuous Delivery

Azure Day Application Development

Designing, Building and Deploying Hybrid and Private Clouds

7 Ways OpenStack Enables Automation & Agility for KVM Environments

Regional SEE-GRID-SCI Training for Site Administrators Institute of Physics Belgrade March 5-6, 2009

Building a Continuous Integration Pipeline with Docker

ACCELERATE DEVOPS USING OPENSHIFT PAAS

ILLUMIO ADAPTIVE SECURITY PLATFORM TM

White Paper: Localhost is Killing Software Delivery

Virtualization Management the ovirt way

Intel Service Assurance Administrator. Product Overview

Why Cisco for Cloud? IT Service Delivery, Orchestration and Automation

SUSE OpenStack Cloud 4 Private Cloud Platform based on OpenStack. Gábor Nyers Sales gnyers@suse.com

Real World Cloud Infrastructure with Red Hat Enterprise Virtualization and Red Hat Network Satellite

KVM, OpenStack, and the Open Cloud

How To Make A Cloud Work For You

Open Source Toolchains for Cloud and OVF Management

Integration and Automation with Lenovo XClarity Administrator

Linux/Open Source and Cloud computing Wim Coekaerts Senior Vice President, Linux and Virtualization Engineering

HAWAII TECH TALK SDN. Paul Deakin Field Systems Engineer

Servervirualisierung mit Citrix XenServer

Running SAP HANA One on SoftLayer Bare Metal with SUSE Linux Enterprise Server CAS19256

Ansible in Depth WHITEPAPER. ansible.com

Boas Betzler. Planet. Globally Distributed IaaS Platform Examples AWS and SoftLayer. November 9, IBM Corporation

Swisscom Cloud. Building a secure cloud. SIGS, Christof Jungo

Advanced Systems Management with Machinery

Implementing Microsoft Azure Infrastructure Solutions 20533B; 5 Days, Instructor-led

SUSE Cloud Installation: Best Practices Using a SMT, Xen and Ceph Storage Environment

YOUR STRATEGIC VIRTUALIZATION ALTERNATIVE. Greg Lissy Director, Red Hat Virtualization Business. James Rankin Senior Solutions Architect

Sistemi Operativi e Reti. Cloud Computing

ovirt self-hosted engine seamless deployment

Course 20533B: Implementing Microsoft Azure Infrastructure Solutions

Déployer son propre cloud avec OpenStack. GULL François Deppierraz

An Oracle White Paper June Oracle Linux Management with Oracle Enterprise Manager 12c

Bridge Development and Operations for faster delivery of applications

Linux A first-class citizen in Windows Azure. Bruno Terkaly bterkaly@microsoft.com Principal Software Engineer Mobile/Cloud/Startup/Enterprise

Ezilla - WebOS Toward the Private Cloud & Possibility of Virtual Classroom

Getting Started Using Project Photon on VMware Fusion/Workstation

EMA Radar for Private Cloud Platforms: Q1 2013

IBM Cloud Manager with OpenStack 4.1

Platform as a Service and Container Clouds

Comparing Free Virtualization Products

Jenkins and Chef Infrastructure CI and Application Deployment

A central continuous integration platform

Your Journey to the Cloud with Red Hat

Transcription:

Migrating deployment processes and Continuous Integration at SAP SE to a future-proof design using SLES12, Chef, GitHub, OBS and KIWI Eike Waldt Linux Consultant & Trainer B1 Systems GmbH waldt@b1-systems.de Florian Winkler Linux Consultant & Trainer B1 Systems GmbH winkler@b1-systems.de

Introduction 2

Introducing B1 Systems founded in 2004 operating both nationally & internationally ~ 100 employees vendor-independent (software & hardware) SUSE consulting & training partner focus: consulting support training development operations solutions 3

Areas of expertise Monitoring NAGIOS UBUNTU DEBIAN RHEL Linux Operating Systems ICINGA SLES Cloud Computing SUSE CLOUD MIRANTIS OPENSTACK RH OSP SALT PUPPET ANSIBLE Configuration Management Virtualization XEN KVM RH SATELLITE SPACEWALK SUSE MANAGER Systems Management 4

Who we are Eike Waldt Linux Consultant & Trainer B1 employee since 05/2015 Florian Winkler Linux Consultant & Trainer B1 employee since 04/2014 5

Close collaboration of... SaaS Cloud HANA Enterprise Cloud SAP Managed Service SaaS Cloud Managed Services 6

Agenda Motivation and goals Software used Landscapes and processes GMP - Global Management Portal Operating system images Deployment Chef Configuration management Version control Workflow GMP - Integration of new tools Chef design @ SAP s clouds Conclusion Outlook 7

Motivation and goals 8

Motivation and goals SLES12 SP1 at the doorstep all the changes that come with it historically grown deployment process reinvent this completely state of the art technology no real configuration management so far we wanted a fancy DevOps approach xd regaining a common base between several cloud landscapes 9

Software used 10

Software used SUSE Linux Enterprise Server 12 Open Build Service kiwi(-ng) jenkins GitHub Enterprise chef chefdk Berkshelf test-kitchen docker 11

Landscape overview 12

Landscape overview HEC landscapes Customer Admin GMP VM Pools SaaS landscapes Resource Pools Virtual Machines SaaS HEC 13 19 landscapes 138 Dcs DCs 13.000 32.000 VMs 3.700 800 hypervisors 1.700 1.100 BareMetal Baremetal Bare Metal Hardware Pools Hypervisor Xen KVM VMware 13

GMP - Global Management Portal 14

Global Management Portal (GMP) SAP internal development orchestration platform for... network network ranges DHCP DNS hypervisor administration and deployment virtual machine administration and deployment operating system images monitoring LDAP administration storage administration remote execution tool auditing customer frontend inventory database 15

Operating system images 16

OS images - ye olde way dump/restore a Goldmaster VM update VM via zypper up make changes directly in VM different VMs for different image types hypervisor virtual machines Pitfalls waste of resources dumping a running system is unclean no good version control/changelog no reproducible builds you do not really know what you are deploying 17

OS images - the fancy way build images with kiwi in OBS define content in descriptive language in file form kiwi files and xml in git minimalistic image approach Benefits integration in already existing OBS clean build contents of the images are welldefined reproducible builds release management ease of customization great changelog in git faster deployment up-to-date packages 18

Deployment 19

Deployment - ye olde way 1) (PXE boot) 2) Restore dumped image 3) (Re)boot 4) Fetch/execute firstboot script a) perl scripts b) config file templates c) daemons to enable/start/disable/stop d) platform, DC specific parameters 5) Reboot 6) Machine is ready Pitfalls data stored in files unmaintainable no good version control/changelog no reproducible builds 20

Deployment - the fancy way 1) (PXE boot) 2) Restore kiwi image 3) (Re)boot 4) cloud-init a) network settings b) chef-client settings 5) Execute chef-client a) config file templates b) daemons to enable/start/disable/stop c) platform, DC specific parameters 6) Reboot 7) Machine is ready Benefits clean deployment everything is kept in git great changelog in git way more maintainable 21

Chef - ConfigManagement 22

Chef design basics client/server architecture stored data attributes defined in roles execution of code cookbooks/recipes design of dependencies roles for landscapes/dcs (attributes) nested roles for pools/customers/applications run_list defines all roles and recipes for a client group or a single client lifecycle and release management environments define cookbook versions 23

Version control 24

Version control - ye olde way and what doesn t come with it local SVN repo for Perl scripts only firstboot under control no version control for external sources Pitfalls no real AAA no QA workflow no approval workflow 25

Version control - the fancy way and what comes with it git(hub) for almost everything kiwi files cookbooks in their own separate repositories chef environments Benefits github is a well-known tool using SAP s internal githubenterprise real AAA Development /testing/ approvement/rollout workflows 26

Workflow 27

Workflow dev/test/deploy admin chef-server GMP chef-server development workstation github direct indirect jenkins test environment docker/xen hypervisor 28

GMP (Global Management Portal) Integration of new tools 29

Global Management Portal (GMP) SAP internal development orchestration platform for... network network ranges DHCP DNS hypervisor administration and deployment virtual machine administration and deployment operating system images monitoring LDAP administration storage administration remote execution tool auditing customer frontend inventory database 30

GMP integration automated chef-server install chef-server tasks manipulating node objects configuration database and mapping of entities images to pools chef-servers to pools attributes to landscapes/pools run_list to pools/nodes automated sync: GMP (git) chef-server landscape attributes (roles) environments, cookbooks and roles 31

Chef design @ SAP s clouds 32

Chef design @ SAP s clouds Admin GMP single attribute SaaS single attribute HEC attributes role Landscape "SaaS 01" attributes role Landscape "SaaS 02" Resource Pool: DC1-Customer 1 Resource Pool: DC2-Customer 2 attributes environment Hardware Pools bas_role run_list attributes environment VM Pools base_role run_list Customer 1 chef-server Customer 2 chef-server attributes Bare Metal role role run_list attributes Hypervisor role run_list attributes Hypervisor role run_list 33

Conclusion 34

Conclusion cleaned up deployment process working configuration management way better testing and integration workflow implementing CI and CD identical infrastructure code in both SAP clouds future-proof ready for new OS versions 35

Outlook 36

Outlook application deployment via Chef in-depth customization from customer side cookbooks coles own chef servers (unmanaged) backporting deployment to SLES 11 establishing configuration management for SLES11 37

Thank you 38

Thank you for making this possible! Tools team Sebastian Koehn Sven Schubert HEC XEN team Florian Kellmer Ralf Lang Christian Wolter MCD team Tino Kaufmann Alexander Lode SaaS Cloud team Daniel Schier Tobias Stolz Ronny Tiebel ticketweb Sebastian Krieger 39

Questions? 40

Related Talks... SUSE Manager 3 & SaltStack at Tyson Foods Friday, Nov 11, 10:15 AM - 11:15 AM The SUSE Manager Roadmap: A journey towards agile management of workloads in the enterprise Friday, Nov 11, 9:00 AM - 10:00 AM 41