View
14
Download
0
Category
Preview:
Citation preview
CENTRALLY DEPLOY AND CONFIGURE PEOPLESOFT CLOUD ARCHITECTURE WITH
DEPLOYMENT PACKAGES AND PUPPET SESSION 31449
JUNE 20, 2017 - LYRA B
PRESENTERS
Wayde Nie
Manager IT - Servers, Storage and Architecture
Paul Laurent
Oracle DBA/PSAdmin
McMaster University
niew@mcmaster.ca
McMaster University
laurenp@mcmaster.ca
MCMASTER UNIVERSITY, HAMILTON, CANADA
McMaster University,
founded in 1887, is a mid
size Canadian University
with approximately 28000
full time students.
PRESENTATION OVERVIEW 1. McMasters PeopleSoft Experience From Project to Production Support • McMaster’s PeopleSoft footprint.
• The current state of McMaster’s PeopleSoft infrastructure configuration.
2. Puppet for Orchestration • Why Puppet?
• Puppet architectural overview.
• Classification is king.
• Code vs config.
3. McMaster’s Puppet Experience • PeopleTools 8.55 upgrades.
• Challenges in using Puppet for deployments.
• Next steps on the Puppet journey.
4. Puppet Learning Resources
MCMASTERS PEOPLESOFT EXPERIENCE FROM PROJECT TO PRODUCTION SUPPORT
MCMASTER’S PEOPLESOFT FOOTPRINT McMaster began its PeopleSoft journey in 2013 and re-platformed all its core administrative systems.
2013
• PeopleSoft Interaction Hub 9.1 (PT 8.53.06)
• PeopleSoft Financials 9.2 (PT 8.53.06)
• PeopleSoft EPM 9.0 (PT 8.53.06)
2014
• PeopleSoft HR 9.2 (PT 8.53.06)
• PeopleSoft Campus Solutions 9.0 (PT 8.53.06) – Phase I and Phase II
• PeopleSoft Bolt On Environment (PT 8.53.06)
2015
• PeopleSoft Campus Solutions 9.0 (PT 8.53.06) – Phase III
PEOPLESOFT CONFIGURATION – CURRENT STATE The Problem:
• During the project approximately eleven contract and full time PSAdmins managed these environments.
• Aggressive timelines - Two and half year window to implement six PeopleSoft streams.
• Enormous workload meant that documentation and standardization slipped to meet deadlines
• Configuration knowledge held by stream specific DBAs/PSAdmins and, in some cases, by contract resources who took that knowledge with them as they cycled off the project
The Result
• Configuration drift across PeopleSoft streams and in some cases in down rev environments within streams.
PUPPET FOR ORCHESTRATION
PUPPET FOR PEOPLESOFT, WHY?
• University had an existing investment in Puppet for orchestration.
• Departmental experience using Puppet for the deployment of configuration objects (NTP, common users by support area).
• Oracle’s utilizes a “local” implementation of Puppet in DPK’s for deployment of standalone stacks.
PUPPET ▪ The good thing about puppet…
PUPPET ▪ The bad thing about puppet…
VCS REPO - GITLAB • Configuration as code
• “production” branch
• “staging” branch
• “feature” branches
CHANGE WORKFLOW ▪ Adapted “Gitflow”(https://datasift.github.io/gitflow/IntroducingGitFlow.html )
▪Branches:
• Production
• Staging
• <features>
KEY PUPPET IDEAS
• Infrastructure as Code
• Roles and profiles
• One role ; multiple profiles “Lingaroo”
• Idempotency
• Declarative rather than imperative
• Dependency awareness
PUPPET CONTROL REPO
PUPPET CONTROL REPO - PUPPETFILE ▪ forge "http://forge.puppetlabs.com"
▪ # Modules from the Puppet Forge
▪ mod "puppetlabs/stdlib", "4.12.0"
▪ mod "puppetlabs/concat", "2.2.0"
▪ mod "fiddyspence/sysctl", "1.1.0"
▪ mod "hajee/easy_type", "0.15.5"
▪ mod 'mcm-pt_psib',
▪ :git => 'git@pinvcs01.uts.mcmaster.ca:cnf/mcm-pt_psib.git',
▪ :ref => 'master'
ORACLE DPK AND PUPPET
DPK MODULES
Dependencies:
•Puppetlabs/stdlib
•Puppetlabs/concat
• Fiddyspence/sysctl
•Hajee/easy_type
DPK MODULES
Oracle:
•pt_config
•pt_deploy
•pt_profile
•pt_role
•pt_setup
ENC NODE CLASSIFICATION
▪ MCM_Base
▪ MCM_MOSAIC – fact mcm_ismosaic=[y|n]
▪ MCM_Mosaic_<ENVTYPE>
UPDATE PRODUCTION FROM FEATURE BRANCH (NEW DPK VERSION)
MCMASTER’S PUPPET EXPERIENCE
GET CURRENT, PT 8.55 UPGRADE McMaster is in the midst of an effort to upgrade its PeopleSoft application and PeopleTools releases. As part of that effort, Puppet has been used to deploy the following:
• Interaction Hub production and pre production environments (total of fourteen servers with six different configuration patterns).
• PeopleSoft Finance production and pre production environments (total of eight servers with three different configuration patterns).
GET CURRENT, PT 8.55 UPGRADE Pre Puppet
• Prior to Puppet, deployment was scripted, but config moved back in by hand and compared against a stream specific golden config. Mean time to completion measured in hours.
• No single source of documentation that described configuration items within a given PeopleSoft stream.
• Process/workflow for configuration changes was spotty or non-existent.
• Limited accountability within the organization for configuration change.
GET CURRENT, PT 8.55 UPGRADE Post Puppet Implementation
• Puppet deployments done concurrently, but because config is vetted and standardized, little or no post deployment compares are required. Mean time to completion measured in minutes.
• Configuration is stored internally and is self documenting. Changes and exceptions captured in commit messages.
• Work flow can be built into process. Idempotency can enforce standard config if processes are not followed.
ORGANIZATIONAL CHALLENGES TO USING PUPPET Biggest challenge to uptake in our organization was cultural.
• Mistrust or misgivings with the tool.
• Concern relating to the capture and vetting of stream specific configuration information.
• Concern of losing control or oversight over an environment.
• Learning curve.
The Solution
• Engagement!
NEXT STEPS
NEXT STEPS
• Puppet agent run without restart or redeploy
• No more “safety valve”
• https://community.oracle.com/ideas/17205
• Better hiera hierarchy
• Use hiera_hash
• ACM for Application Configuration Management
• PUM21 update (in progress) ; onward to PT8.56
• Containers!
PUPPET LEARNING RESOURCES
RESOURCES
• PeopleSoft / PUM / Puppet : http://psadmin.io
• Puppet:
Learning VM : https://puppet.com/download-learning-vm
Discussion : http://garylarizza.com/
• Git: https://www.atlassian.com/git/tutorials
https://try.github.io/
Recommended