鏡像下載、域名解析、時(shí)間同步請(qǐng)點(diǎn)擊 阿里云開源鏡像站
一探颈、環(huán)境要求
系統(tǒng)版本:CentOS7.x版本
硬件配置:內(nèi)存2GB以上 cpu2核以上 硬盤大于30G
集群網(wǎng)絡(luò)配置:集群中所有服務(wù)器內(nèi)網(wǎng)必須互通词裤,并且需要訪問外網(wǎng)來拉取鏡像
禁用swap分區(qū)
二、k8s基礎(chǔ)環(huán)境操作:
1豫尽、關(guān)閉防火墻:
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl disable firewalld
2篙梢、關(guān)閉selinux:
[root@localhost ~]# sed -i 's/enforcing/disabled/' /etc/selinux/config
[root@localhost ~]# getenforce
3、關(guān)閉swap分區(qū):
臨時(shí)關(guān)閉:
[root@localhost ~]# swapoff -a
永久關(guān)閉:注釋掉/etc/fstab文件中的swap行
4美旧、進(jìn)行hosts文件編輯:
192.168.8.146 k8s-master
192.168.8.141 k8s-node1
192.168.8.129 k8s-node2
5渤滞、將橋接的IPv4流量傳遞到iptables的鏈
[root@localhost ~]# cat > /etc/sysctl.d/k8s.conf << EOF
> net.bridge.bridge-nf-call-ip6tables = 1
> net.bridge.bridge-nf-call-iptables = 1
> EOF
[root@localhost ~]# sysctl --system
6、開啟IP轉(zhuǎn)發(fā)功能
[root@localhost ~]# echo "1" > /proc/sys/net/ipv4/ip_forward
三榴嗅、安裝docker(三臺(tái)機(jī)器都操作)
1妄呕、卸載舊版docker
[root@localhost ~]# yum remove docker docker-common docker-selinux docker-engine
2、安裝一些必要的系統(tǒng)工具
[root@localhost ~]# yum install -y yum-utils device-mapper-persistent-data lvm2
3嗽测、配置docker的穩(wěn)定版本倉庫
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
4绪励、更新安裝包索引
[root@localhost ~]# yum makecache fast
5、安裝docker ce
[root@localhost ~]# yum -y install docker-ce-18.06.1.ce-3.el7
6唠粥、開機(jī)自啟和啟動(dòng)docker
[root@localhost ~]# systemctl enable docker && systemctl start docker
7优炬、查看docker版本
[root@localhost ~]# docker --version
8、添加阿里云YUM軟件源
[root@localhost ~]# vim /etc/yum.repos.d/kubernetes.repo
[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
9厅贪、
[root@localhost ~]# yum clean all
10蠢护、
[root@localhost ~]# yum makecache
安裝kubeadm,kubelet和kubectl
11养涮、由于版本更新頻繁葵硕,這里指定版本號(hào)部署:
[root@localhost ~]# yum install -y kubelet-1.15.0 kubeadm-1.15.0 kubectl-1.15.0
[root@localhost ~]# systemctl enable kubelet
四、部署Kubernetes Master(這個(gè)在master主機(jī)里操作):
[root@k8s-master~]#kubeadm init --apiserver-advertise-address=192.168.8.146 --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.15.0 --service-cidr=10.1.0.0/16 --pod-network-cidr=10.244.0.0/16
注意:192.168.8.146ip是master主機(jī)的ip地址
五贯吓、配置kubectl訪問集群(三臺(tái)機(jī)器操作):
1懈凹、
[root@localhost ~]# mkdir -p $HOME/.kube
2、
[root@k8s-master ~]# cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
3悄谐、
[root@k8s-master ~]# chown $(id -u):$(id -g) $HOME/.kube/config
六介评、Master安裝flannel(主機(jī)master里操作):
[root@k8s-master~]#kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
1、查看索引pod
[root@k8s-master ~]# kubectl get pod -n kube-system
2、查看節(jié)點(diǎn)
[root@k8s-master ~]# kubectl get node
七们陆、加入node節(jié)點(diǎn)(在兩臺(tái)node上做):
1寒瓦、
[root@k8s-node1 ~]# kubeadm join 192.168.8.146:6443 --token vhykt2.0jjdgdcnclxhts41 --discovery-token-ca-cert-hash sha256:bf42d67996e593a1e5844ba717d97e1249ed85bf86d83322b88c108d2f6a3dc1
2、查看node1節(jié)點(diǎn)是否成功(在node1上做)
[root@k8s-node1 ~]# docker ps
八坪仇、查看節(jié)點(diǎn)信息(在master操作)
[root@k8s-master ~]# kubectl get node
九杂腰、部署dashboard(master主機(jī)操作)
[root@k8s-master~]#wget https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/recommended/kubernetes-dashboard.yaml
1、
[root@k8s-master ~]# vim kubernetes-dashboard.yaml
2椅文、安裝dashboard
[root@k8s-master ~]# kubectl apply -f kubernetes-dashboard.yaml
3喂很、使用master節(jié)點(diǎn)ip地址+端口來訪問,協(xié)議是https的
查看Dashboard端口信息:
[root@k8s-master ~]# kubectl --namespace=kube-system get service kubernetes-dashboard
4皆刺、以我自己的服務(wù)器為訪問對(duì)象少辣,使用 https://172.16.204.130:30310即可訪問
5、Token
[root@k8s-master ~]# kubectl create serviceaccount dashboard-admin -n kube-system
[root@k8s-master~]#kubectl create clusterrolebinding dashboard-admin --clusterrole=cluster-admin --serviceaccount=kube-system:dashboard-admin
[root@k8s-master ~]# kubectl get secret -n kube-system
6羡蛾、查看token的具體信息
[root@k8s-master~]# kubectl describe secret dashboard-admin-token-92djb -n kube-system
7毒坛、把密令輸入在令牌中
8、登陸成功的頁面:
本文轉(zhuǎn)自:https://blog.51cto.com/u_15397018/5367484