Skip to content

Code to automate ACM OpenShift deployments on an OpenStack platform

License

Notifications You must be signed in to change notification settings

tcmcginnis/acm-openstack-automation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OpenShift ACM Deployment Automation

This new offering provides integration with RedHat Advanced Cluster Management provisioning clusters within an OpenStack virtualization environment

As a new offering the documentation and refactoring of the playbooks has just begun and will eventually meet the standards of an Ansible "collection"


Run the following playbook to perform a FULL OpenShift cluster deployment and post deployment configuration

  full-deployment.yaml

        ansible-playbook ~/ocp-install/acm-automation/full-deployment.yaml \
            -i ~/ocp-install/inventory/[clustername].yml




Run the following playbook to configure and launch the OpenShift build phase only

  deploycluster.yaml

        ansible-playbook ~/ocp-install/acm-automation/deploycluster.yaml \
            -i ~/ocp-install/inventory/[clustername].yml



Run the following playbook to perform post deployment configuration and generate ACM Policies

  post-deployment.yaml

        ansible-playbook ~/ocp-install/acm-automation/post-deployment.yaml \
            -i ~/ocp-install/inventory/[clustername].yml



Run the following playbook to produce a report of the generated configuration for a deployment
  No configurations touched or effected in this playbook.

  display-deploycluster.yaml

        ansible-playbook ~/ocp-install/acm-automation/display-deploycluster.yaml \
            -i ~/ocp-install/inventory/[clustername].yml



For ease of use an interactive script can be run:

  run-cluster-deployment.sh [datacenter] [cloud] [project]


    NOTE: This script is interactive so all missing options will be prompted.


Special note: You must be logged in to the Openshift Cluster with ACM so the automation can determine avalailable OpenShift Versions.


Additional Playbooks


Run the following playbook to define the OpenStack Security Groups

  define-security-groups.yaml



Run the following playbook to display the OpenStack Security Groups

  display-security-groups.yaml



Run the following playbook to launch an ACM based OpenShift cluster build using the ACM Deployment YAML configuration files

  launch-acm-cluster-deployment.yaml



Run the following playbook to test internal network connectivity for an OpenStack Network / Availability Zone

  network-connectivity-test-yaml

        ansible-playbook ~/ocp-install/acm-automation/network-connectivity-test-yaml \
            -i ~/ocp-install/inventory/[clustername].yml \
            -e network_search_regex="[Unique string within Network Name]" -e az=[Availability Zone] \
                -e netdiag_test_dns=[true|false] \
                -e netdiag_test_k8sapi=[true|false] \
                -e netdiag_test_rhacm=[true|false]



Run the following playbook to process cluster API and Ingress certificates then store in the TLS cluster policy

  process-certs.yaml


  Option Description Default
  cacert Location of certificate bundle for Openstack SDK
  git_repo_path Location to write deployment yaml files{repo-folder}/clusters/cluster_name/acm
  ocp_release Version of Openshift to deploy 4.10
  osp_cloud Openstack Cloud (eg: ospcdl1, osp1, osp2, osp3)Required unless the URL override is present
  osp_datacenter Openstack Datacenter (eg: cloud0, cloud1,cloud2)Required unless the URL override is present
  osp_project Openstack Project (eg: ocp-c1degt0104-caasAlways Required
  osp_url Authentication URL override for Openstack queries eg. https://cloud.datacenter.openstack.com:13000URL is constructed from the osp_dataceter+osp_cloud variables
  os_image CoreOS image on Openstack Latest rhcos-4.? that matches the Openshift Release
  server_flavor Node VM size on Openstack oc-16x96-k8s-worker
  subnet_search_regex Regex to identify Stretch network-STRETCH-
  preview Set to "True" to display Deployment Configuration and prevent automation from generating and publishing the configuration.False

About

Code to automate ACM OpenShift deployments on an OpenStack platform

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published