日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
詳解k8skubernetes集群搭建步驟

k8s全稱kubernetes,這個名字大家應(yīng)該都不陌生,k8s是為容器服務(wù)而生的一個可移植容器的編排管理工具,越來越多的公司正在擁抱k8s,并且當(dāng)前k8s已經(jīng)主導(dǎo)了云業(yè)務(wù)流程,推動了微服務(wù)架構(gòu)等熱門技術(shù)的普及和落地,正在如火如荼的發(fā)展。

成都創(chuàng)新互聯(lián)專注于蠡縣網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供蠡縣營銷型網(wǎng)站建設(shè),蠡縣網(wǎng)站制作、蠡縣網(wǎng)頁設(shè)計、蠡縣網(wǎng)站官網(wǎng)定制、小程序開發(fā)服務(wù),打造蠡縣網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供蠡縣網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。

k8s集群部署方案

如下是我的集群部署策略,1個master + 2個node(minion1.2之前的叫法)。我的存儲集群etcd是單點集群,不推薦此做法。網(wǎng)絡(luò)使用的是flannel虛擬二次網(wǎng)絡(luò)。

快速安裝與配置kubernetes集群搭快速安裝與配置kubernetes集群搭

Kubernetes具有完備的集群管理能力:

  包括多層次的安全防護(hù)和準(zhǔn)入機(jī)制
  多租戶應(yīng)用支撐能力
  透明的服務(wù)注冊和服務(wù)發(fā)現(xiàn)機(jī)制
  內(nèi)建智能負(fù)載均衡器
  強(qiáng)大的故障發(fā)現(xiàn)和自我修復(fù)能力
  服務(wù)滾動升級和在線擴(kuò)容能力
  可擴(kuò)展的資源自動調(diào)度機(jī)制
  以及多粒度的資源管理能力

同時,kubernetes提供了完善的管理工具,這些工具涵蓋了包括開發(fā)、部署測試、運(yùn)維監(jiān)控在內(nèi)的各個環(huán)節(jié)。

在kubernetes中,service(服務(wù))是分布式集群架構(gòu)的核心,一個service對象擁有如下關(guān)鍵特征:

  擁有一個唯一指定的名字(比如mysql-service)。
  擁有一個虛擬IP(Cluster IP、service IP或VIP)和端口號。
  能夠提供某種遠(yuǎn)程服務(wù)能力。
  被映射到了提供這種服務(wù)能力的一組容器應(yīng)用上。

Kubernetes.io開發(fā)了一個交互式教程,通過WEB瀏覽器就能使用預(yù)先部署好的一個Kubernetes集群,快速體驗kubernetes的功能和應(yīng)用場景。

鏈接:https://kubernetes.io/docs/tutorials/kubernetes-basics/

K8s官方下載地址:https://github.com/kubernetes

快速安裝與配置kubernetes集群搭快速安裝與配置kubernetes集群搭

環(huán)境準(zhǔn)備工作

主機(jī)名     操作系統(tǒng)               IP地址
master  Centos 7.4-x86_64  192.168.2.102
node1  Centos 7.4-x86_64  192.168.2.108
node2  Centos 7.4-x86_64  192.168.2.228

關(guān)閉CentOS7自帶的防火墻服務(wù)

systemctl disable firewalld
systemctl stop firewalld

修改主機(jī)名

[root@localhost ~]# hostnamectl  master //192.168.2.102
[root@localhost ~]# hostnamectl  node1 //192.168.2.108
[root@localhost ~]# hostnamectl  node2 //192.168.2.228

更改Hostname為 master、node1、node2,配置IP地址,配置3臺測試機(jī)的/etc/hosts文件(在三臺服務(wù)器上同步)

