吃透 Kubernetes 部署安装【1】

一、 kube-proxy 开启ipvs 的前置条件

//1、加载netfilter模块

modprobe br_netfilter

//2、添加配置文件

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

#!/bin/bash

modprobe  --  ip_vs

modprobe  --  ip_vs_rr

modprobe  --  ip_vs_wrr

modprobe  --  ip_vs_sh

modprobe  --  nf_conntrack_ipv4

EOF

//3、赋予权限并引导

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

二、安装 docker 软件

//1、docker依赖

yum install -y yum-utils device-mapper-persistent-data lvm2

//2、导入阿里云的docker-ce仓库

yum-config-manager  \

--add-repo  \http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

//3、更新系统安装docker-ce

yum update -y && yum install -y docker-ce

//4、uname -r  检测版本,再设置版本,后又重启reboot

grub2-set-default "CentOS Linux (4.4.182-1.el7.elrepo.x86_64) 7 (Core)"

//5、启动

systemctl start docker

//6、开机自启

systemctl enable docker

//7、配置deamon

cat > /etc/docker/daemon.json <<EOF

{

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

"log-driver": "json-file",

"log-opts": {

"max-size": "100m"

}

}

EOF

//8、创建目录存放docker配置文件

mkdir -p  /etc/systemd/system/docker.service.d

//9、重启docker

systemctl daemon-reload && systemctl restart docker && systemctl enable docker

三、安装 Kubeadm(主从配置)

//1、导入阿里云的YUM仓库

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

[kubernetes]

name=Kubernetes

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

enabled=1

gpgcheck=0

repo_gpgcheck=0

gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg

http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg

EOF

//2、在每个节点安装kubeadm(初始化工具)、kubectl(命令行管理工具)、kubelet(与docker的cri交互创建容器)

yum -y install kubeadm-1.15.1 kubectl-1.15.1 kubelet-1.15.1

// 3、k8s开机自启.kubelet需要与容器接口进行交互启动容器,而k8s通过Kubeadm安装出来以后都是以pod方式存在,也就是底层以容器的方式运行,所以一定要开机自启

systemctl enable kubelet.service

四、初始化主节点(master )

1 、导入镜像

Xshell rz 命令

kubeadm-basic.images.tar.gz

2 、解压

tar -zxvf kubeadm-basic.images.tar.gz

3 、导入,创建文件load-images.sh

4 、编辑load-images.sh

5 、赋予权限并执行

6 、复制到其他节点

scp -r kubeadm-basic.images load-images.sh root@k8s-node01:/root/

节点导入 ./load-images.sh

7 、初始化节点

//显示init默认的初始化文件,并打印出来到kubeadm-config.yaml文件中

kubeadm config print init-defaults > kubeadm-config.yaml

8 、获得了 kubeadm的初始化模板,并修改

8.1 ip 地址修改,不知道自己的ifconfig

8.2 版本号修改

8.3 、添加pod 网段:podSubnet: “10.244.0.0/16”

8.4 、修改默认的调度方式
---

apiVersion: kubeproxy.config.k8s.io/v1alpha1

kind: KubeProxyConfiguration

featureGates:

SupportIPVSProxyMode: true

mode: ipvs

9 、指定从那个yaml 文件进行初始化安装,自动颁发证书,并将所有信息写入到 kubeadm-init.log

kubeadm init --config=kubeadm-config.yaml --experimental-upload-certs | tee kubeadm-init.log

10 、查看 kubeadm-init.log

11 、查看证书

12 、成功后根据日志提示操作

13 、查看节点

五、部署网络

其他随笔:

拷贝镜像到其他文件

scp -r kubeadm-basic.images load-images.sh root@k8s-node01:/root/

wget https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
 节点加入集群

kubeadm join 192.168.100.179:6443 --token abcdef.0123456789abcdef \

--discovery-token-ca-cert-hash sha256:2bb6e02e45b59bdba86e0478b60d984730995924379c2973a4049a601316689f

//查看日志

vim kubeadm-init.log

//查看节点信息

kubectl get pod -n kube-system

kubectl get pod -n kube-system -w   //监视

kubectl get pod -n kube-system -o wide   // 详细信息

//存放文件

mv install-k8s  / /usr/local/

nmtui命令调出修改窗口
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值