Chapter 3. Get Started
3.1. Using the Red Hat Single Sign-On for OpenShift Image Streams and Application Templates
Red Hat JBoss Middleware for OpenShift images are pulled on demand from the secured Red Hat Registry: registry.redhat.io, which requires authentication. To retrieve content, you will need to log into the registry using the Red Hat account.
To consume container images from registry.redhat.io in shared environments such as OpenShift, it is recommended for an administrator to use a Registry Service Account, also referred to as authentication tokens, in place of an individual person’s Red Hat Customer Portal credentials.
To create a Registry Service Account, navigate to the Registry Service Account Management Application, and log in if necessary.
- From the Registry Service Accounts page, click Create Service Account.
Provide a name for the Service Account, for example registry.redhat.io-sa. It will be prepended with a fixed, random string.
- Enter a description for the Service Account, for example Service account to consume container images from registry.redhat.io..
- Click Create.
- After the Service Account was created, click the registry.redhat.io-sa link in the Account name column of the table presented on the Registry Service Accounts page.
- Finally, click the OpenShift Secret tab, and perform all steps listed on that page.
See the Red Hat Container Registry Authentication article for more information.
- Ensure that you are logged in as a cluster administrator or a user with project administrator access to the global openshift project:
Choose a command based on your version of OpenShift Container Platform.
If you are running an OpenShift Container Platform v3 based cluster instance on (some) of your master host(s), perform the following:
$ oc login -u system:admin
If you are running an OpenShift Container Platform v4 based cluster instance, log in to the CLI as the kubeadmin user:
$ oc login -u kubeadmin -p password https://openshift.example.com:6443
Run the following commands to update the core set of Red Hat Single Sign-On 7.4.10.GA resources for OpenShift in the
openshift
project:$ for resource in sso74-image-stream.json \ sso74-https.json \ sso74-postgresql.json \ sso74-postgresql-persistent.json \ sso74-x509-https.json \ sso74-x509-postgresql-persistent.json do oc replace -n openshift --force -f \ https://raw.githubusercontent.com/jboss-container-images/redhat-sso-7-openshift-image/sso74-dev/templates/${resource} done
Run the following command to install the Red Hat Single Sign-On 7.4.10.GA OpenShift image streams in the
openshift
project:$ oc -n openshift import-image rh-sso-7/sso74-openshift-rhel8:7.4 --from=registry.redhat.io/rh-sso-7/sso74-openshift-rhel8:7.4 --confirm
3.2. Deploying the Red Hat Single Sign-On Image
3.2.1. Preparing the Deployment
Log in to the OpenShift CLI with a user that holds the cluster:admin role.
Create a new project:
$ oc new-project sso-app-demo
Add the
view
role to thedefault
service account. This enables the service account to view all the resources in the sso-app-demo namespace, which is necessary for managing the cluster.$ oc policy add-role-to-user view system:serviceaccount:$(oc project -q):default
3.2.2. Deploying the Red Hat Single Sign-On Image using the Application Template
3.2.2.1. Deploying the Template using OpenShift CLI
List the available Red Hat Single Sign-On application templates:
$ oc get templates -n openshift -o name | grep -o 'sso74.\+' sso74-https sso74-postgresql sso74-postgresql-persistent sso74-x509-https sso74-x509-postgresql-persistent
Deploy the selected one:
$ oc new-app --template=sso74-x509-https --> Deploying template "openshift/sso74-x509-https" to project sso-app-demo Red Hat Single Sign-On 7.4 (Ephemeral) --------- An example Red Hat Single Sign-On 7 application. For more information about using this template, see <link xlink:href="https://github.com/jboss-openshift/application-templates">https://github.com/jboss-openshift/application-templates</link>. A new Red Hat Single Sign-On service has been created in your project. The admin username/password for accessing the master realm using the Red Hat Single Sign-On console is IACfQO8v/nR7llVSVb4Dye3TNRbXoXhRpAKTmiCRc. The HTTPS keystore used for serving secure content, the JGroups keystore used for securing JGroups communications, and server truststore used for securing Red Hat Single Sign-On requests were automatically created using OpenShift's service serving x509 certificate secrets. * With parameters: * Application Name=sso * JGroups Cluster Password=jg0Rssom0gmHBnooDF3Ww7V4Mu5RymmB # generated * Datasource Minimum Pool Size= * Datasource Maximum Pool Size= * Datasource Transaction Isolation= * ImageStream Namespace=openshift * Red Hat Single Sign-On Administrator Username=IACfQO8v # generated * Red Hat Single Sign-On Administrator Password=nR7llVSVb4Dye3TNRbXoXhRpAKTmiCRc # generated * Red Hat Single Sign-On Realm= * Red Hat Single Sign-On Service Username= * Red Hat Single Sign-On Service Password= * Container Memory Limit=1Gi --> Creating resources ... service "sso" created service "secure-sso" created service "sso-ping" created route "sso" created route "secure-sso" created deploymentconfig "sso" created --> Success Run 'oc status' to view your app.
Alternatively, perform one of the following procedures to deploy the Red Hat Single Sign-On template by using the OpenShift 3.x or 4.x web console.
3.2.2.2. Deploying the Template using the OpenShift 3.x Web Console
- Log in to the OpenShift web console and select the sso-app-demo project space.
- Click Add to Project, then Browse Catalog to list the default image streams and templates.
- Use the Filter by Keyword search bar to limit the list to those that match sso. You may need to click Middleware, then Integration to show the desired application template.
- Select an Red Hat Single Sign-On application template. This example uses Red Hat Single Sign-On 7.4 (Ephemeral).
- Click Next in the Information step.
- From the Add to Project drop-down menu, select the sso-app-demo project space. Then click Next.
- Select Do not bind at this time radio button in the Binding step. Click Create to continue.
- In the Results step, click the Continue to the project overview link to verify the status of the deployment.
3.2.2.3. Deploying the Template using the OpenShift 4.x Web Console
Prerequisites
- Perform the steps described in Using the Red Hat Single Sign-On for OpenShift Image Streams and Application Templates.
Procedure
- Log in to the OpenShift web console and select the sso-app-demo project space.
On the left sidebar, click the
Administrator
tab and then click</> Developer
.Click
From Catalog
.Search for
sso
.Choose a template such as
Red Hat Single Sign-On 7.4 on OpenJDK (Ephemeral)
.Click
Instantiate Template
.-
Adjust the template parameters if necessary and click
Create
. Verify the Red Hat Single Sign-On for OpenShift image was deployed.
3.2.3. Accessing the Administrator Console of the Red Hat Single Sign-On Pod
After the template is deployed, identify the available routes:
$ oc get routes NAME HOST/PORT sso sso-sso-app-demo.openshift.example.com
and access the Red Hat Single Sign-On administrator console at:
- https://sso-sso-app-demo.openshift.example.com/auth/admin
using the administrator account.