本地k8s集群搭建保姆级教程(3)-安装k8s集群

这篇具有很好参考价值的文章主要介绍了本地k8s集群搭建保姆级教程(3)-安装k8s集群。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

安装K8S集群

1 设置脚本,镜像源替换为阿里云镜像

1.1 增加镜像替换脚本

注意:请在master机器上执行

$ touch images.sh
$ chmod +x images.sh

添加脚本内容:

#!/bin/bash

set -x

if [ $# -ne 1 ];then
    echo "The format is: ./`basename $0` kubernetes-version"
    exit 1
fi

version=$1
images=`kubeadm config images list --kubernetes-version=${version} | awk -F '/' '{print $2}'`

for imageName in ${images[@]}; do
  #containerd方式
  ctr i pull registry.aliyuncs.com/google_containers/$imageName
  ctr i tag registry.aliyuncs.com/google_containers/$imageName k8s.gcr.io/$imageName
  ctr i rm registry.aliyuncs.com/google_containers/$imageName
done

#替换dns镜像 注意版本需要调整
ctr i pull registry.aliyuncs.com/google_containers/coredns:v1.8.6
ctr i tag registry.aliyuncs.com/google_containers/coredns:v1.8.6 k8s.gcr.io/coredns/coredns:v1.8.6
ctr i rm registry.aliyuncs.com/google_containers/coredns:v1.8.6

1.2 查看k8s版本

$ kubeadm config images list
k8s.gcr.io/kube-apiserver:v1.24.1
k8s.gcr.io/kube-controller-manager:v1.24.1
k8s.gcr.io/kube-scheduler:v1.24.1
k8s.gcr.io/kube-proxy:v1.24.1
k8s.gcr.io/pause:3.7
k8s.gcr.io/etcd:3.5.3-0
k8s.gcr.io/coredns/coredns:v1.8.6

1.3 执行脚本

$ ./images.sh v1.24.1

本地验证k8s集群,Devops,Linux/Unix,kubernetes,linux,云原生,云计算,devops

2 安装集群

2.1 初始化master节点

在master机器上执行如下命令:

$ sysctl -w net.ipv4.ip_forward=1  #这里需要设置一下ipv4转发,不然下面要报错
$ kubeadm init \
--node-name=k8smaster \
--apiserver-advertise-address=192.168.56.3 \
--image-repository registry.aliyuncs.com/google_containers \
--kubernetes-version v1.24.1 \
--service-cidr=10.96.0.0/12 \
--pod-network-cidr=10.244.0.0/16 --v=5

说明:
–apiserver-advertise-address= 你master节点的ip
看到如下内容,说明master节点初始化成功

本地验证k8s集群,Devops,Linux/Unix,kubernetes,linux,云原生,云计算,devops
图片中最后一行记得要保存起来,worker节点加入到集群时使用

kubeadm join 192.168.56.3:6443 --token 9r4e42.gcgfs65bdzkaibkf \
	--discovery-token-ca-cert-hash sha256:d4115d0cbe6a63b9a8464b338d5dde6e26231bb3835195749802218f885a4882

2.2 node worker节点加入到集群

分别在两台worker节点上执行如下指令:

$ sysctl -w net.ipv4.ip_forward=1  #这里需要设置一下ipv4转发,不然下面要报错
kubeadm join 192.168.56.3:6443 --token 9r4e42.gcgfs65bdzkaibkf \
	--discovery-token-ca-cert-hash sha256:d4115d0cbe6a63b9a8464b338d5dde6e26231bb3835195749802218f885a4882

2.3 查看node信息

$ kubectl get nodes -A
The connection to the server localhost:8080 was refused - did you specify the right host or port?

fix 上面的错误信息

$ echo "export KUBECONFIG=/etc/kubernetes/admin.conf" >> /etc/profile
$ source /etc/profile
$ kubectl get nodes -A
NAME        STATUS     ROLES           AGE    VERSION
k8smaster   NotReady   control-plane   5m2s   v1.24.0
k8snode1    NotReady   <none>          104s   v1.24.0
k8snode2    NotReady   <none>          88s    v1.24.0

2.4 验证pod信息

$  watch kubectl get pods -A -o wide
kubectl get pods -A -o wide                                                                                                                                                           2022-06-04 15:25:58

NAMESPACE     NAME                                READY   STATUS    RESTARTS   AGE
kube-system   coredns-74586cf9b6-qcgwn            0/1     Pending   0          5m49s
kube-system   coredns-74586cf9b6-zf7qv            0/1     Pending   0          5m49s
kube-system   etcd-k8smaster                      1/1     Running   0          6m4s
kube-system   kube-apiserver-k8smaster            1/1     Running   0          6m3s
kube-system   kube-controller-manager-k8smaster   1/1     Running   0          6m3s
kube-system   kube-proxy-48hq2                    1/1     Running   0          2m33s
kube-system   kube-proxy-fnz8w                    1/1     Running   0          2m49s
kube-system   kube-proxy-znsrg                    1/1     Running   0          5m50s
kube-system   kube-scheduler-k8smaster            1/1     Running   0          6m3s

注意: 发现coredns状态是pending状态,因为我们的k8s组件还没安装网络组件, 接下来我们安装网络组件

3 安装k8s网络组件

这里我选择的是cilium网络组件

3.1 安装cilium网络组件

https://docs.cilium.io/en/v1.11/gettingstarted/k8s-install-helm/
采用helm方式安装(说明:helm在我们装机脚本中已安装过了)

$ helm repo add cilium https://helm.cilium.io/
"cilium" has been added to your repositories

$ helm repo update
Hang tight while we grab the latest from your chart repositories...
...Successfully got an update from the "cilium" chart repository
Update Complete. ⎈Happy Helming!
helm install cilium cilium/cilium --version 1.11.5 \
  --namespace kube-system

观察所有pod都变成running, 说明安装成功

$  watch kubectl get pods -A -o wide

本地验证k8s集群,Devops,Linux/Unix,kubernetes,linux,云原生,云计算,devops
本地验证k8s集群,Devops,Linux/Unix,kubernetes,linux,云原生,云计算,devops

下篇

接下来我们进入下篇:
本地k8s集群搭建保姆级教程(4)-安装k8s集群Dashboard

上篇

本地k8s集群搭建保姆级教程(2)-装机Alpine

结尾

此教程结束了,谢谢阅读!

欢迎关注我的微信公众号,不定期更新,谢谢
本地验证k8s集群,Devops,Linux/Unix,kubernetes,linux,云原生,云计算,devops文章来源地址https://www.toymoban.com/news/detail-607060.html

到了这里,关于本地k8s集群搭建保姆级教程(3)-安装k8s集群的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • K8s集群搭建教程

    学习并总结一下使用三台虚拟机搭建一个kubernetes集群的过程。 Kubernetes 集群大致分为两类:一主多从和多主多从。 (1)一主多从(单 master ):一个 Master 节点,多台 Node 节点,搭建简单,但是有单机故障风险,适合用于测试环境。 (2)多主多从(高可用):多台 Master 节

    2024年02月02日
    浏览(61)
  • 【云原生-K8s】kubeadm搭建安装k8s集群v1.25版本完整教程【docker、网络插件calico、中间层cri-docker】

    从 k8s 1.24开始,dockershim已经从kubelet中移除,但因为历史问题docker却不支持kubernetes主推的CRI(容器运行时接口)标准,所以docker不能再作为k8s的容器运行时了,即从k8s v1.24开始不再使用docker了 但是如果想继续使用docker的话,可以在kubelet和docker之间加上一个中间层cri-docker。

    2024年02月03日
    浏览(45)
  • k8s 集群搭建详细教程

    参考: Kubernetes 文档 / 入门 / 生产环境 / 使用部署工具安装 Kubernetes / 使用 kubeadm 引导集群 / 安装 kubeadm 一台兼容的 Linux 主机。Kubernetes 项目为基于 Debian 和 Red Hat 的 Linux 发行版以及一些不提供包管理器的发行版提供通用的指令 每台机器 2 GB 或更多的 RAM (如果少于这个数字

    2024年02月01日
    浏览(37)
  • 使用 zerotier 打通云上与本地网络并搭建 k8s 集群

    最近不少云厂商都推出了云主机包年优惠活动,虽然配置不高但好在有公网 IP,恰好家里有一台 Mac mini 在吃灰,花了三杯咖啡钱买了一年某云的云主机打算将其和家里的 Mac mini 组成 k8s 集群,方便平时学习和测试同时也能通过云主机的公网 IP 访问到 Mac mini 上运行的服务。为

    2024年01月23日
    浏览(42)
  • Linux搭建 Kubernetes(K8S)集群详情教程

    当搭建 Kubernetes 集群时,涉及的详细步骤可能较多,以下是详细的 Kubernetes 单节点集群搭建步骤: 步骤 1: 准备工作 确保满足以下基本要求: 一台运行 Ubuntu 18.04 或更高版本的机器。 2 GB 或更多内存。 2 个 CPU 核心或更多。 安装了 Docker。 步骤 2: 安装 Docker 步骤 3: 安装 kubea

    2024年01月17日
    浏览(62)
  • k8s集群环境搭建以及插件安装

    终端工具MobaXterm很好用。 1、虚拟机三台(ip按自己的网络环境相应配置)(master/node) 节点 ip k8s-master 192.168.200.150 k8s-node1 192.168.200.151 k8s-node2 192.168.200.152 2、关闭防火墙(master/node) 查看防火墙状态: systemctl status firewalld 3、关闭selinux(master/node) 4、关闭swap(master/node) 5、添加主机名

    2024年01月22日
    浏览(46)
  • Linux 搭建K8s集群,最新教程,细到极致

      Hello,各位小伙伴,大家好呀。老哥最近在接触云原生相关的东西,然后的话,需要接触到k8s,之前一直没有时间搭建。今天趁着周末放假,赶紧动起来!   给大家带来的是最新版k8s集群的搭建,希望给大家带来一点小小的帮助。老哥资金有限,这次采用一主一从进行

    2024年02月03日
    浏览(34)
  • k8s的安装部署,详细过程展示(保姆级安装教程)

    k8s应用部署方式演变 在部署应用程序的方式上,主要经历了三个时代: 传统部署:互联网早期,会直接将应用程序部署在物理机上 优点:简单,不需要其它技术的参与 缺点:不能为应用程序定义资源使用边界,很难合理地分配计算资源,而且程序之间容易产生影响 虚拟化

    2024年04月25日
    浏览(36)
  • K8S历险记-从零开始kubeadm单机安装部署k8s保姆级教程

    1.查看系统版本信息以及修改配置信息 1.1 查看cpu信息 k8s安装至少需要2核2G的环境,否则会安装失败 1.2 安装k8s时,临时关闭swap ,如果不关闭在执行kubeadm部分命令会报错 1.3 安装k8s时,可以临时关闭selinux,减少额外配置 1.4 关闭防火墙 1.5 设置网桥参数 1.6 修改hosts文件

    2024年02月08日
    浏览(54)
  • 【云原生-K8s-1】kubeadm搭建k8s集群(一主两从)完整教程及kubernetes简介

    🍁 博主简介   🏅云计算领域优质创作者   🏅华为云开发者社区专家博主   🏅阿里云开发者社区专家博主 💊 交流社区: 运维交流社区 欢迎大家的加入!   Kubernetes(简称:k8s) 是Google在2014年6月开源的一个容器集群管理系统,使用Go语言开发,用于管理云平台中多

    2024年02月07日
    浏览(66)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包