[root@master ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.2.102 master
192.168.2.108 node1
192.168.2.228 node2
[root@master ~]#

時間校對(三臺機(jī)器都做時間校對)

[root@master ~]# ntpdate ntp1.aliyun.com
13 Sep 14:48:02 ntpdate[1596]: adjust time server 120.25.115.20 offset -0.015854 sec

[root@master ~]# hwclock
2018年09月13日 星期四 14時49分51秒  -0.646898 秒

安裝Kubernetes,配置dockers鏡像

[root@master ~]# wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

快速安裝與配置kubernetes集群搭快速安裝與配置kubernetes集群搭

配置kubernetes倉庫

[root@master yum.repos.d]# vim kubernetes.repo
[kubernetes]
name=kubernetes Repo
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
enabled=1

快速安裝與配置kubernetes集群搭快速安裝與配置kubernetes集群搭

[root@master ~]# wget https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
[root@master ~]# rpm --import rpm-package-key.gpg
[root@master yum.repos.d]# yum repolist

[root@master yum.repos.d]# scp CentOS-Base.repo docker-ce.repo kubernetes.repo node1:/etc/yum.repos.d/

安裝docker和kubelet

[root@master ~]# yum -y install docker-ce kubelet kubeadm kubectl

環(huán)境變量

[root@master ~]# vim /usr/lib/systemd/system/docker.service
手動添加一行
Environment="HTTPS_PROXY=http://www.ik8s.io:10080"
Environment="NO_PROXY=127.0.0.0/8,172.0.0.0/16"

[root@master ~]# systemctl daemon-reload

啟動docker
[root@master ~]# systemctl start docker

設(shè)置開機(jī)啟動
[root@master ~]# systemctl enable docker
[root@master ~]# docker info

保證輸出的都是1
[root@master ~]# cat /proc/sys/net/bridge/bridge-nf-call-ip6tables
1
[root@master ~]# cat /proc/sys/net/bridge/bridge-nf-call-iptables
1

[root@master ~]# rpm -ql kubelet
/etc/kubernetes/manifests  #清單目錄
/etc/sysconfig/kubelet   #配置文件
/etc/systemd/system/kubelet.service  
/usr/bin/kubelet   #主程序

設(shè)置開機(jī)啟動
[root@master ~]# systemctl enable kubelet

初始化

[root@master ~]# kubeadm init --kubernetes-version=v1.11.1 --pod-network-cidr=10.244.0.0/16 --service-cidr=10.96.0.0/12

報錯信息,解決辦法:

[root@master ~]# vim /etc/sysconfig/kubelet
KUBELET_EXTRA_ARGS="--fail-swap-on=false"

[root@master ~]# kubeadm init --kubernetes-version=v1.11.1 --pod-network-cidr=10.244.0.0/16 --service-cidr=10.96.0.0/12 --ignore-preflight-errors=Swap

注意這一條命令需要保存好(添加集群使用)

kubeadm join 192.168.2.102:6443 --token ns4kps.j8cuqwf78emp5a5b --discovery-token-ca-cert-hash sha256:b71b7e52c318959bab3f05f02f6fe51d6396d8c54ea6849ec7556927d1c6c88a

[root@master ~]# docker image ls

[root@master ~]# ss –ntl

[root@master ~]# mkdir -p $HOME/.kube
[root@master ~]# cp -i /etc/kubernetes/admin.conf $HOME/.kube/config

檢測組件運(yùn)行是否正常
[root@master ~]# kubectl get cs

查看并驗證節(jié)點信息是否成功

[root@master ~]# kubectl get nodes
NAME      STATUS     ROLES     AGE       VERSION
master    NotReady   master    44m       v1.11.3

安裝flannel

[root@master ~]# kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
[root@master ~]# curl -sSL "https://github.com/coreos/flannel/blob/master/Documentation/kube-flannel.yml?raw=true" | kubectl create -f -

[root@master ~]# docker image ls

查看并驗證節(jié)點信息是否成功

[root@master ~]# kubectl get  nodes
NAME      STATUS    ROLES     AGE       VERSION
master    Ready     master    2h        v1.11.3

查看pod運(yùn)行情況

[root@master ~]# kubectl get pods -n kube-system

配置文件傳到node1、node2

[root@master ~]# scp /usr/lib/systemd/system/docker.service node1:/usr/lib/systemd/system/docker.service

[root@master ~]# scp /etc/sysconfig/kubelet node1:/etc/sysconfig/

[root@master ~]# scp /usr/lib/systemd/system/docker.service node2:/usr/lib/systemd/system/docker.service

[root@master ~]# scp /etc/sysconfig/kubelet node2:/etc/sysconfig/

node1服務(wù)器配置

[root@node1 ~]# wget https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg

[root@node1 ~]# rpm --import rpm-package-key.gpg

安裝docker、kubelet

[root@node1 ~]# yum -y install docker-ce kubelet kubeadm

啟動docker

[root@node1 ~]# systemctl start docker
[root@node1 ~]# systemctl enable docker kubelet

[root@node1 ~]# docker info

添加主集群里

[root@node1 ~]# kubeadm join 192.168.2.102:6443 --token ns4kps.j8cuqwf78emp5a5b --discovery-token-ca-cert-hash sha256:b71b7e52c318959bab3f05f02f6fe51d6396d8c54ea6849ec7556927d1c6c88a --ignore-preflight-errors=Swap

查看下載鏡像

[root@node1 ~]# docker image ls

在master服務(wù)器上可以查節(jié)點信息

[root@master ~]# kubectl get nodes
NAME      STATUS    ROLES     AGE       VERSION
master    Ready     master    3h        v1.11.3
node1     Ready         7m        v1.11.3

[root@master ~]# kubectl get pods -n kube-system -o wide

node2服務(wù)器配置

[root@node2 ~]# wget https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg

[root@node2 ~]# rpm --import rpm-package-key.gpg

安裝docker、kubelet

[root@node2 ~]#  yum -y install docker-ce kubelet kubeadm

啟動docker

[root@node2 ~]# systemctl start docker
[root@node2 ~]# systemctl enable docker kubelet
[root@node2 ~]# docker info

添加主集群里

[root@node2 ~]# kubeadm join 192.168.2.102:6443 --token ns4kps.j8cuqwf78emp5a5b --discovery-token-ca-cert-hash sha256:b71b7e52c318959bab3f05f02f6fe51d6396d8c54ea6849ec7556927d1c6c88a --ignore-preflight-errors=Swap

在master服務(wù)器上可以查節(jié)點信息

[root@master ~]# kubectl get nodes

[root@master ~]# kubectl get pods -n kube-system -o wide


本文名稱:詳解k8skubernetes集群搭建步驟
本文URL:http://www.dlmjj.cn/article/cdjpjgi.html