Overview
This guide covers migrating workloads from on-premises or self-managed Kubernetes environments to Oracle Kubernetes Engine (OKE) using a redeployment-based migration model.
Rather than transferring cluster-level state, this approach:
- Rebuilds infrastructure cleanly on OCI
- Redeploys applications using existing artifacts
- Aligns with Kubernetes portability principles
- Establishes a cloud-native foundation
This is the recommended and architecturally correct approach for Kubernetes migrations to OCI.
Introduction
Oracle Cloud Infrastructure (OCI) provides a secure and high-performance platform for containerized workloads.
Oracle Kubernetes Engine (OKE) is:
- Fully managed
- CNCF-conformant
- Deeply integrated with OCI networking and IAM
- Designed for production-grade workloads
Kubernetes workloads are inherently portable.
Therefore, lift-and-shift at cluster level is an anti-pattern.
Redeployment enables organizations to:
- Eliminate legacy cluster constraints
- Adopt OCI-native networking
- Improve security posture
- Reduce accumulated technical debt
- Standardize GitOps workflows
Target Platform: Oracle Kubernetes Engine (OKE)
Key Characteristics:
- Control Plane: Fully managed by OCI
- Worker Nodes: OCI Compute (VM or Bare Metal)
- Networking: OCI VCN-native
- Storage: OCI Block Volume & File Storage via CSI
- IAM Integration: OCI IAM + Kubernetes RBAC
- Ingress: OCI Load Balancer or in-cluster ingress
- Best Use Case: Cloud-native workloads
OKE treats Kubernetes clusters as managed infrastructure — not handcrafted snowflakes.
Migration Model: Redeployment
Redeployment preserves:
- Application code
- Container images
- Deployment definitions
- CI/CD pipelines
It does not preserve:
- etcd state
- Node configuration
- CNI artifacts
- Cluster add-ons
Clusters are disposable.
Applications are not.
Core Redeployment Building Blocks
Container Images
- Reuse existing images
- Mirror to OCI Container Registry (OCIR)
- Validate CPU architecture compatibility
- Apply vulnerability scanning
Avoid cross-region registry dependencies where possible.
Deployment Manifests
- YAML and Helm charts remain valid
- Externalize environment configuration
-
Adjust:
- Storage classes
- Ingress definitions
- Load balancer annotations
Declarative definitions are the portability layer.
CI/CD & GitOps
Minimal pipeline changes required:
- Update kubeconfig context
- Update registry endpoints
- Validate RBAC access
GitOps (Argo CD / Flux) integrates cleanly with OKE.
Migration Workflow
1. Assessment
Inventory:
- Namespaces
- Workloads
- Persistent volumes
- External dependencies
- Ingress model
Classify workloads:
- Stateless
- Stateful
- Platform components
Stateless workloads should migrate first.
2. OKE Architecture Design
Define early:
- VCN layout
- CIDR segmentation
- Node pool sizing
- Pod CIDR allocation
- Service CIDR allocation
- Ingress strategy
- IAM policy model
Networking must be designed before deployment.
3. Registry Strategy
- Mirror images to OCIR
- Standardize tagging model
- Enable vulnerability scanning
- Enforce registry authentication policies
4. Platform Foundation
Deploy:
- Ingress controller
- DNS integration
- Monitoring stack
- Logging stack
Do not migrate legacy platform components.
Rebuild them natively.
5. Application Redeployment
Deploy workloads in controlled waves:
- Validate pod readiness
- Validate service discovery
- Validate external connectivity
Parallel run is strongly recommended.
6. Cutover
Common strategies:
- DNS switch
- Blue/green
- Weighted traffic shift
Redeployment allows reversible migration paths.
Networking Considerations
Kubernetes Services map cleanly to OCI Load Balancers.
Key differences from on-prem:
- No IP preservation
- VCN-native routing
- Updated firewall rules
- Explicit egress control
This is a deliberate architectural evolution.
Security & Identity
OKE integrates with:
- OCI IAM for infrastructure access
- Kubernetes RBAC for cluster access
Best practices:
- Use dynamic groups
- Apply least privilege IAM policies
- Store secrets in OCI Vault when possible
Security posture improves with OCI-native IAM integration.
Observability & Autoscaling
Recommended model:
- OCI Monitoring
- Prometheus / Grafana
- Centralized log aggregation
- Horizontal Pod Autoscaler (HPA)
- Cluster Autoscaler
Avoid migrating monitoring history.
Rebuild observability cleanly.
Special Considerations
Stateful Workloads
Stateful migration requires separate strategy:
- CSI snapshot
- Backup/restore
- Application replication
This guide focuses on stateless workloads.
Platform Components
Do not migrate:
- Custom CNI plugins
- Cluster-specific add-ons
- Control plane modifications
OKE control plane is managed — treat it as immutable.
Best Practices
- Treat clusters as disposable
- Start with stateless workloads
- Use GitOps for consistency
- Decouple data from compute
- Use OCI-native services when possible
Decision Guidance
Choose Kubernetes → OKE when:
- Cloud-native architecture is goal
- Platform simplicity desired
- No OpenShift dependency exists
- OCI integration is strategic
Avoid complex cluster migration tooling.
Redeployment is cleaner, safer, and more sustainable.
Strategic Insight
Kubernetes migration is not about moving clusters.
It is about modernizing operating models.
Redeploying onto OKE:
- Reduces technical debt
- Simplifies governance
- Improves security posture
- Enables scalable cloud-native operations
Lift-and-shift preserves history.
Redeployment enables future architecture.