Starting in Red Hat OpenShift 4.9 release, we are extending the infrastructure provider integration experience to a new platform, Azure Stack Hub, from Microsoft’s Azure Stack portfolio of products.
This will allow Microsoft customers to deploy Red Hat OpenShift on a user-provisioned infrastructure in Azure Stack Hub. Red Hat is planning to support full-stack automated deployments in coming releases. As part of this new provider integration certification, Red Hat makes Azure Resource Manager templates available to the customer to simplify the process of creating the required infrastructure where to deploy OpenShift.
Azure Stack Hub extends Azure services and capabilities to your environment of choice, letting you run OpenShift in an on-premise environment and deliver Azure services and OpenShift capabilities in your data centre. For many customers, due to technological and regulatory obstacles, their workloads must remain on-premises. This integration will help customers to build their hybrid cloud strategy leveraging OpenShift to run their workloads on-premises, keeping the same processes and user experience as they were running these workloads in the Azure public cloud.
Deploying OpenShift on Azure Stack Hub using user-provisioned infrastructure
Detailed instructions on how to deploy OpenShift on Azure Stack Hub are available in docs.openshift.com as they are for other platforms. This post is doing a high-level overall overview of the steps required.
For this release, the user will need to provide the required infrastructure where OpenShift will be deployed. For customers who want to leverage infrastructure as code Azure provides a solution called Azure Resource Manager templates. As part of the instructions, we are providing opinionated templates as a reference architecture to easily create all the required infrastructure components for OpenShift, such as networking, storage, compute and others.
When using user-provisioned infrastructure the steps are the same as any other provider. An install-config.yaml needs to be created with the specific information for the Azure Stack Hub environment where we are deploying OpenShift. The documentation already provides a sample that the user will customize to match their needs.
Using the OpenShift installation program we will generate the Kubernetes manifest for the cluster:
$ openshift-install create manifests
INFO Credentials loaded from file "/home/mak/.azure/osServicePrincipal.json"
INFO Consuming Install Config from target directory
WARNING Making control-plane schedulable by setting MastersSchedulable to true for Scheduler cluster settings
INFO Manifests created in: manifests and openshift
As we are deploying the cluster using an infrastructure provisioned by the user, we need to do some additional changes to the generated manifests. We are going to remove the manifest files that define the control plane and worker machines as we are going to manually manage those.
The next step is to manually create the cloud credentials from the release image the installation program is built to use:
$ oc adm release extract quay.io/openshift-release-dev/ocp-release:4.9.0-rc.8-x86_64 --credentials-requests --cloud=azure --to=credentials-request
$ ll credentials-request/
total 20
-rw-rw-r-- 1 mak mak 568 Oct 18 21:39 0000_26_cloud-controller-manager-operator_14_credentialsrequest-azure.yaml
-rw-rw-r-- 1 mak mak 591 Oct 18 21:39 0000_30_machine-api-operator_00_credentials-request.yaml
-rw-rw-r-- 1 mak mak 656 Oct 18 21:39 0000_50_cluster-image-registry-operator_01-registry-credentials-request-azure.yaml
-rw-rw-r-- 1 mak mak 641 Oct 18 21:39 0000_50_cluster-ingress-operator_00-ingress-credentials-request.yaml
-rw-rw-r-- 1 mak mak 611 Oct 18 21:39 0000_50_cluster-storage-operator_03_credentials_request_azure.yaml
We need to generate now the corresponding Secrets using the secretRef information from each CredentialsRequest file, and after that, we can create the Ignition configuration files:
$ openshift-install create ignition-configs
INFO Consuming Worker Machines from target directory
INFO Consuming Common Manifests from target directory
INFO Consuming Master Machines from target directory
INFO Consuming Openshift Manifests from target directory
INFO Consuming OpenShift Install (Manifests) from target directory
INFO Ignition-Configs created in: . and auth
We are now ready to create all the required infrastructure using the provided Azure Resource Manager templates and bootstrap the cluster:
$ openshift-install wait-for bootstrap-complete --log-level debug
DEBUG OpenShift Installer 4.9.0-rc.8
DEBUG Built from commit 6e5b992ba719dd4ea2d0c2a8b08ecad45179e553
INFO Waiting up to 20m0s for the Kubernetes API at https://api.mak-blog.ppe.upi.azurestack.devcluster.openshift.com:6443...
INFO API v1.22.0-rc.0+894a78b up
INFO Waiting up to 30m0s for bootstrapping to complete...
DEBUG Bootstrap status: complete
INFO It is now safe to remove the bootstrap resources
DEBUG Time elapsed per stage:
DEBUG Bootstrap Complete: 10m42s
DEBUG API: 1s
INFO Time elapsed: 10m42s
At this point the OpenShift Cluster will be ready to use and worker nodes can be added to the cluster.
$ oc get clusteroperators
NAME VERSION AVAILABLE PROGRESSING DEGRADED SINCE MESSAGE
authentication 4.9.0-rc.8 True False False 29h
baremetal 4.9.0-rc.8 True False False 4d17h
cloud-controller-manager 4.9.0-rc.8 True False False 4d17h
cloud-credential 4.9.0-rc.8 True False False 4d17h
cluster-autoscaler 4.9.0-rc.8 True False False 4d17h
config-operator 4.9.0-rc.8 True False False 4d17h
console 4.9.0-rc.8 True False False 29h
csi-snapshot-controller 4.9.0-rc.8 True False False 4d17h
dns 4.9.0-rc.8 True False False 4d17h
etcd 4.9.0-rc.8 True False False 4d17h
image-registry 4.9.0-rc.8 True False False 4d17h
ingress 4.9.0-rc.8 True False False 4d16h
insights 4.9.0-rc.8 True False False 4d17h
kube-apiserver 4.9.0-rc.8 True False False 4d17h
kube-controller-manager 4.9.0-rc.8 True False False 4d17h
kube-scheduler 4.9.0-rc.8 True False False 4d17h
kube-storage-version-migrator 4.9.0-rc.8 True False False 4d17h
machine-api 4.9.0-rc.8 True False False 4d17h
machine-approver 4.9.0-rc.8 True False False 4d17h
machine-config 4.9.0-rc.8 True False False 4d17h
marketplace 4.9.0-rc.8 True False False 4d17h
monitoring 4.9.0-rc.8 True False False 4d16h
network 4.9.0-rc.8 True False False 4d17h
node-tuning 4.9.0-rc.8 True False False 4d17h
openshift-apiserver 4.9.0-rc.8 True False False 29h
openshift-controller-manager 4.9.0-rc.8 True False False 4d17h
openshift-samples 4.9.0-rc.8 True False False 4d17h
operator-lifecycle-manager 4.9.0-rc.8 True False False 4d17h
operator-lifecycle-manager-catalog 4.9.0-rc.8 True False False 4d17h
operator-lifecycle-manager-packageserver 4.9.0-rc.8 True False False 29h
service-ca 4.9.0-rc.8 True False False 4d17h
storage 4.9.0-rc.8 True False False 4d17h
We can log in to the OpenShift Console and check the status of the Cluster.
Check if nodes are ready to run workloads.
Or check that we can consume storage volumes directly from our Azure Stack Hub environment.
Conclusion
This new provider integration will enable existing or new Azure customers to deploy and run OpenShift clusters on their own autonomous cloud on-premises the same way they were doing on the public cloud.
Red Hat’s hybrid cloud experience will let customers use consistent tools and models while giving them the flexibility to choose between Azure and Azure Stack Hub when building and deploying their applications.
We are really excited to see how customers take advantage of this new feature and continue working with them on their hybrid cloud journey.
Über den Autor
Marcos Entenza, a.k.a Mak, works on the core Red Hat OpenShift Container Platform for hybrid and multi-cloud environments to enable customers to run Red Hat OpenShift anywhere. Mak is an experienced Product Manager with a passion for building scalable infrastructures and he is responsible for installation and provider integration specifically for cloud environments.
Nach Thema durchsuchen
Automatisierung
Das Neueste zum Thema IT-Automatisierung für Technologien, Teams und Umgebungen
Künstliche Intelligenz
Erfahren Sie das Neueste von den Plattformen, die es Kunden ermöglichen, KI-Workloads beliebig auszuführen
Open Hybrid Cloud
Erfahren Sie, wie wir eine flexiblere Zukunft mit Hybrid Clouds schaffen.
Sicherheit
Erfahren Sie, wie wir Risiken in verschiedenen Umgebungen und Technologien reduzieren
Edge Computing
Erfahren Sie das Neueste von den Plattformen, die die Operations am Edge vereinfachen
Infrastruktur
Erfahren Sie das Neueste von der weltweit führenden Linux-Plattform für Unternehmen
Anwendungen
Entdecken Sie unsere Lösungen für komplexe Herausforderungen bei Anwendungen
Original Shows
Interessantes von den Experten, die die Technologien in Unternehmen mitgestalten
Produkte
- Red Hat Enterprise Linux
- Red Hat OpenShift
- Red Hat Ansible Automation Platform
- Cloud-Services
- Alle Produkte anzeigen
Tools
- Training & Zertifizierung
- Eigenes Konto
- Kundensupport
- Für Entwickler
- Partner finden
- Red Hat Ecosystem Catalog
- Mehrwert von Red Hat berechnen
- Dokumentation
Testen, kaufen und verkaufen
Kommunizieren
Über Red Hat
Als weltweit größter Anbieter von Open-Source-Software-Lösungen für Unternehmen stellen wir Linux-, Cloud-, Container- und Kubernetes-Technologien bereit. Wir bieten robuste Lösungen, die es Unternehmen erleichtern, plattform- und umgebungsübergreifend zu arbeiten – vom Rechenzentrum bis zum Netzwerkrand.
Wählen Sie eine Sprache
Red Hat legal and privacy links
- Über Red Hat
- Jobs bei Red Hat
- Veranstaltungen
- Standorte
- Red Hat kontaktieren
- Red Hat Blog
- Diversität, Gleichberechtigung und Inklusion
- Cool Stuff Store
- Red Hat Summit