前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >自建 Kubernetes 集群

自建 Kubernetes 集群

原创
作者头像
Duncan_
发布2023-02-02 15:32:19
1K0
发布2023-02-02 15:32:19
举报

基础安装(所有节点)

系统配置

代码语言:shell
复制
# 开启 ipv4 转发功能
echo "1" > /proc/sys/net/ipv4/ip_forward

安装 containerd

代码语言:shell
复制
# 安装 containerd
apt install -y containerd

# 安装 crictl,参考 https://github.com/kubernetes-sigs/cri-tools

VERSION="v1.26.0"
wget https://github.com/kubernetes-sigs/cri-tools/releases/download/$VERSION/crictl-$VERSION-linux-amd64.tar.gz
sudo tar zxvf crictl-$VERSION-linux-amd64.tar.gz -C /usr/local/bin
rm -f crictl-$VERSION-linux-amd64.tar.gz

# 设置 endpoint
crictl config runtime-endpoint unix:///run/containerd/containerd.sock
crictl config image-endpoint unix:///run/containerd/containerd.sock

# 检查 caontainerd 状态
systemctl status containerd

安装 kubelet kubeadm kubectl

代码语言:shell
复制
# 添加 kubernetes 源证书
curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add - 

# 添加源
cat <<EOF >/etc/apt/sources.list.d/kubernetes.list
deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main
EOF

# 更新源
apt update

# 检索版本
apt-cache madison kubectl

# 安装对应版本
apt install -y kubelet=1.24.4-00 kubeadm=1.24.4-00 kubectl=1.24.4-00

# 插件版本
kubeadm version
kubectl version
kubelet --version

# 如果版本不对,可以卸载后再安装
apt remove kubeadm kubectl kubelet

启动 kubelet

代码语言:shell
复制
systemctl enable kubelet.service
systemctl start kubelet.service

启动 master 节点

启动 kubelet

使用 kubeadm 初始化

代码语言:shell
复制
# 9.133.33.133 为 master 节点 ip,需要保证工作节点可以通过此 ip 访问当 master 节点
# 如果是部署标准化环境,k8s 版本则需要根据标准化版本需求做适当更改
kubeadm init --kubernetes-version=1.24.4  \
--apiserver-advertise-address=9.133.33.133   \
--image-repository registry.aliyuncs.com/google_containers  \
--service-cidr=10.10.0.0/16 --pod-network-cidr=10.122.0.0/16

遇到的问题

  • 如果报错 container runtime is not running, 则需要执行下面的操作,再执行 kubeadm 初始化
代码语言:shell
复制
rm /etc/containerd/config.toml
systemctl restart containerd

初始化完成后会有两部分信息记录

  1. 把 kubeconfig 拷贝到当前环境
代码语言:txt
复制
To start using your cluster, you need to run the following as a regular user:

  mkdir -p $HOME/.kube
  sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
  sudo chown $(id -u):$(id -g) $HOME/.kube/config
  1. 其他工作节点加入集群的命令行
代码语言:txt
复制
kubeadm join 9.133.33.133:6443 --token xxxx.xxxxxx \
    --discovery-token-ca-cert-hash sha256:xxxxxxxx

如果忘记,也可以使用个下面指令获取加入集群命令行

代码语言:txt
复制
kubeadm token create --print-join-command

安装 woker 节点

加入集群

(首先完成基础安装)

代码语言:txt
复制
kubeadm join 9.133.33.133:6443 --token xxxx.xxxxxx \
        --discovery-token-ca-cert-hash sha256:xxxxxxxx

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 基础安装(所有节点)
    • 系统配置
      • 安装 containerd
        • 安装 kubelet kubeadm kubectl
        • 启动 master 节点
          • 使用 kubeadm 初始化
            • 遇到的问题
            • 安装 woker 节点
              • 加入集群
              相关产品与服务
              云服务器
              云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档