searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

一个小时玩转搭建K8s集群

2024-05-31 09:20:57
67
0

一:环境规划

 

1.1 集群类型

Kubernetes 集群大致分为两类:一主多从和多主多从。

一主多从(单 master ):一个 Master 节点和多台 Node 节点,搭建简单,但是有单机故障风险,适合用于测试环境。

多主多从(高可用):多台 Master 节点和多台 Node 节点,搭建麻烦,安全性高,适合用于生产环境。

 

1.2 高可用集群架构图

 

 

1.3 安装方式

  • Kubernetes 有多种部署方式,目前主流的方式有 kubeadm 、minikube 、二进制包。
  • ① minikube:一个用于快速搭建单节点的 Kubernetes 工具。
  • ② kubeadm:一个用于快速搭建Kubernetes 集群的工具(可以用于生产环境)。
  • ③ 二进制包:从官网上下载每个组件的二进制包,依次去安装(建议生产环境使用)。

 

1.4 搭建流程

 

  • 至少准备 3 台机器,要求网络互通
  • 在 3 台机器上安装 Docker。
  • 安装 Kubernetes : 
    • 3 台机器安装核心组件:kubeadm(创建集群的引导工具)、kubelet 、kubectl。
    • kubelet 可以直接通过容器化的方式创建出 Kubernetes  的核心组件,如:Controller Manager、Scheduler 等。
    • 由 kubeadm 引导创建 Kubernetes 集群。

 

二:Kubernetes 安装

 

2.1  准备工作

  •  升级系统内核
  •  设置主机名和主机解析
  •  时钟同步
  •  关闭SELinux
  •  关闭swap分区
  •  开启ipvs
  •  Docker安装

 

2.2  安装所需镜像

 docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-apiserver:v1.21.10
 docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-controller-manager:v1.21.10
 docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler:v1.21.10
 docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy:v1.21.10
 docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.4.1
 docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/etcd:3.4.13-0
 docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/coredns:v1.8.0

 

 

2.3  部署Master

 # 由于默认拉取镜像地址k8s.gcr.io国内无法访问,这里需要指定镜像仓库地址

 mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

 

kubeadm token create --ttl 0 --print-join-command

 

2.4  部署Node

kubeadm join 192.168.65.100:6443 --token tluojk.1n43p0wemwehcmmh \
    --discovery-token-ca-cert-hash sha256:c50b25a5e00e1a06cef46fa5d885265598b51303f1154f4b582e0df21abfa7cb

 

 

 

2.5  部署网络插件

kubectl apply -f projectcalico.docs.tigera.io/v3.19/manifests/calico.yaml

 
 

2.6 查找k8s相关命令

   kubectl get pods

   kubectl get namespaces

   kubectl get nodes

 

0条评论
作者已关闭评论
m****m
5文章数
0粉丝数
m****m
5 文章 | 0 粉丝
m****m
5文章数
0粉丝数
m****m
5 文章 | 0 粉丝
原创

一个小时玩转搭建K8s集群

2024-05-31 09:20:57
67
0

一:环境规划

 

1.1 集群类型

Kubernetes 集群大致分为两类:一主多从和多主多从。

一主多从(单 master ):一个 Master 节点和多台 Node 节点,搭建简单,但是有单机故障风险,适合用于测试环境。

多主多从(高可用):多台 Master 节点和多台 Node 节点,搭建麻烦,安全性高,适合用于生产环境。

 

1.2 高可用集群架构图

 

 

1.3 安装方式

  • Kubernetes 有多种部署方式,目前主流的方式有 kubeadm 、minikube 、二进制包。
  • ① minikube:一个用于快速搭建单节点的 Kubernetes 工具。
  • ② kubeadm:一个用于快速搭建Kubernetes 集群的工具(可以用于生产环境)。
  • ③ 二进制包:从官网上下载每个组件的二进制包,依次去安装(建议生产环境使用)。

 

1.4 搭建流程

 

  • 至少准备 3 台机器,要求网络互通
  • 在 3 台机器上安装 Docker。
  • 安装 Kubernetes : 
    • 3 台机器安装核心组件:kubeadm(创建集群的引导工具)、kubelet 、kubectl。
    • kubelet 可以直接通过容器化的方式创建出 Kubernetes  的核心组件,如:Controller Manager、Scheduler 等。
    • 由 kubeadm 引导创建 Kubernetes 集群。

 

二:Kubernetes 安装

 

2.1  准备工作

  •  升级系统内核
  •  设置主机名和主机解析
  •  时钟同步
  •  关闭SELinux
  •  关闭swap分区
  •  开启ipvs
  •  Docker安装

 

2.2  安装所需镜像

 docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-apiserver:v1.21.10
 docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-controller-manager:v1.21.10
 docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler:v1.21.10
 docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy:v1.21.10
 docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.4.1
 docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/etcd:3.4.13-0
 docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/coredns:v1.8.0

 

 

2.3  部署Master

 # 由于默认拉取镜像地址k8s.gcr.io国内无法访问,这里需要指定镜像仓库地址

 mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

 

kubeadm token create --ttl 0 --print-join-command

 

2.4  部署Node

kubeadm join 192.168.65.100:6443 --token tluojk.1n43p0wemwehcmmh \
    --discovery-token-ca-cert-hash sha256:c50b25a5e00e1a06cef46fa5d885265598b51303f1154f4b582e0df21abfa7cb

 

 

 

2.5  部署网络插件

kubectl apply -f projectcalico.docs.tigera.io/v3.19/manifests/calico.yaml

 
 

2.6 查找k8s相关命令

   kubectl get pods

   kubectl get namespaces

   kubectl get nodes

 

文章来自个人专栏
大数据ClickHouse
5 文章 | 1 订阅
0条评论
作者已关闭评论
作者已关闭评论
0
0