kameshsampath.openshift_app_spices
Ansible Role for OpenShift Operators
Ansible is used to set up an OpenShift cluster for Red Hat Developer Workshops and Demos.
This role can also install and configure:
[*] Red Hat OpenShift Serverless for Serving and Eventing
[*] Argo CD
[*] Apache Camel-K
Requirements
Python v3
Docker Desktop or Docker for Linux
OpenShift 4.5+ Cluster (try it here)
pip3 install \
-r https://raw.githubusercontent.com/kameshsampath/ansible-role-openshift-spices/master/requirements.txt
ansible-galaxy role install -r https://raw.githubusercontent.com/kameshsampath/ansible-role-openshift-spices/master/requirements.yml
ansible-galaxy collection install -r https://raw.githubusercontent.com/kameshsampath/ansible-role-openshift-spices/master/requirements.yml
Note: For Windows, it is recommended to use Windows Subsystem for Linux (WSL).
Role Variables
Variable Name | Description | Default Value |
---|---|---|
download_clients | Download OpenShift clients (oc, kubectl, installs) | True |
ocp_bin_dir | Directory for OpenShift clients | $HOME/openshift/bin |
ocp_version | Minimum OpenShift version to use | 4.5.6 |
deploy_serverless | Deploy OpenShift Serverless | True |
serverless_subscription_channel | The Operator Channel for Serverless Subscription | 4.5 |
knative_serving_cr | The Knative Serving Custom Resource | serverless/cr/serving.yaml |
knative_eventing_cr | The Knative Eventing Custom Resource | serverless/cr/eventing.yaml |
deploy_pipelines | Deploy OpenShift Pipelines | False |
deploy_argocd | Deploy Argo CD | False |
argocd_cr | The Argo CD Custom resource | argocd/cr.yaml |
argocd_release_channel | The Argo CD Release Channel | alpha |
deploy_acm | Deploy Advanced Cluster Management for Kubernetes | False |
acm_cr | The ACM Custom resource | acm/cr.yaml |
acm_release_channel | The ACM Release Channel | release-2.0 |
deploy_servicemesh | Deploy OpenShift Service Mesh | False |
servicemesh_es_channel | The Operator Channel for Red Hat Elastic Search | 4.5 |
servicemesh_cr | The Red Hat Service Mesh Custom resource | servicemesh/cr.yaml |
servicemesh_members | Create and add projects for Service Mesh | |
deploy_kafka | Deploy Apache Kafka using Strimzi | False |
kafka_cluster_name | The Apache Kafka cluster name | my-cluster |
kafka_cluster_namespace | The Apache Kafka cluster namespace | kafka |
strimzi_kafka_cr | Apache Kafka Strimzi Custom Resource | kafka/cr.yaml |
knative_eventing_kafka_cr | Knative Eventing KafkaSource Custom Resource | kafka/eventing/cr.yaml |
deploy_camel_k | Deploy Apache Camel-K | False |
deploy_che | Deploy Eclipse Che | False |
eclipse_che_cr | The Eclipse Che Custom resource | che/cr.yaml |
create_openshift_users | Create OpenShift users and Cluster Administrator | |
users | Configuration for user creation | |
- create : True or False |
||
- prefix : "user" |
||
- start : 0 |
||
- end : 10 |
Note: Setting start
and end
to 0
will not create any users except the cluster-admin
.
Example Playbooks
The examples directory contains various playbook examples to help you get started with this role.
For instance, if you want to deploy OpenShift Serverless with Pipelines, run:
ansible-playbook examples/serverless_pipelines.yml
If you don’t have Ansible installed locally, you can use the project openshift-spice-runner to run the playbooks using Docker and Ansible Runner.
License
Licensed under Apache v2.
Author Information
Kamesh Sampath - [email protected]
Issues
For issues, visit: GitHub Issues.
Setup OpenShift workshop cluster with required components
ansible-galaxy install kameshsampath.openshift_app_spices