Since announcing Openshift version 4, deploying a single OpenShift cluster has become pretty simple. However, simple does not mean scalable, especially when you need to deploy tens, hundreds or even thousands of clusters. For example, a cellular company deploying OpenShift on Edge at the base of each of their cell towers. It would be very difficult to try and manage this using the default deployment tool.
Zero Touch Provisioning (ZTP), along with GitOps methodologies, can be leveraged to automate OpenShift deployment in parallel to multiple sites, without human intervention.
ZTP is a component of Open Cluster Management (OCM), an operator that enables a single OCP cluster to manage a fleet of clusters. This functionality uses declarative APIs to enable the configuration of a vast number of OpenShift clusters. ZTP integrates multiple open-source projects: OCM, Hive, Assisted Installer and Metal³.
In this session, you will learn about ZTP architecture and its components. We will discuss the installation flow and how the components interact with each other. We will learn about the possibility of installing in an air-gapped environment (disconnected from the Internet) and finally demonstrate how to install a Single Node Openshift on bare metal using only a few manifests.
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
Assisted-Installer-DevConf-US-2021
1. Look Ma, no hands!
Zero Touch Provisioning
for OpenShift
Fred Rolland
Principal Software Engineer
@Freddy_Rolland
Nir Magnezi
Senior Software Engineer
@nirmagnezi
1
DevConf.US 2021
2. 2
Multi Cluster Management for Kubernetes
▸ Kubernetes as standard
▸ Multi clusters, multi cloud
▸ Management
4. 4
Single Node Openshift
▸ Single Server
▸ Control & Worker
▸ Bootstrap In Place
https://github.com/openshift/enhancements/tree/master/enhancements/single-node
5. 5
Deploying SNO at scale
https://github.com/openshift/hive
Requirements:
▸ Bare Metal Spoke clusters
▸ Minimal performance impact on Hub cluster
▸ Declarative API
▸ Disconnected Environment
▸ 1000 Spoke clusters
6. 6
Assisted Installer
▸ No need for additional bootstrap server
▸ Agent Based with Discovery ISO
▸ Supports SNO
▸ SAAS, require access to the internet
▸ REST API
▸ Boot It Yourself
https://github.com/openshift/assisted-service
https://console.redhat.com/openshift/assisted-installer/clusters/~new
https://github.com/metal3-io
12. 12
● Initialized: CRs for a cluster is
created/applied
● Booted: BMH booted the remote
machine with discovery ISO
● Discovered: Agent CR created on
hub (discovery complete)
● Provisioning: Installation in
progress
● Completed: OCP installed
● Managed: OCM imported the
cluster
Let’s deploy 1000 SNOs!
https://github.com/open-cluster-management/assisted-installer-batch-deploy-tool
14. 14
Git Ops Deployment
Key performance
parameters, operators
and networking
definitions
Kustomize
Source Git Repo
Site specific data
overlaid onto
performance profiles.
All declarative data
Output for deployment Git
OCM
Declarative output
automagically applied
to the sites
Cluster deployed in desired state
Ready for workload
https://github.com/openshift-kni/cnf-features-deploy/tree/master/ztp
Site
Planning
Data
15. 15
▸ Multi nodes clusters
▸ Remote Worker Node
▸ Late Binding
▸ OCM UI integration
▸ Scale up
Future Roadmap