簡介:
需要學習的都明白,這里就不贅述了。
本文采用CentOS-7-x86_64-DVD-1810.iso
一:安裝操作系統
本來是喜歡用fedora的,但是fedora貌似包維護的不好,就又開始用CentOS了。
自己裝吧。
二:安裝Docker
1.安裝yum-utils
這個是yum擴展工具,可以擴展yum-config-manager命令
yum install -y yum-utils device-mapper-persistent-data lvm2
2.配置docker-ce源
為了使用docker官方編譯的docker,配置docker官方docker-ce的源
yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3.查看docker的版本
Kubernetes 1.15當前支持的docker版本列表是1.13.1, 17.03, 17.06, 17.09, 18.06, 18.09。
yum list docker-ce.x86_64 --showduplicates |sort -r
4.安裝指定版本的docker
yum install -y docker-ce-18.09.8-3.el7
4.啟動docker
systemctl start docker && systemctl enable docker
4.安裝指定版本的docker
三:安裝kubeadm
1.配置阿里源
官方給的說明是EOF模式配置
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
2.安裝kubelet kubeadm kubectl
yum install -y kubelet kubeadm kubectl
3.啟動kubelet
systemctl enable kubelet && systemctl start kubelet
四:初始化kubernetes
1.初始化
這里使用kubeadm init來初始化集群
kubeadm init
不出意外的出錯了。
[WARNING Firewalld]: firewalld is active, please ensure ports [6443 10250] are open or your cluster may not function correctly [WARNING IsDockerSystemdCheck]: detected "cgroupfs" as the Docker cgroup driver. The recommended driver is "systemd". Please follow the guide at https://kubernetes.io/docs/setup/cri/ [WARNING Hostname]: hostname "centos7-01" could not be reached [WARNING Hostname]: hostname "centos7-01": lookup centos7-01 on 192.168.1.1:53: no such host
一個防火牆問題,一個docker文件系統問題,兩個hostname問題。
2.配置防火牆
添加服務kubernetes配置文件
通過EOF方式,增加服務配置文件。
firewall-cmd --new-service=kubernetes --permanent
編輯服務配置文件/etc/firewalld/services/kubernetes.xml
cat <<EOF > /etc/firewalld/services/kubernetes.xml
<?xml version="1.0" encoding="utf-8"?>
<service>
<short>kubernetes</short>
<description>Kubernetes cluster </description>
<port protocol="tcp" port="6443"/>
<port protocol="tcp" port="10250"/>
</service>
EOF
添加服務
firewall-cmd --add-service=kubernetes --permanent
重啟生效
systemctl restart firewalld
3.修改docker配置
創建或修改 /etc/docker/daemon.json 文件
{ "exec-opts": ["native.cgroupdriver=systemd"] }
可選配置
registry-mirrors 鏡像加速
graph docker存儲路徑
{ "registry-mirrors": ["http://**************.daocloud.io"], "graph": "/storage/docker" }
4.修改host文件
編輯/etc/hosts文件
按上面的示例創建IP和主機名對應的記錄
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.1.11 k8s-master1 192.168.1.12 k8s-master2 192.168.1.21 k8s-node001 192.168.1.22 k8s-node002
5.預下載容器鏡像
kubeadm config images pull --image-repository registry.aliyuncs.com/google_containers
6.
7.
8.
9.
10.