导入 Amazon Elastic Container Service for Kubernetes 集群

要导入 Amazon Elastic Container Service for Kubernetes 集群,请完成以下过程。有关公用 Kubernetes 服务的更多信息,请参阅 Amazon Elastic Container Service for Kubernetes 在新选项卡中打开

先决条件

准备导入

您需要创建一个 <import_config_directory> 目录,用于存储导入配置文件。

生成用于目标受管集群的 kubeconfig 文件

  1. 从终端转至 <import_config_directory> 目录。

  2. 使用以下命令来向 AWS CLI 进行认证:

    aws configure
    
  3. 使用以下命令来设置 KUBECONFIG 环境变量:

    export KUBECONFIG=kubeconfig
    
  4. 使用以下命令获取 kubeconfig

     aws eks update-kubeconfig --name <cluster-name>
    
  5. 列示目录中的文件,并确认已创建 kubeconfig 文件。

  6. 验证 kubeconfig 文件的内容。确保 clusterscontextsusers 各有一个值。请参阅以下示例命令:

    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
    
  7. 使用 kubeconfig,确认您可通过 kubectl 连接至目标受管集群。运行任何 kubectl 命令。如果您收到 unable to connect 错误,请删除该文件并重试。

  8. 取消设置 KUBECONFIG 环境变量,以避免继续操作时修改 kubeconfig 文件。请运行以下命令:

    unset KUBECONFIG
    

创建 IBM Multicloud Manager cluster-import.yaml 配置文件

  1. 从终端转至 <import_config_directory> 目录。

  2. 使用 cloudctl login 登录主数据中心集群。

    cloudctl login -a https://<Hub Cluster Master Host>:<Cluster Master API Port> --skip-ssl-validation-->
    
  3. 运行以下命令以创建配置模板 cluster-import.yaml,其中 <cluster_name> 是主数据中心上集群资源的名称,<cluster_namespace> 是主数据中心上集群资源的名称空间:

    cloudctl mc cluster template <cluster_name> -n <cluster_namespace> > cluster-import.yaml
    
  1. 打开 cluster-import.yaml 文件,并配置下列参数:

    • default_admin_user:目标受管集群的集群管理员用户名
    • container_runtime:集群中使用的容器运行时,当前支持的选项包括 dockercontainerd

    请参阅使用 config.yaml 文件来定制集群多集群端点设置一节,以了解其他参数。

    您现已准备好导入集群。

导入集群

  1. 从终端转至 <import_config_directory> 目录。

  2. 使用 cloudctl login 登录主数据中心集群。

    cloudctl login -a https://<Cluster Master Host>:<Cluster Master API Port> --skip-ssl-validation
    
  3. 运行以下命令以导入目标受管集群:

    cloudctl mc cluster import -f <cluster-import.yaml> --cluster-kubeconfig kubeconfig [-C|--cluster-context {context}]  [-b|--bootstrap-namespace {namespace}] [-t|--timeout {time}]
    
  4. 确认您已成功导入该集群。

    • 登录 IBM Multicloud Manager 主数据中心集群。
    • 从导航栏中单击集群
    • 在列表中查找新导入的受管集群。
    • 确保状态为就绪。根据环境不同,您可能必须等待几分钟才能看到该状态。