The very first PeopleSoft DPK container-native image was released two weeks ago, and we have been heads-down testing, optimizing, and strategizing our own container deployments.
Using the following command to bring up a full PeopleSoft stack is fantastic!
podman compose start
But we noticed one significant problem:
The Application Server domain would try to launch before the database TNS Listener was ready to accept connections.
This caused the Application Server domain (APPDOM) in the midtier container to fail on startup because it couldn't connect to the database. Our temporary workaround was to simply wait a minute, then manually launch psadmin.
podman exec -it --user psadm2 midtier bash -lc psadmin
But wouldn't it be nice if the full composition could wait to start the midtier until the database was ready?
What's great about Podman Compose is that it has built-in dependency checking between containers and can wait for
one container to finish before loading dependent containers. To resolve our issue, therefore, we just had to change
our dependency-checking algorithm, also known as the healthcheck. The default healthcheck just checks whether a file exists. This is important on the initial load (podman compose up -d) because it causes the
midtier (app
server and web server) to wait for the database to finish loading. But this approach falls short for subsequent
launches with podman compose start. We resolved this issue by extending the healthcheck to also check
the status of
the listener:
healthcheck:
test: ["CMD-SHELL", "test -e /opt/oracle/oradata/.EP92U057.plugged && lsnrctl status | grep -qi ep92u057"]
interval: 30s
timeout: 5s
retries: 30
start_period: 5m
Have you downloaded the latest PeopleSoft Podman Container-native DPK? If so, let us know your thoughts and questions!
We are full steam ahead on a new course titled Containers for PeopleSoft that will release soon. Sign up now to get notified as soon as this course is available. Or, create a free account to stay updated on all the latest news from JSMpros!