This page describes the installation of the 3scale API Workshop from the latest sources from GitHub.
You will need an OpenShift Container Platform to install this workshop on. You can order a vanilla provisioning from the Red Hat Product Demo System (RHPDS) following this instructions.
To install the 3scale API Workshop, you need to have a host machine with the latest stable release version of the OpenShift client tools.
You can download the OpenShift Client Tools from Red Hat Developers Portal Site or follow the instructions on how to Install the CLI from the openshift.com webpage.
You'll want to know how to fork and clone a Git repository, and how to check out a branch.
3scale API Workshop can be installed using automated Ansible playbooks or following the manual steps.
We provide an Ansible playbook to install all the required components and software for this workshop.
Installing with Ansible requires creating an inventory file with the variables for configuring the system. Example inventory files can be found in the ansible/inventory folder. The following options are supported:
Name | Description | Default | Required |
---|---|---|---|
namespace | Namespace where 3scale API Management will be installed. | threescale | Yes, if threescale is enabled |
sso_project | Namespace where Red Hat Single Sign On will be installed. | rh-sso | Yes, if sso is enabled |
apicurio_project | Namespace where Apicurio will be installed. | apicurio | Yes, if apicurio is enabled |
gogs_project | Namespace where Gogs will be installed. | gogs | Yes, if gogs is enabled |
microcks_project | Namespace where Microcks will be installed | microcks | Yes, if microcks is enabled |
backend_project | Namespace where Backend will be installed | international | Yes, if backend is enabled |
sso_version | The version tag used for getting the RH SSO templates. | ose-v1.4.9 | No |
ocp_domain | Root domain of the OpenShift cluster. For example: GUID.openshiftworkshop.com |
Yes | |
ocp_apps_domain | Root domain fpr the applications. For example: apps.GUID.openshiftworkshop.com |
Yes | |
usersno | Number of user tenants that will be created. | Yes | |
threescale | Enable Red Hat 3scale API Management. | true | No |
apicurio | Enable Apicurio Studio. | true | No |
gogs | Enable Gogs Git Service. | true | No |
microcks | Enable Microcks. | true | No |
sso | Enable Red Hat Single Sign On. | true | No |
backend | Enable App Backend Service | true | No |
user_projects | true | No | |
configure_only | Do not install the software, just configure existing installations. The software should be running in the same namespaces defined in the above vars. | false | No |
create_tenants | Whether the workshop should be installed in a multitenant mode or not. 3scale admin domains and developer portals for each of the users created during installation will be created. | true | Yes, if threescale is enabled |
create_realms | If installing in multitenant mode, this will enable the creation of a RH SSO security realm for each one of the users created during installation. | true | No |
An example inventory that installs all the components in multitenant mode from the bastion machine looks like this:
[workshop]
localhost ansible_connection=local
[workshop:vars]
ocp_domain=GUID.openshiftworkshop.com
ocp_apps_domain=apps.GUID.openshiftworkshop.com
usersno=20
threescale=true
apicurio=true
gogs=true
microcks=true
sso=true
backend=true
user_projects=true
configure_only=false
create_tenants=true
create_realms=true
The recommended way to install the workshop is running the ansible playbook from the OpenShift cluster bastion machine. This is the fastest way to run the installer as it's already running in the cluster closest to the master node.
-
Login to the bastion machine following the email instructions.
ssh -i /path/to/ocp_workshop.pem [email protected]
Remember to update the GUID with your cluster environment variable and the path to the downloaded PEM file.
-
Git Clone the 3scale API Workshop repository:
git clone https://github.com/jbossdemocentral/3scale-api-workshop.git
-
Become super user running the following command:
sudo su
-
Change to the project install folder:
cd 3scale-api-workshop/support/install
-
Run the Ansible playbook.
ansible-playbook -i ansible/inventory/workshop.inventory ansible/playbooks/openshift/install.yml
-
Login to the OpenShift cluster.
oc login -u opentlc-mgr https://master.GUID.openshiftworkshop.com --insecure-skip-tls-verify
If you install on OpenShift, it is required that you have cluster-admin access in order to set up the required roles for creating namespaces and managing resources in those namespaces.
-
Run the Ansible playbook.
ansible-playbook -i ansible/inventory/workshop.inventory ansible/playbooks/openshift/install.yml