我想了解将 Kubernetes
应用从 AWS
迁移到 GCP
的简要说明或示例。
涉及哪些服务,例如 EKS
或 EC2
以及 GKE
或 Compute Engine
。
我对迁移非常陌生,对 AWS
不太了解,最近开始使用 GCP
。
提前致谢。
我想了解将 Kubernetes
应用从 AWS
迁移到 GCP
的简要说明或示例。
涉及哪些服务,例如 EKS
或 EC2
以及 GKE
或 Compute Engine
。
我对迁移非常陌生,对 AWS
不太了解,最近开始使用 GCP
。
提前致谢。
这要看情况而定。
AWS
映射到 GCP
资源:首先,您需要了解 AWS
和 GCP
资源之间的映射关系。
有几篇文章:
AWS EKS
迁移到 GCP GKE
:困难模式如果您的集群是使用托管的 Kubernetes 服务部署的:
Elastic Kubernetes Service
(EKS
)Google Kubernetes Engine
(GKE
)由于 kubernetes
架构的复杂性以及在 AWS
和 GCP
中管理集群方法的差异,迁移可能会很困难。
k8s
部署的 VM 和集群清单。如果您的 kubernetes
集群是使用 k8s
或 helm
清单部署在云虚拟机上,则迁移将更容易。
有两种方式:
GCP Migrate Connector
迁移 VM
(正如 @vicente-ayala 在他的回答中所说)terraform
清单中,逐步更改资源定义,然后将更新后的清单应用到 GCP
上。Migrate Connector
迁移您可以在此处找到有关迁移 VM 的最新迁移手册:
根据GCP
手册,
在将源VM迁移到Google Cloud之前,您必须在您的本地数据中心和Google Cloud上配置迁移环境。请参阅:
操作指南 | 迁移Compute Engine | Google Cloud
Terraform
和Terraformer
进行迁移有一个很棒的工具可以进行反向Terraform GoogleCloudPlatform/terraformer. Infrastructure to Code
这是一个CLI工具,可以根据现有基础架构(反向Terraform)生成tf
/json
和tfstate
文件。
您可以将基础架构导入到terraform
清单中:
terraformer import aws --resources=vpc,subnet --connect=true --regions=eu-west-1 --profile=prod
aws provider
声明的terraform
清单。AWS
资源替换为适当的GCP
资源。有官方的terraform GCP
提供程序: hashicorp/google。不幸的是,两个云供应商的terraform
资源没有映射关系。但是,你可以使用以下一些映射列表:
然后应用新的GCP
清单:
terraform init
terraform plan
terraform apply
GCP
的其他资源