Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

ironicbadger/ocp4

Open more actions menu

Repository files navigation

ironicbadger/ocp4

This repo contains code to deploy Openshift 4 for my homelab. It focuses on UPI with vSphere 6.7u3, a full write up is available on openshift.com.

May 2021 - The code here is working against 4.7.

Pre-reqs

On a Mac you will need to install a few packages via brew.

brew install jq watch gsed

Usage

Code for each OCP release lives on a numbered branch. The master branch represents the latest stable iteration and will likely be behind branches. In otherwords, check the number branches first before looking at master.

  • This repo requires Terraform 0.13 or newer
  • Install oc tools with ./install-oc-tools.sh --latest 4.6
  • This code use yamldecode - details here
  1. Create ~/.config/ocp/vsphere.yaml for yamldecode use, sample content:
alex@mooncake ~ % cat .config/ocp/vsphere.yaml
vsphere-user: administrator@vsphere.local
vsphere-password: "123!"
vsphere-server: 192.168.1.240
vsphere-dc: ktzdc
vsphere-cluster: ktzcluster
  1. Configure DNS - https://blog.ktz.me/configure-unbound-dns-for-openshift-4/ - if using CoreDNS this is optional.
  2. Create install-config.yaml and ensure cluster_slug matches metadata: name: below.
apiVersion: v1
baseDomain: openshift.lab.int
compute:
- hyperthreading: Enabled
  name: worker
  replicas: 0
controlPlane:
  hyperthreading: Enabled
  name: master
  replicas: 3
metadata:
  name: ocp4
platform:
  vsphere:
    vcenter: 192.168.1.240
    username: administrator@vsphere.local
    password: supersecretpassword
    datacenter: ktzdc
    defaultDatastore: nvme
fips: false 
pullSecret: 'YOUR_PULL_SECRET'
sshKey: 'YOUR_SSH_PUBKEY'
  1. Customize clusters/lab/terraform.tfvars with any relevant configuration.

  2. Run make tfinit to initialise Terraform modules

  3. Run make lab to create the VMs and generate/install ignition configs

  4. Monitor install progress with make wait-for-bootstrap

  5. Check and approve pending CSRs with make get-csr and make approve-csr

  6. Run make bootstrap-complete to destroy the bootstrap VM

  7. Run make wait-for-install and wait for the cluster install to complete

  8. Enjoy!

About

Deployment code for Openshift 4.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •  
Morty Proxy This is a proxified and sanitized view of the page, visit original site.