This Role wants to provide the simplest way to install openshift 4 taking care of all the network configuration but DNS.
- You don't need DHCP
- check for your environment
- Validate your configuration
- Validate your DNS
- Configure an HaProxy (not deploy it, only configure ATM)
- Configure an Nginx web server (not deploy it, only configure ATM)
- Build the iPXE iso image
- Create the VM
- Boot the vm injecting network configuration
- Install the cluster
Check for yout environmentValidate your configurationValidate your DNSConfigure an HaProxy (not deploy it, only configure ATM)Configure an Nginx web server (not deploy it, only configure ATM)Build the iPXE iso imageCreate the VMBoot the vm injecting network configurationInstall the clusterCalculate signature for fcos/rhcosTest all three methods with FCOS (OKD)Test all three methods with RHCOS (Openshift)Determine and download images automatically and build a fetch url- Multiple interfaces transpile
- Proxy implementation
- Validate minimal requirements
- Deploy VM for HaProxy and NginX
- Build HA/Vrrp for HaProxy/NginX
A Bastion node where execute thos tasks and where install a temporary webserver Rhel/Centos 8 Ansible 2.9
# Please lookup the variables in
echo defaults/main.yml
This playbook is tested on RHEL8 and Centos8 with Ansible 2.9 All the dependencies are managed via dnf/yum.
---
- hosts: all
remote_user: root
roles:
- openshift4_infra_provisioner
---
haproxy:
hosts:
bastion.ocp.okd01.lab.local
webserver:
hosts:
bastion.ocp.okd01.lab.local
all:
vars:
enable_reservation: False
dns_fail_is_not_fatal: False
ptr_fail_is_not_fatal: True
checks_only: False
#... look for the entire set of variables in defaults/main.yml ...
openshift-install \
--dir={{playbook_dir}}/tmp/cluster_conf wait-for bootstrap-complete \
--log-level=info
export KUBECONFIG={{playbook_dir}}/tmp/cluster_conf/auth/kubeconfig
oc login \
-h api.{{ocp_installer.clustername}}{{ocp_installer.basedomain}} \
-u kubeadmin \
-p {{ lookup('file', playbook_dir + '/tmp/cluster_conf/auth/kubeadmin-password') }}
oc get csr -o go-template='{{range .items}}{{if not .status}}{{.metadata.name}}{{"\n"}}{{end}}{{end}}' | xargs oc adm certificate approve
oc patch configs.imageregistry.operator.openshift.io cluster --type merge --patch '{"spec":{"managementState":"Managed"}}'`
oc patch configs.imageregistry.operator.openshift.io cluster --type merge --patch '{"spec":{"storage":{"emptyDir":{}}}}'