kubernetes v1.14.0 kubeadm安装文档

1. 停止防火墙

# systemctl disable firewalld

# systemctl stop firewalld

2. 禁用SELinux,让容器可以读取主机文件系统

# setenforce 0  临时办法,重启后失效

修改/etc/sysconfig/selinux 将SELINUX=enforcing改为SELINUX=disabled,永久办法,重启后有效

3. 禁用交换

# swapoff -a 临时办法,重启后无效

# vim /etc/fstab

注释掉 /dev/mapper/centos-swap swap,重启后有效

4. 安装docker

a. 安装相关package

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

b. 添加docker仓库

# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

c. 安装docker-ce

# yum update && yum install docker-ce-18.06.2.ce

d. 创建文件夹

# mkdir /etc/docker

e. 配置国内镜像,提供加速功能,修改cgroup driver为systemd

# vim /etc/docker/daemon.json

{

"registry-mirrors":["https://registry.docker-cn.com"],
"exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "storage-driver": "overlay2"

}

f. 将docker设为开机启动,启动docker

# systemctl enable docker&& systemctl restart docker

g. 查看docker状态,应该为running

# systemctl status docker

5. 配置yum源,否则下载不到kubernetes工具

# vim /etc/yum.repos.d/kubernetes.repo

[kubernetes]

name=Kubernetes Repository

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

enabled=1

gpgcheck=0

6. 安装kubeadm,kubectl,kubelet

# yum install -y kubelet-1.14.0-0 kubeadm-1.14.0-0 kubectl-1.14.0-0 --disableexcludes=kubernete

7. 取得默认初始化参数文件

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

# vim init.default.yaml

找到对应配置,修改为以下内容

imageRepository: docker.io/dustise

networking:

   podSubnet: "192.168.0.0/16"

localAPIEndpoint:
  advertiseAddress: 你的主机IP 
  bindPort: 6443

# mv init.default.yaml init-config.yaml

8. 处理一些环境配置问题

# vim bridge-nf-call-iptables

输入1,保存

# cp bridge-nf-call-iptables /proc/sys/net/bridge/

选y覆盖文件

确保虚拟机有分配最少2个核心,如果只有1个,会报Warning

9. 安装master

下载相应的docker镜像

# kubeadm config images pull --config=init-config.yaml

# kubeadm init --config=init-config.yaml

看到Your Kubernetes control-plane has initialized successfully!,操作成功

10. 执行以下动作

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

11. 验证配置

# kubectl get -n kube-system configmap

12. 安装网络插件

访问 https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/#pod-network

选择你想要安装的插件进行安装

比如weave

# kubectl apply -f "https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 | tr -d '\n')"

master安装成功

安装Node

1. 安装kubeadm和kubelet

# yum install -y kubelet-1.14.0-0 kubeadm-1.14.0-0 --disableexcludes=kubernete

2. 创建文件join-config.yaml

apiVersion: kubeadm.k8s.io/v1beta1
kind: JoinConfiguration
discovery:
  bootstrapToken:
    apiServerEndpoint: 上一步建立的masterIP地址:6443
    token: abcdef.0123456789abcdef 上一步初始化master最后的一行信息
    unsafeSkipCAVerification: true
  tlsBootstrapToken: abcdef.0123456789abcdef

nodeRegistration:
  criSocket: /var/run/dockershim.sock
  name: node1

3. 在master和node机器上为join-config.yaml中的name:node1配置hosts

# vim /etc/hosts

你的node节点IP    node1

3. 按照上一步配置docker,修改cgroup driver为systemd,重启docker

# vim /etc/docker/daemon.json

{

"registry-mirrors":["https://registry.docker-cn.com"],
"exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "storage-driver": "overlay2"

}

# systemctl enable docker && systemctl restart docker

4. 加入node

# kubeadm join --config=join-config.yaml

node安装完成

验证kubernetes集群是否安装完成

# kubectl get pods --all-namespaces

看到pods都为 Running,表示集群安装成功

# kubectl get nodes

看到下图,说明node安装成功

 

问题说明:

1. pod不断重启 

如果kubectl get pods --all-namespaces显示有的pods没有启动,或者不断重启,说明虚拟机资源耗尽,用top命令查看资源使用率,调大内存或者磁盘空间,我用了8G内存,启动正常

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值