-
This role deploys the Istio control plane. It consists of the following playbooks:
-
Playbook: pre_workload.yml - Sets up an environment for the workload deployment.
-
Debug task will print out:
pre_workload Tasks completed successfully.
-
-
Playbook: workload.yml - Used to deploy Istio
-
Debug task will print out:
workload Tasks completed successfully.
-
-
Playbook: post_workload.yml - Used to configure the workload after deployment
-
This role doesn’t do anything here
-
Debug task will print out:
post_workload Tasks completed successfully.
-
-
Playbook: remove_workload.yml - Used to delete the workload
-
This role removes the logging deployment and project but not the operator configs
-
Debug task will print out:
remove_workload Tasks completed successfully.
-
-
-
This file ./defaults/main.yml contains all the variables you need to define to control the deployment of your workload.
-
The variable ocp_username is mandatory to assign the workload to the correct OpenShift user.
-
A variable silent=True can be passed to suppress debug messages.
-
You can modify any of these default values by adding
-e "variable_name=variable_value"to the command line
TARGET_HOST="bastion.na311.openshift.opentlc.com"
OCP_USERNAME="shacharb-redhat.com"
WORKLOAD="ocp-workload-enable-service-broker"
GUID=1001
# a TARGET_HOST is specified in the command line, without using an inventory file
ansible-playbook -i ${TARGET_HOST}, ./configs/ocp-workloads/ocp-workload.yml \
-e"ansible_ssh_private_key_file=~/.ssh/keytoyourhost.pem" \
-e"ansible_user=ec2-user" \
-e"ocp_username=${OCP_USERNAME}" \
-e"ocp_workload=${WORKLOAD}" \
-e"silent=False" \
-e"guid=${GUID}" \
-e"ACTION=create"
TARGET_HOST="bastion.na311.openshift.opentlc.com"
OCP_USERNAME="opentlc-mgr"
WORKLOAD="ocp4-workload-infra-nodes"
GUID=1002
# a TARGET_HOST is specified in the command line, without using an inventory file
ansible-playbook -i ${TARGET_HOST}, ./configs/ocp-workloads/ocp-workload.yml \
-e"ansible_ssh_private_key_file=~/.ssh/keytoyourhost.pem" \
-e"ansible_user=ec2-user" \
-e"ocp_username=${OCP_USERNAME}" \
-e"ocp_workload=${WORKLOAD}" \
-e"guid=${GUID}" \
-e"ACTION=remove"
- name: Deploy a workload role on a master host
hosts: all
become: true
gather_facts: False
tags:
- step007
roles:
- { role: "{{ocp_workload}}", when: 'ocp_workload is defined' }|
Note
|
You might want to change hosts: all to fit your requirements
|
-
You can create an Ansible inventory file to define your connection method to your host (Master/Bastion with
occommand) -
You can also use the command line to define the hosts directly if your
sshconfiguration is set to connect to the host correctly -
You can also use the command line to use localhost or if your cluster is already authenticated and configured in your
occonfiguration
[gptehosts:vars]
ansible_ssh_private_key_file=~/.ssh/keytoyourhost.pem
ansible_user=ec2-user
[gptehosts:children]
openshift
[openshift]
bastion.cluster1.openshift.opentlc.com
bastion.cluster2.openshift.opentlc.com
bastion.cluster3.openshift.opentlc.com
bastion.cluster4.openshift.opentlc.com
[dev]
bastion.cluster1.openshift.opentlc.com
bastion.cluster2.openshift.opentlc.com
[prod]
bastion.cluster3.openshift.opentlc.com
bastion.cluster4.openshift.opentlc.com