db2 for z/os & devops, database-as-a- service comes to the ...€¦ · • the study is focused...
TRANSCRIPT
Db2 for z/OS & DevOps, Database-as-a-Service comes to the Enterprise Jørn Thyssen, Rocket Software
AgendaThe importance of DevOps
Positioning the Db2 DevOps Experience within the DevOps World
Zowe Overview
IBM Db2 DevOps Experience for z/OS Details
Demo
Pipeline Integration
The biggest taxi companyowns no cars.
The largest accommodation companyowns no real estate.
The biggest media companyowns no content.
The largest retailercarries no inventory.
Disrupt or be Disrupted
Disrupt or be Disrupted
• May need to be:- Connect to the innovation centers
- 2-speed IT is real- Speed to market is where Traditional IT and
DevOps clash- Get a seat at the innovation tables of their
companies- Ready to think differently
- Developers need more authority than they’ve had in the past
- Get ready to fail fast if needed• DevOps is all about gaining efficiencies for better
outcomes
Before you BUY DevOps, you have to DO DevOps
Culture
Process Technology
• Efficiency put into practice• Deal with the change volume, variety,
and velocity of digital transformation• More frequent releases• Retain / Enhance quality• Enabling Agile / Lean development• Fueling continuous integration &
delivery
• Requires collaboration and cooperation• Must be part of the enterprise mission• Soft skills cannot be overlooked
What is DevOps?
6
• An approach based on lean / agile principles• Business owners, Development, Operations, and
QA collaborate • Delivering software in a continuous manner• Enabling businesses to achieve market /
competitive advantages
• Statistical look; that DevOps practices pays off• Technology transformations drive business
outcomes & quality improvements• Driving efficiency, profits, and customer satisfaction• “Rolling Ops earlier into the Dev process”• Large batch releases have a “huge blast radius”
The State of DevOps - DORA
• The study is focused on code COMMIT to DEPLOY- Area of low variability, sustained optimization
• Upstream processes are considered more creative- More variability and difficult to optimize
ContinuousIntegration
ContinuousDelivery
ContinuousDeployment
Provisioning Design Iterate
IBM Db2 DevOps Experience for z/OS
Upstream
Where does the Db2 DevOps Experience for z/OS fit
Db2 for z/OS
• Allows Db2 for z/OS to participate in existing DevOps pipelines
• Db2 DDL as code- Application and Infrastructure have
been managed as code- Now Db2 fits this model
• On demand, self service provisioning and deployment of Db2 objects and data
• Enable the upstream and downstream portions of DevOps
• With controls to enable object handling, limits, and approvals for deployment
• UI and REST API support• Fits into customer’s existing DevOps tooling
Lines of Business (LOB) owners can respond quickly to customer needs and competition with faster delivery of new or changed Db2 applications
IT can establish and enforce the criteria for App Dev to create their own Db2 for z/OS test environments, and retains control of rules and standards that protect Db2 databases and data
App Dev avoids the wait time for IT to create Db2 for z/OS test environments, and can work in teams using more modern agile development methods
IBM Db2 DevOps Experience for z/OSBrings Db2 applications to market faster with lower costs and less risk
10
Move Db2 towards Continuous Integration / Delivery
11
• Large release cycles (months, quarters)• Slow delivery to customers/marketplace• Integration is expensive & disruptive• Problems can have a huge blast radius
• Shorter cycles baked into Dev process• Faster delivery to customers/marketplace• Measured / manageable integration• Contain problems to smaller scopes• Lower stress associated with release
delivery
Is the IBM Db2 DevOps Experience for z/OS right for you?
• Do you have a DevOps / BizOps team?
• Are Db2 for z/OS applications important to your innovation efforts?
• Have you implemented Agile / Lean development practices?
• Would you like to improve Developer self-service options?
• Are Devops pipeline products (or roll your own processes) in use today?
– UCD, Jenkins, Maven, Bamboo, Travis CI, Go, etc.
• To what degree do your DevOps process address databases today?
• Are provisioning / integration requests outpacing your team’s availability?
• Is your DevOps tooling optimized for use with Db2 for z/OS?
12
Database (DDL) as Code
▪ Database as code (versioned DDL):
– Logical groupings of Db2 objects (in support of Applications)
▪ Flexible definitions
▪ Unites with:
– Application version control
– Infrastructure as code
▪ Fuels provisioning request & change deployments
Db2 Catalog
DDL SCM
MasterBranch
UserBranches
State-based vs. Migration-based Approaches
14
State Based
▪ Source control system of record– Established from snapshot of DB
▪ DDL stored as version control text files
▪ Has a Compare engine– Indicate desired state– Engine optimizes change for target
Migration Based• Database system of record• Capture state at beginning of
project• Maintain series of sequenced
migration scripts• Use culmination of scripts to
achieve desired state
Different Approaches to Database (DDL) as Code
DDLSource of
recordTarget
Analysis & Compare
Upgradescript
DatabaseSource of
record
State 1 State 2 State 3 State 4 State n
IBM Db2 DevOps Experience for z/OS
15
• A platform for the definition, administration, and operation of DevOps services in support of Db2 for z/OS.
• Announced 10/8/2018 at the IBM Data Technical Summit• https://www.ibm.com/developerworks/community/blogs/897a7c98-57af-4523-9cfa-
07ebc3f996b4/entry/Announcing_IBM_Db2_DevOps_Experience_for_z_OS?lang=en
• Availability date of 11/23/2018• Accountment letter
• https://www-01.ibm.com/common/ssi/rep_ca/0/897/ENUS218-470/ENUS218-470.PDF
• Based on Zowe• https://zowe.org/home/• Runs as a plugin to the Virtual Desktop Infrastructure in Zowe
• Knowledge Center• https://www.ibm.com/support/knowledgecenter/en/SSGPWX_1.1.0/doe110_welcome.html
What is Zowe?
16
• Open source software licensed under the Eclipse Public License version 2.0• Extensible framework for connecting applications / tools to mainframe data and
applications• Delivered from the Open Mainframe Project
- Part of the Linux Foundation• Partnership with IBM, Rocket, and Broadcom/CA
Zowe Capabilities
• Virtual Desktop Environment on z/OS• Browser based, graphical• Runs on z/OS
• GUI-based applications• File Transfer Application• Code Editor• Workflow Application• Jupyter Notebook
• CLI (Brightside, Broadcom/CA)• Security / Accessibility / Internationalization• Leverages z/OS security
Db2 for
z/OSGit z/OS
SecurityServer
DevOps Server Zowe
DevOps App
z/OS
REST Client- CI/CD Tools / Pipelines- curl
Web browser
REST HTTPS
On-demand, Self-service, Developer Driven
▪ Drive Database needs in the Developers cadence by the Developer
▪ Provision an Instance as needed within the Sprint
▪ Fail fast, Deprovision the Instance and (perhaps) try again
▪ Deploy changes to the Instance as needed
▪ Can submit changes for consideration to include in the master branch– Pull Request
X
Provisioning
Modification
Pull Request / Merge
Deprovisioning
DEMO – the developer cycle
21
Management/Administrative Directives
▪ Environment definitions to control where Provisioning takes place
▪ Provisioning Instance Limits
▪ Administration of Application via Teams
▪ Storage Limits monitoring Teams, Applications, Users, and Environments
▪ Site Rules for naming, definitions, placement
▪ Data Stewart roles for approving database changes
Environments
Subsystems
Applications
Instances
Teams
Users
Site RulesLimits
Db2 DevOps Experience for z/OS – Full API Support
• A robust set of REST APIs to the DevOps Server
• All shown administration and operation activities could be performed via APIs
- As depicted for User administration• A Swagger json file is delivered with the
product for documentation• Current categories:
- Users (zss security API)- Teams- Subsystems- Applications- Instances- Discovery Plan- Administration (job management)- Storage Limits
Pipeline Support
▪ There are several, well known, open source & commercial pipeline products
▪ Orchestrates services for DevOps processes:– Provisioning– Deprovisioning– Automated testing– Deployment
▪ Depending on the product there will be different methods to invoke services:– Plug ins– Hooks / Triggers– APIs
ProvisionResource
A
ProvisionResource
B
ProvisionResource
C
ProvisionResource
D
AutomatedTest
A
AutomatedTest
B
?
https://developer.ibm.com/urbancode/plugin/ibm-db2-devops-experience-for-z-os/
1
2
3
4
REST call – Jenkins pipeline
Visual Studio Code plugin
51
Visual StudioCode plugin
Zowe CLI plugin
IBM Db2 DevOps Experience for z/OS
• Where Db2 for z/OS meets DevOps• Enabling self-service, on-demand test environments create, modify, destroy• Db2 Schema Database-as-a-Service• Database-as-code, versioned source code management of DDL• Site rules, Limits, & Environment control to manage this dynamic environment• User Interface and API support• Ready to be integrated into your DevOps pipeline via samples / REST
Additional information
▪ KnowledgeCenter:
– https://www.ibm.com/support/knowledgecenter/SSGPWX_1.1.0/doe110_welcome.html
▪ Hands-on demo environment
▪ Learn more: https://www.ibm.com/demos/collection/IBM-Db2-DevOps-Experience-for-
z%2FOS/
▪ Community for IBM Db2 Tools: http://ibm.biz/IBM_Db2Tools
▪ Email me or your local IBM sales team
53
62