As I hinted in my previous posts, OpenShift Virtualization opens up new infrastructure design possibilities. I believe one of the biggest things that will come down the pipeline is OpenShift on OpenShift. That's right I'm talking about nested OpenShift thanks to OpenShift Virtualization.
I'm guessing the first question you have is why? Good question, the benefits of nested OpenShift include:
- Ease of deployment to virtual environments. Now you can have benefits of virtual machines without paying extra for the hypervisor. OpenShift Virtualization uses KVM and Libvirt which are tried and true virtualization technologies used since RHEL 6.
- Better resource utilization. OCP control nodes (aka masters) are perfectly happy running in virtual machines so you don't have to worry about dedicating bare metal servers who's resources will be mostly unused.
- With the ease of deploying in virtual environments, you can have a robust GitOps CI/CD pipeline for testing and rolling out OCP software and configuration updates.
- Instead of dealing with large clusters you can deploy more manageable cluster sizes. This also allows you to deploy clusters with various configurations to better serve requirements of the app teams.
- Allows for highly available cluster designs.
Concepts
Before we start lets get familiar with some nomenclature I will be using going forward.
- Infra clusters are Bare Metal OpenShift clusters that will serve as virtualization hosts.
- Tenant clusters are OpenShift clusters hosted partially or fully on Infra clusters.
Architectures
Fully Virtualized OCP cluster
The most basic nested OCP design is a single Infra cluster hosting multiple Tenant clusters. Each tenant cluster occupies a single namespace in the Infra cluster. Due to the rapid pace of development in the Kubernetes world, a GitOps pipeline is absolutely crucial to keep up with the latest changes. It also allows individual engineers to test their code changes without disrupting the work of others. This design is also well suited for Dev and QA environments on the application side.
Partialy Virtualized OCP Cluster
The next design only deviates slightly by hosting the Tenant cluster control nodes on the Infra clusters and using bare metal servers as the workers. This has the same benefits as the previous design with the addition of being able to test bare metal OCP deployment. This design is well suited for Dev,QA, UAT and Pre-Prod testing.
Highly Available Partialy Virtualized OCP Cluster
Now we get to a really interesting architecture. This design requires three Infra clusters. The Tenant cluster control VMs are distributed across three different infra clusters. This is similar to having availability sets in AWS. Just like the previous designs the workers can be bare metal or virtual. The major advantage of this design is in its resiliency. Even if you lose an entire Infra cluster, all the tenant clusters will still be full operational. Once the Infra cluster is recovered, you can easily restore the control nodes for the tenant cluster. This resilient design is well suited for production environments, especially ones that have demanding uptime requirements.
Now that we have our designs and value proposition, the next question you might have is how? In my next article I will guide you through creating a basic nested OCP cluster. Stay tuned!
저자 소개
채널별 검색
오토메이션
기술, 팀, 인프라를 위한 IT 자동화 최신 동향
인공지능
고객이 어디서나 AI 워크로드를 실행할 수 있도록 지원하는 플랫폼 업데이트
오픈 하이브리드 클라우드
하이브리드 클라우드로 더욱 유연한 미래를 구축하는 방법을 알아보세요
보안
환경과 기술 전반에 걸쳐 리스크를 감소하는 방법에 대한 최신 정보
엣지 컴퓨팅
엣지에서의 운영을 단순화하는 플랫폼 업데이트
인프라
세계적으로 인정받은 기업용 Linux 플랫폼에 대한 최신 정보
애플리케이션
복잡한 애플리케이션에 대한 솔루션 더 보기
가상화
온프레미스와 클라우드 환경에서 워크로드를 유연하게 운영하기 위한 엔터프라이즈 가상화의 미래