导入 Amazon Elastic Container Service for Kubernetes 集群
要导入 Amazon Elastic Container Service for Kubernetes 集群,请完成以下过程。有关公用 Kubernetes 服务的更多信息,请参阅 Amazon Elastic Container Service for Kubernetes 。
先决条件
-
您必须有一个 IBM Multicloud Manager 主数据中心集群,这是已启用
multicluster-hub并将single_cluster_mode设置为false的 IBM Cloud Private 集群。 -
必须安装 CLI,供本过程稍后用来执行认证。有关安装 CLI 的指示信息,请参阅 [安装 AWS CLI]
] (https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html)。
准备导入
您需要创建一个 <import_config_directory> 目录,用于存储导入配置文件。
生成用于目标受管集群的 kubeconfig 文件
-
从终端转至
<import_config_directory>目录。 -
使用以下命令来向 AWS CLI 进行认证:
aws configure -
使用以下命令来设置
KUBECONFIG环境变量:export KUBECONFIG=kubeconfig -
使用以下命令获取
kubeconfig:aws eks update-kubeconfig --name <cluster-name> -
列示目录中的文件,并确认已创建
kubeconfig文件。 -
验证
kubeconfig文件的内容。确保clusters、contexts和users各有一个值。请参阅以下示例命令:apiVersion: v1 clusters: - cluster: certificate-authority-data: <certificate-authority-data> server: <target-managed-cluster-kubernete-api-server> name: <cluster-name> contexts: - context: cluster: <cluster-name> user: <user-profile-name> name: <context-name> current-context: <context-name> kind: Config preferences: {} users: - name: <user-profile-name> user: exec: apiVersion: client.authentication.k8s.io/v1alpha1 args: - token - -i - <cluster-name> command: aws-iam-authenticator -
使用
kubeconfig,确认您可通过kubectl连接至目标受管集群。运行任何kubectl命令。如果您收到unable to connect错误,请删除该文件并重试。 -
取消设置
KUBECONFIG环境变量,以避免继续操作时修改kubeconfig文件。请运行以下命令:unset KUBECONFIG
创建 IBM Multicloud Manager cluster-import.yaml 配置文件
-
从终端转至
<import_config_directory>目录。 -
使用
cloudctl login登录主数据中心集群。cloudctl login -a https://<Hub Cluster Master Host>:<Cluster Master API Port> --skip-ssl-validation--> -
运行以下命令以创建配置模板
cluster-import.yaml,其中<cluster_name>是主数据中心上集群资源的名称,<cluster_namespace>是主数据中心上集群资源的名称空间:cloudctl mc cluster template <cluster_name> -n <cluster_namespace> > cluster-import.yaml
-
打开
cluster-import.yaml文件,并配置下列参数:default_admin_user:目标受管集群的集群管理员用户名container_runtime:集群中使用的容器运行时,当前支持的选项包括docker和containerd
请参阅使用 config.yaml 文件来定制集群的多集群端点设置一节,以了解其他参数。
您现已准备好导入集群。
导入集群
-
从终端转至
<import_config_directory>目录。 -
使用
cloudctl login登录主数据中心集群。cloudctl login -a https://<Cluster Master Host>:<Cluster Master API Port> --skip-ssl-validation -
运行以下命令以导入目标受管集群:
cloudctl mc cluster import -f <cluster-import.yaml> --cluster-kubeconfig kubeconfig [-C|--cluster-context {context}] [-b|--bootstrap-namespace {namespace}] [-t|--timeout {time}] -
确认您已成功导入该集群。
- 登录 IBM Multicloud Manager 主数据中心集群。
- 从导航栏中单击集群。
- 在列表中查找新导入的受管集群。
- 确保状态为就绪。根据环境不同,您可能必须等待几分钟才能看到该状态。