#160 – Preloading Cache


This week on the podcast, Kyle shares his thoughts on apply CPU vs. PSU java patches and Dan explains the different options for preloading application server cache.

Show Notes

#158 – Federated User Preferences


This week on the podcast, Dan shares some new ideas to improve the DDDAudit and SYSAudit reports, and Kyle discusses how federated User Preferences work in a clustered environment.

Show Notes

#154 – Portal Registry Security


This week on the podcast, Dan shares some tips on monitoring Tuxedo domains and Kyle discusses how to secure portal registries when accesses externally.

Show Notes

  • Data Mover Follow-up @ 3:00
  • PeopleTools POC Business Case Document @ 5:45
  • Tuxedo Service Monitoring @ 7:30
    • PS_HOME/utilities/psautolog.sh
  • Limiting Access to Portal Registries @ 17:45
    • GreyHeller/Appsian
    • Role Flipping
    • Separate Registry and Obscurity
    • LB/RPS/WL Filter Security
    • VPN Access
    • Conditional Navigation

#153 – Monitoring PeopleSoft


#146 – Bad Migration Recommendations


This week on the podcast Dan shares a fun tip to view hidden characters, Kyle talks about Vim Tabs and Sessions. Then Kyle and Dan talk about change package behavior, some bad migration advice on Oracle Support and what you should do instead.

Show Notes

#142 – PIA Installations


This week on the podcast, Kyle discusses the changes to PIA installations in 8.56 and how to leverage Python and WLST with it. Dan shares how he improved nVision report performance, and the value of starting to automate small tasks.

Show Notes

#139 – Redeploy


This week on the podcast, Dan and Kyle discuss the new PeopleSoft Support timeframe, controlling how much data the Search Framework indexes, and how to use Facter to redeploy software via the DPK.

Show Notes

  • 2030 Commitment @ 1:00
  • Auto Select Follow-up @ 7:15
    • http://www.peoplesoftwiki.com/lookup-exclusion
    • http://blog.psftdba.com/2006/05/lookup-exclusion-table.html?m=1
  • PeopleSoft Test Framework and TLS @ 8:45
  • Facter and Redeploy @ 12:00
  • Search Framework – Last X days @ 19:00
  • Puppet variable warnings @ 27:00

#138 – Last, not First


This week on the podcast, Dan discusses how PTSF_GENFEED uses connected queries to build search data and discusses some useful behavior with .cfg and .properties files, and Kyle spends some time with Verity on PeopleTools 8.55.

Show Notes

Improving Windows Services from the DPK

A common theme we write about on the blog is how to make the DPK work with multiple environments on the same machine. It’s common to run a DEV and TST on the same server. The DPK can build those environments, but there are a few changes to make the setup run well. On Windows, the services the DPK creates makes an assumption that breaks when we run multiple environments.

When starting a domain via Windows services, the service assumes that the environment variables are set for that environment. If you create your DEV environment via the DPK, that’s a good assumption. But, if you create a TST environment next, the environment variables are set to TST. When you attempt to start the DEV domain via Windows services, the domain start will fail.

To resolve this, we can improve the Ruby script that starts our domains. Under the ps_cfg_home\appserv\DOMAIN folder, there are Ruby scripts that are called by the Windows service. For the app server, it’s appserver_win_service.rb. These scripts will look for the PS_CFG_HOME environment variable and start the domains it finds under that home. We can add a line in the file to point to the correct PS_CFG_HOME location like this:

ENV["PS_CFG_HOME"]=c:\psft\cfg\DEV

While we can modify the file directly, the DPK way of handling this is to update the template in the DPK. Then, whenever we rebuild our domains the code change is automatically included.

The Ruby scripts to start/stop domains are templates in the DPK. The templates are stored under peoplesoft_base\dpk\puppet\modules\pt_config\files\pt_appserver\appserver_win_service.erb (replace pt_appserver with pt_prcs or pt_pia for the batch and PIA services.)

To make the environment variables we add dynamic, we can reference variables that exist in the Ruby environment that calls the ERB template. In the program appserver_domain_boot.rb, the variables ps_home and ps_cfg_home are set. We will use those variables to build our environment variables.

ENV["PS_HOME"] = "<%= ps_home %>"
ENV["PS_CFG_HOME"] = "<%= ps_cfg_home %>"
system("<%= ps_home %>/appserv/psadmin -c start -d <%= domain_name %>")

The <%= %> tags will output the value of that command or variable. So in our case, we are outputting the string value of ps_cfg_home.

The result of this file will look like this:

ENV["PS_HOME"] = "c:\\psft\\pt\ps_home8.56.08"
ENV["PS_CFG_HOME"] = "c:\\psft\\cfg\\DEV"
system("c:\\psft\\pt\ps_home8.56.08\\appserv\\psadmin -c start -d DEV")

When we run Puppet the next time, our Windows service will have it’s environment variables set before starting or stopping a domain.

#132 – Works Like Magic


This week on the podcast, Dan shares a Vagrant plugin to help with Root Certificates and a change to WebLogic certifications with 8.56. Then Kyle and Dan discuss running VERSION and how to deal with bad cache.

Show Notes