otc-openshift-installer

module
v0.0.0-...-c53fdc3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 3, 2023 License: Apache-2.0

README

OpenShift Installer

Supported Platforms

Quick Start

First, install all build dependencies.

Clone this repository. Then build the openshift-install binary with:

hack/build.sh

This will create bin/openshift-install. This binary can then be invoked to create an OpenShift cluster, like so:

bin/openshift-install create cluster

The installer will show a series of prompts for user-specific information and use reasonable defaults for everything else. In non-interactive contexts, prompts can be bypassed by providing an install-config.yaml.

If you have trouble, refer to the troubleshooting guide.

Connect to the cluster

Details for connecting to your new cluster are printed by the openshift-install binary upon completion, and are also available in the .openshift_install.log file.

Example output:

INFO Waiting 10m0s for the openshift-console route to be created...
INFO Install complete!
INFO To access the cluster as the system:admin user when using 'oc', run
    export KUBECONFIG=/path/to/installer/auth/kubeconfig
INFO Access the OpenShift web-console here: https://console-openshift-console.apps.${CLUSTER_NAME}.${BASE_DOMAIN}:6443
INFO Login to the console with user: kubeadmin, password: 5char-5char-5char-5char
Cleanup

Destroy the cluster and release associated resources with:

openshift-install destroy cluster

Note that you almost certainly also want to clean up the installer state files too, including auth/, terraform.tfstate, etc. The best thing to do is always pass the --dir argument to create and destroy. And if you want to reinstall from scratch, rm -rf the asset directory beforehand.

Directories

Path Synopsis
cmd
We want to keep the stream metadata stored "directly" in git so it's easy to read and validate.
We want to keep the stream metadata stored "directly" in git so it's easy to read and validate.
pkg
asset
Package asset defines the asset dependencies and implements the graph engine.
Package asset defines the asset dependencies and implements the graph engine.
asset/cluster
Package cluster contains asset targets that generates the terraform file, prepare the infra, and bootstrap the cluster.
Package cluster contains asset targets that generates the terraform file, prepare the infra, and bootstrap the cluster.
asset/cluster/openstack
Package openstack extracts OpenStack metadata from install configurations.
Package openstack extracts OpenStack metadata from install configurations.
asset/installconfig
Package installconfig generates the install config assets based on its dependencies.
Package installconfig generates the install config assets based on its dependencies.
asset/installconfig/openstack
Package openstack collects OpenStack-specific configuration.
Package openstack collects OpenStack-specific configuration.
asset/kubeconfig
Package kubeconfig defines and generates the kubeconfig assets.
Package kubeconfig defines and generates the kubeconfig assets.
asset/machines
Package machines is responsible for creating Machine objects for machinepools.
Package machines is responsible for creating Machine objects for machinepools.
asset/machines/openstack
Package openstack generates Machine objects for openstack.
Package openstack generates Machine objects for openstack.
asset/manifests
Package manifests deals with creating manifests for all manifests to be installed for the cluster
Package manifests deals with creating manifests for all manifests to be installed for the cluster
asset/mock
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
asset/rhcos
Package rhcos contains assets for RHCOS.
Package rhcos contains assets for RHCOS.
asset/templates
Package templates deals with creating template assets that will be used by other assets
Package templates deals with creating template assets that will be used by other assets
asset/tls
Package tls defines and generates the tls assets based on its dependencies.
Package tls defines and generates the tls assets based on its dependencies.
destroy
Package destroy contains tools for destroying clusters based on their metadata.
Package destroy contains tools for destroying clusters based on their metadata.
destroy/bootstrap
Package bootstrap uses Terraform to remove bootstrap resources.
Package bootstrap uses Terraform to remove bootstrap resources.
destroy/openstack
Package openstack provides a cluster-destroyer for openstack clusters.
Package openstack provides a cluster-destroyer for openstack clusters.
gather
Package gather contains platform specific methods for gathering console logs.
Package gather contains platform specific methods for gathering console logs.
gather/service
Package service is used to analyze service json files from an installation that failing to bootstrap.
Package service is used to analyze service json files from an installation that failing to bootstrap.
gather/ssh
Package ssh contains utilities that help gather logs, etc.
Package ssh contains utilities that help gather logs, etc.
ipnet
Package ipnet wraps net.IPNet to get CIDR serialization.
Package ipnet wraps net.IPNet to get CIDR serialization.
lineprinter
Package lineprinter wraps a Print implementation to provide an io.WriteCloser.
Package lineprinter wraps a Print implementation to provide an io.WriteCloser.
quota
Package quota provides functions to fetch and check quotas for various cloud environments.
Package quota provides functions to fetch and check quotas for various cloud environments.
rhcos
Package rhcos contains helpers for RHCOS related operations.
Package rhcos contains helpers for RHCOS related operations.
terraform
Package terraform contains the utilities that's used for invoking terraform executable under the given directory with the given templates.
Package terraform contains the utilities that's used for invoking terraform executable under the given directory with the given templates.
tfvars
Package tfvars generates Terraform variables for launching the cluster.
Package tfvars generates Terraform variables for launching the cluster.
tfvars/openstack
Package openstack contains OpenStack-specific Terraform-variable logic.
Package openstack contains OpenStack-specific Terraform-variable logic.
types
Package types defines structures for installer configuration and management.
Package types defines structures for installer configuration and management.
types/openstack
Package openstack contains OpenStack-specific structures for installer configuration and management.
Package openstack contains OpenStack-specific structures for installer configuration and management.
validate
Package validate contains validation utilities for installer types.
Package validate contains validation utilities for installer types.
version
Package version includes the version information for installer.
Package version includes the version information for installer.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL