You are on page 1of 32

CENTRALLY DEPLOY AND CONFIGURE

PEOPLESOFT CLOUD ARCHITECTURE WITH


DEPLOYMENT PACKAGES AND PUPPET
SESSION 31449

JUNE 20, 2017 - LYRA B


PRESENTERS

Wayde Nie Paul Laurent


Manager IT - Servers, Storage Oracle DBA/PSAdmin
and Architecture
McMaster University McMaster University
niew@mcmaster.ca laurenp@mcmaster.ca
MCMASTER UNIVERSITY,
McMaster University,
founded in 1887, is a mid
size Canadian University
HAMILTON, CANADA 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/

You might also like