kubeadm搭建k8s

一   k8s简介

 k8s官方中文网站

Kuberneteshttps://kubernetes.io/zh-cn/

master节点:master 节点是kubernets集群的控制节点,负责整个集群的控制

  • kube-aposerver :集群控制的入口,提供 HTTP REST服务
  • kube-controller-manager:所有资源对象的自动化控制中心
  • kube-schedler:负责 pod 调度

Node节点:node节点是集群的工作节点

  • kubelet:负责pod的创建,启动,监控等等
  • kube-proxy:实现kubernets service的通信和负载均衡
  • pod:pod是kubernets最基本的部署调度单元
  • Replica=2: 是pod副本的抽象,用于解决pod的扩容和伸缩
  • Deployment: 表示部署
  • service:重要的资源对象,定义访问入口
  • kube-proxy: 代理 做端口转发,相当于负载均衡器
  • etcd:kubernets的配置文件

二 ,部署k8s集群

部署节点

计算机        IP
master192.168.1.110
node1192.168.1.111

1. 关闭防火墙,swap分区,内核参数修改

[root@master ~]# swapoff -a
##这是临时关闭
##若需要永久关闭,将swap分区取消挂载 

[root@master ~]# modprobe br_netfilter   ##用于桥接流量转发至iptables
[root@master ~]# echo "modprobe br_netfilter " >> /etc/profile
[root@master ~]# cat > /etc/sysctl.d/k8s.conf <<EOF
> net.bridge.bridge-nf-call-ip6tables =1 
> net.bridge.bridge-nf-call-iptables=1
> net.ipv4.ip_forward = 1
> EOF
[root@master ~]# cat /etc/sysctl.d/k8s.conf 
net.bridge.bridge-nf-call-ip6tables = 1 
net.bridge.bridge-nf-call-iptablees = 1
net.ipv4.ip_forward = 1

[root@master sysctl.d]# sysctl -p /etc/sysctl.d/k8s.conf
##加载k8s文件

2.安装docker和k8s

##安装k8s
cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF

setenforce 0
yum install -y kubelet kubeadm kubectl
systemctl enable kubelet && systemctl start kubelet ##开机启动
安装docker

# step 1: 安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加软件源信息
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3
sudo sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
# Step 4: 更新并安装Docker-CE
sudo yum makecache fast
sudo yum -y install docker-ce
# Step 4: 开启Docker服务
sudo service docker start

# 注意:
# 官方软件源默认启用了最新的软件,您可以通过编辑软件源的方式获取各个版本的软件包。例如官方并没有将测试版本的软件源置为可用,您可以通过以下方式开启。同理可以开启各种测试版本等。
# vim /etc/yum.repos.d/docker-ce.repo
#   将[docker-ce-test]下方的enabled=0修改为enabled=1
#
# 安装指定版本的Docker-CE:
# Step 1: 查找Docker-CE的版本:
# yum list docker-ce.x86_64 --showduplicates | sort -r
#   Loading mirror speeds from cached hostfile
#   Loaded plugins: branch, fastestmirror, langpacks
#   docker-ce.x86_64            17.03.1.ce-1.el7.centos            docker-ce-stable
#   docker-ce.x86_64            17.03.1.ce-1.el7.centos            @docker-ce-stable
#   docker-ce.x86_64            17.03.0.ce-1.el7.centos            docker-ce-stable
#   Available Packages
# Step2: 安装指定版本的Docker-CE: (VERSION例如上面的17.03.0.ce.1-1.el7.centos)
# sudo yum -y install docker-ce-[VERSION]

3. 安装docker-ce 

[root@master slurm-21.08.8]# yum -y install yum-utils device-mapper-persistent-data lvm2


[root@node1 slurm-21.08.8]# yum -y install docker-ce docker-ce-cli containerd.io -y
##安装完成

4.修改docker cgourps

[root@master docker]# vim /etc/docker/daemon.json 
[root@master docker]# cat /etc/docker/daemon.json 
{
"exec-opts":["native.cgroupdriver=systemd"]
}


[root@node1 log]# systemctl daemon-reload
[root@node1 log]# systemctl restart docker

5.安装docker k8s镜像

  964  kubelet --version  ##查看kubelet版本
  965  kubeadm config images list ##查看该版本需要的安装装
##其全部采用阿里云的节点,默认的镜像访问不过去
  966  docker pull registry.aliyuncs.com/google_containers/kube-apiserver:v1.20.15
  967  docker pull registry.aliyuncs.com/google_containers/kube-controller-manager:v1.20.15
  968  docker pull registry.aliyuncs.com/google_containers/kube-scheduler:v1.20.15
  969  docker pull registry.aliyuncs.com/google_containers/kube-proxy:v1.20.15
  970  docker pull registry.aliyuncs.com/google_containers/pause:3.2
  971  docker pull registry.aliyuncs.com/google_containers/etcd:3.4.13-0
  972  docker pull registry.aliyuncs.com/google_containers/coredns:1.7.0

master节点初始化

 981  kubeadm init --apiserver-advertise-address=192.168.1.110 --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.20.6 --service-cidr=10.96.0.0/12 --pod-network-cidr=10.244.0.0/16

 中间可能会报很多错,等待系统集群响应,基本就是重启kubeadm服务,运行完会生成

节点文件

[root@master ~]# cat 1.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

Alternatively, if you are the root user, you can run:

  export KUBECONFIG=/etc/kubernetes/admin.conf

You should now deploy a pod network to the cluster.
Run "kubectl apply -f [podnetwork].yaml" with one of the options listed at:
  https://kubernetes.io/docs/concepts/cluster-administration/addons/

Then you can join any number of worker nodes by running the following on each as root:

kubeadm join 192.168.1.110:6443 --token e1nhwz.5hbalmmlla7o8v9q \
    --discovery-token-ca-cert-hash sha256:ee13af1696f80b40cc2be4dccbd0525e4ce885d16e9a24e3f30aebbb854701a2 
##大致意思就是执行mkdir 命令 添加环境变量

子节点初始化

kubeadm join 192.168.1.110:6443 --token e1nhwz.5hbalmmlla7o8v9q \
    --discovery-token-ca-cert-hash

##直接运行主节点的生成文件即可

查看节点

[root@master ~]# kubectl get nodes
NAME     STATUS     ROLES                  AGE   VERSION
master   NotReady   control-plane,master   21h   v1.20.6
node1    NotReady   <none>                 21h   v1.20.6

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值