This blog was written with the help of Trey Hoehne AWS Container Services Specialist and Antoinette Mills AWS Container Services Specialist.
Red Hat OpenShift Service on AWS (ROSA), now supports OpenShift Virtualization enabling the ability to rapidly migrate full virtual machine images to kubernetes pods within the cloud and automate them like containers. With ROSA/OpenShift 4.14 we support the mix of Linux or Windows virtual machines in OpenShift Virtualization, that can be managed with DevOps/GitOps semantics for deployment, lifecycle, management and distribution in the same network and name space as your container workloads. This capability allows greater portability of workloads for disaster recovery, bursting use cases, while enabling rapid modernization of your traditional application architectures into cloud native. OpenShift as a managed application platform on AWS is a powerful tool to facilitate your migration to the cloud while accelerating your application modernization to more efficient, cloud friendly service delivery.
OpenShift Virtualization on Red Hat OpenShift Service on AWS
Why Virtual Machines on ROSA
One of the biggest obstacles to migrating applications to cloud is the need to make a binary choice between lift and shift of the application or to refactor the full application during the migration. Often this involves the need for duplicate resources on-prem while you refactor or a complex risky migration to a totally different architecture in the cloud that increases the risk, schedule and skill gaps in the process of migrating. You now have the option to do both with the OpenShift 4.14 release. Virtualization on ROSA enables a mix of virtual machines and containerized workloads supported by a full industry leading application platform to coexist. We also have our Migration Toolkit for Virtualization (MTV) to accelerate your application migration to AWS with ROSA.
ROSA - Managed OpenShift
AWS ROSA is a managed implementation of OpenShift on AWS with a 99.95% SLA and dedicated Red Hat SRE’s to manage the environment for you. The Red Hat SRE will assist with cluster bring up via automation, ensure your ROSA cluster is deployed to best practices and ensure that it stays up with 24/7 round the world coverage. This takes the load off your Cloud Architects and DevOps team from maintaining, integrating and upgrading Kubernetes in your environment while ensuring you’re compliant with a fully supported open source stack. ROSA is a fully supported version of OpenShift that with 4.14 will support the OpenShift Virtualization operator. While the Red Hat SRE team will manage and maintain the ROSA cluster for you, the OpenShift Virtualization operator is customer managed for configuration of that service with full Red Hat Enterprise support.
AWS ROSA Responsibility Matrix
OpenShift Virtualization on ROSA
OpenShift Virtualization offering on ROSA is self managed by the customer and is supported by Red Hat.
OpenShift Virtualization is a production-ready virtualization technology based on KVM and the open source Kubevirt project integrated, supported and released by Red Hat. OpenShift Virtualization allows you to run a traditional full VM image of an OS inside a container on the OpenShift application platform. The actual image runs on a pod in a worker node but it is managed as if it is a container with a shared network and a declarative YAML configuration file with VM task automation. Both Windows and Linux OS images are supported. The service is installed via the OpenShift operator marketplace (OperatorHub) and it requires dedicated hardware based workers to run (AWS *.metal instances). With the OpenShift 4.14 software release we now support the OCP-Virt operator deployment on ROSA when you use dedicated hardware nodes in your worker pool.
Or with ROSA CLI, run
rosa list instance-types |grep metal
OpenShift Virtualization on ROSA OS Options
Guest OS Support
With OpenShift Virtualization on ROSA you have the ability to mix environments of Linux, Windows VM’s, container or serverless workloads in the same name space, network domain and automation framework on a common ROSA cluster. Further we can apply CI/CD driven DevOps/GitOps workflows to your virtual machine workloads in exactly the same model you enjoy with cloud native containers today. Tekton, ArgoCD, Scupper, Mesh Network, Dev Spaces, Secrets, Container Registry, Knative and other open source tools pre-integrated into OpenShift let you truly treat infrastructure as code for traditional App/VM workloads.
Virtual machines running on ROSA must use the primary (pod) network which can be exposed using cluster Services.
OpenShift Virtualization on ROSA with Windows OS
Ecosystem Partner Services
For VM features like Live-Migration and cross pod access, use RWX capable native AWS storage such as the AWS FSXN NFS service or one of our partner storage solutions. OpenShift Virtualization is storage agnostic and can integrate with multiple storage partners; expect future blogs from these partners . Data Protection is provided with local copy persistent storage as well as with partnerships for Data Protection that support OpenShift Virtualization. These partnerships can facilitate migration to ROSA with their associated replication capabilities from their data center solutions. Keep an eye out for more blogs on this capability in the future and leverage the hybrid power of OpenShift.
VM to Cloud Native Modernization Journey
Use Case Rapid Modernization of Linux and Windows Applications to Cloud Native
OpenShift Virtualization on ROSA fully supports Linux and Windows images with 3rd party support for other OS options. A key use case is the ability to migrate Windows .NET applications on Windows to ROSA and then rapidly modernize them in pieces to containers with scale-out and more reliable options. Other options such as modernizing Spring Boot apps, Herokou are other examples for conversion but migrating any app to a container architecture will show benefits in the cloud on cost, flexibility and scaling. Many commercial off-the shelf applications also enable container modernization on OpenShift such as IBM Maximo, IBM MQ, Mulesoft to name a few.
The ability to mix VM, container and serverless workloads give ROSA users an excellent set of options for accelerating their migrations to cloud. rehost, refactor and re-architect options can now be accomplished with a pre-integrated application platform so your migration and modernization activity can be combined in a single automation, compute platform and namespace. We also support tooling to help with VM migration with our MTV tool working seamlessly with both Windows and Linux VM’s to give you a rapid migration capability to quickly move your VM’s to the cloud and rapidly start the modernization process.
Key Benefits of VM modernization to Cloud Native on ROSA
- Better scalability: Workloads now can scale based on demand.
- Better reliability: Workloads will be running more reliably in a much more stable and resilient environment.
- Better security: Workloads can rely on existing cloud practices to bring an extra layer of security.
- Cost reduction: By getting more automation into the mix, organizations can reduce costs .
Typical App Modernization Journey to Cloud
Disaster Recovery to cloud
One of the big use cases that cloud users have wanted to take advantage of with cloud is the ability to eliminate a redundant data center by leveraging cloud for Disaster Recovery purposes. The challenge has been that EC2 Images are typically a one way migration without the ability to “fail back” via automation. With OpenShift Virtualization on ROSA, you can use virtual machines or containers to provision across on prem to cloud if your registry is replicated. If you leverage a storage or data protection partner, you can replicate your data sets and applications with a common structure. Take your virtual machines and run them temporarily in the cloud and then return the workload back to on-prem with any changes to the environment intact. While there are native ways to store virtual machines in the cloud, they are not exportable for the failback scenario.
Bursting to cloud
Another important use case for cloud has been “bursting” with the ability to temporarily augment workloads with cloud resident resources. An example of this could be to use cloud GPU workers, to use temporary growth based environments and to expand the workload. Seasonal work, access to scarce resources, Dev/Test augmentation and the ability to use other cloud services are great use cases for “bursting to cloud”. With Virtual Machine and container portability combined with support by storage partners, bursting to cloud with OpenShift Virtualization on ROSA can make for a great tool to deal with changing compute requirements.
Another key advantage for OpenShift Virtualization on ROSA is the ability to run workloads in a prolonged manner in a hybrid fashion with OpenShift Virtualization on-prem and OpenShift Virtualization on ROSA available in the cloud, where you can get the same app development, production monitoring and hybrid deployment options. Then, development and application teams can use the same tools anywhere for VM, container and serverless deployment options for maximum operational flexibility.
In Conclusion ROSA now supports OpenShift Virtualization, giving you the ability to rapidly migrate full virtual machine images to cloud and automate them like containers. This capability allows greater portability of workloads for disaster recovery and bursting use cases while enabling rapid application modernization of your traditional application architectures into cloud native with the OpenShift application platform. This makes the choice of migration from an or discussion into an and discussion for you to re-host, refactor and re-architect your applications on your terms. This will accelerate your migration while reducing risk.
More Blogs on the OpenShift Virtualization