HyperShift enables OpenShift administrators to offer managed OpenShift control planes as a service.
The hypershift
CLI tool helps you install and work with HyperShift.
Prerequisites:
- Go 1.16
Install the hypershift
CLI using Go:
go install github.com/openshift/hypershift@latest
The hypershift
tool will be installed to $GOBIN/hypershift
.
HyperShift is deployed into an existing OpenShift cluster which will host the managed control planes.
Prerequisites:
- Admin access to an OpenShift cluster (version 4.7+) specified by the
KUBECONFIG
environment variable - The OpenShift
oc
CLI tool - The
hypershift
CLI tool
- An AWS credentials file with permissions to create infrastructure for the cluster
Install HyperShift into the management cluster:
hypershift install
To uninstall HyperShift, run:
hypershift install --render | oc delete -f -
The hypershift
CLI tool comes with commands to help create an example hosted cluster. The cluster will come with a node pool consisting of two workers nodes.
Prerequisites:
- An OpenShift cluster with HyperShift installed
- Admin access to the OpenShift cluster specified by the
KUBECONFIG
environment variable - The
hypershift
CLI tool - The OpenShift
oc
CLI tool. - A valid pull secret file for the
quay.io/openshift-release-dev
repository
Run the hypershift
command to create a cluster named example
in the clusters
namespace, including the cloud infrastructure to support it.
hypershift create cluster \
--pull-secret /my/pull-secret \
--aws-creds ~/.aws/credentials
Eventually the cluster's kubeconfig will become available and can be printed to
standard out using the hypershift
CLI:
hypershift create kubeconfig
To delete the cluster and the infrastructure created earlier, run:
hypershift destroy cluster \
--aws-creds ~/.aws/credentials \
--namespace clusters \
--name example
Prerequisites:
- An example cluster created using the How to create a hosted cluster instructions
Use the oc
tool to apply the YAML like the following to create additional node pools for the example hosted cluster:
apiVersion: hypershift.openshift.io/v1alpha1
kind: NodePool
metadata:
namespace: clusters
name: example-extended
spec:
clusterName: example
nodeCount: 1
platform:
aws:
instanceType: m5.large
With autoscaling:
apiVersion: hypershift.openshift.io/v1alpha1
kind: NodePool
metadata:
namespace: clusters
name: example-extended
spec:
clusterName: example
autoScaling:
max: 5
min: 1
platform:
aws:
instanceType: m5.large