logo

Kubernetes 1.27.3 离线安装 Calico 3.26.1

作者:搬砖的石头2024.01.18 02:05浏览量:77

简介:本文将指导您在Kubernetes 1.27.3环境下离线安装Calico 3.26.1。我们将遵循以下步骤:下载Calico离线包、解压并上传至服务器、离线镜像导入containerd的K8s命名空间中,然后进行安装。

在Kubernetes 1.27.3环境下离线安装Calico 3.26.1需要遵循一系列步骤。由于网络问题或其他环境限制,可能需要离线安装一些组件。以下是具体的步骤:

  1. 下载Calico离线包:首先,你需要从GitHub上全局搜索Calico,点击进入项目,然后在Releases下下载自己需要的Calico版本的离线包。这里我们以Calico 3.26.1版本为例。
    你可以通过运行以下命令来下载Calico的离线包:
    1. wget https://github.com/projectcalico/calico/releases/download/v3.26.1/calico-kube-controllers-v3.26.1.tar.gz
    2. wget https://github.com/projectcalico/calico/releases/download/v3.26.1/calico-node-v3.26.1.tar.gz
    3. wget https://github.com/projectcalico/calico/releases/download/v3.26.1/calico-typha-v3.26.1.tar.gz
    这些命令将从GitHub上下载Calico的各个组件的离线包。
  2. 解压Calico离线包并将所需文件上传至服务器:下载完成后,你需要解压这些压缩包,并将解压出来的文件通过scp或其他方式上传至你的Kubernetes服务器上。
    你可以使用以下命令来解压刚刚下载的压缩包:
    1. tar -xzf calico-kube-controllers-v3.26.1.tar.gz -C /tmp
    2. tar -xzf calico-node-v3.26.1.tar.gz -C /tmp
    3. tar -xzf calico-typha-v3.26.1.tar.gz -C /tmp
    这些命令会将文件解压到/tmp目录下。然后,你可以将解压出来的文件通过scp或其他方式上传至你的Kubernetes服务器上。
  3. 离线镜像导入containerd的K8s命名空间中:由于我们是在离线环境下,无法直接拉取镜像,所以我们需要将之前下载的镜像导入到containerd的命名空间中。
    首先,你需要找到之前下载的镜像文件,然后使用以下命令将它们导入到containerd的命名空间中:
    1. ctr images import <镜像文件路径> --namespace k8s.<命名空间> --tag <镜像标签>
    这里的<镜像文件路径>是你之前下载的镜像文件的路径,<命名空间>是你想要导入的命名空间,<镜像标签>是你想要设置的镜像标签。你需要根据你的实际情况来填写这些参数。
  4. 安装Calico:最后一步是安装Calico。首先,你需要创建一个新的yaml文件来定义Calico的安装配置。在这个文件中,你需要指定Calico的版本、节点标签等配置信息。然后,你可以使用kubectl命令来应用这个yaml文件,从而安装Calico。
    以下是一个示例的yaml文件内容:
    ```yaml
    apiVersion: projectcalico.org/v3
    kind: CalicoClusterInfo
    metadata:
    name: calico-cluster-info
    spec:
    datastoreReady: true
    etcdEndpoints: http://
    orchestrator: k8s
    version: v3.26.1

apiVersion: v1
kind: ServiceAccount
metadata:
name: calico-node-sa

namespace: kube-system

apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:
name: calico-cluster-admin-binding-k8s1-27-3—offline
namespace: kube-system
subjects:

  • kind: ServiceAccount
    name: calico-node-sa
    namespace: kube-system
    roleRef:
    kind: ClusterRole
    name: cluster

相关文章推荐

发表评论