安装K8S

一. 修改机器的hostname及hosts文件。

hostnamectl set-hostname k8s-master        #主

hostnamectl set-hostname k8s-node1        #node1节点

#下面命令一起负责在两机器都执行一遍

cat>>/etc/hosts<

10.211.55.3 k8s-master

10.211.55.4 k8s-node1

EOF

#查看执行效果

cat /etc/hosts

 二. 关闭防火墙和关闭SELinux

#关闭防火墙

systemctl stop firewalld

systemctl disable firewalld

#关闭SELinux

vi /etc/sysconfig/selinux  

setenforce 0         #临时更改,不需要重启。

 三. 设置系统参数

设置允许路由转发,不对bridge的数据进行处理

#创建文件

vi /etc/sysctl.d/k8s.conf

#内容

net.bridge.bridge-nf-call-ip6tables = 1

net.bridge.bridge-nf-call-iptables = 1

net.ipv4.ip_forward = 1

vm.swappiness = 0

#执行文件

sysctl -p /etc/sysctl.d/k8s.conf

如果提示没有那个文件和目录就执行下面

modprobe br_netfilter

kube-proxy开启ipvs的前置条件

cat > /etc/sysconfig/modules/ipvs.modules <

#! /bin/bash

modprobe -- ip_vs

modprobe -- ip_vs_rr

modprobe -- ip_vs_wrr

modprobe -- ip_vs_sh

modprobe -- nf_conntrack_ipv4

EOF

#更改权限

chmod 755 /etc/sysconfig/modules/ipvs.modules && bash

#执行文件命令

/etc/sysconfig/modules/ipvs.modules && lsmod | grep -e ip_vs -e nf_conntrack_ipv4

 所有节点关闭swap

swapoff -a  #临时关闭

vi /etc/fstab  #永久关闭

#注释掉以下字段

/dev/mapper/cl-swap swap           swap defaults 0 0 

清空yum缓存

yum clean all

设置yum安装源

cat < /etc/yum.repos.d/kubernetes.repo

[kubernetes]

name=kubernetes

baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/

enabled=1

gpgcheck=0r

epo_gpgcheck=0

gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg

EOF

安装

yum install -y kubelet kubeadm kubectl

kubelet设置开机启动(注意:先不启动,现在启动的话会报错)

systemctl start kubelet

查看版本

kubelet --version

四. 安装初始环境

master初始化

#kubernetes-version 为当前master服务器安装的版本,apiserver-advertise-address当前master的ip

kubeadm init --kubernetes-version=1.22.2 \

--apiserver-advertise-address=10.211.55.3 \

--image-repository registry.aliyuncs.com/google_containers \

--service-cidr=10.1.0.0/16 \

--pod-network-cidr=10.244.0.0/16

如果报错则大部分时docker驱动问题,修改docker配置

vi /etc/docker/daemon.json

#添加以下内容

"exec-opts": [ "native.cgroupdriver=systemd" ]

配置好重启docker

systemctl restart docker

重启kube

kubeadm reset

重启后再执行上面的初始化。

 初始化完成得到相应的配置提示

mkdir -p $HOME/.kube

sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config

sudo chown $(id -u):$(id -g) $HOME/.kube/config

一步步执行上面3行,下面的在副机中需要

kubeadm join 10.211.55.3:6443 --token oa0b8p.1a1fqr9vtdo2xvku \ --discovery-token-ca-cert-hash sha256:e7a0aa4ced4e30f64d89d9755022c4c2c8ba8d25a1555857332cf45ce38d370b


五. 安装Calico

在master上安装

mkdir K8S

cd K8S

wget --no-check-certificate https://docs.projectcalico.org/manifests/calico.yaml

sed -i 's/192.168.0.0/10.244.0.0/g' calico.yaml 

kubectl apply -f calico.yaml

查看POD

kubectl get pod --all-namespaces

#Calico所有的pod都处于run状态之后再走下面

至此Master的节点安装好,安装Slave节点。

1.让所有子节点加入注册,就是之前安装好的那个。

kubeadm join 10.211.55.3:6443 --token oa0b8p.1a1fqr9vtdo2xvku \ --discovery-token-ca-cert-hash sha256:e7a0aa4ced4e30f64d89d9755022c4c2c8ba8d25a1555857332cf45ce38d370b

如果忘了上面init时的join执行下面代码

kubeadm token create --print-join-command

节点执行注册完毕后查看Master的节点

kubectl get nodes


注册成功


至此安装完成。特别注意,slave节点服务器也要安装docker.之后才进行注册节点。

k8s命令学习总结:

systemctl start kubelet        #启动kubelet

kubeadm reset                    #kubeadm重启

kubectl get pod --all-namespaces    #查看所有pod

kubectl get nodes            #查看注册的节点

kubectl delete nodes k8s-node1        #删除节点:最后一个是节点名称


你可能感兴趣的:(安装K8S)