溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

CentOS7 YUM 搭建Kubernetes 1.0的步驟

發(fā)布時(shí)間:2021-09-17 16:49:38 來源:億速云 閱讀:133 作者:chen 欄目:云計(jì)算

本篇內(nèi)容主要講解“CentOS7 YUM 搭建Kubernetes 1.0的步驟”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“CentOS7 YUM 搭建Kubernetes 1.0的步驟”吧!

1. 簡要敘述#

搭建過程:

  1. 網(wǎng)絡(luò)搭建,將采用Flannel

  2. 安裝master和minion端需要的軟件

  3. 啟動(dòng)Kubernetes集群

2. 網(wǎng)絡(luò)搭建

在裸機(jī)上安裝Kubernetes需要先備好一個(gè)網(wǎng)絡(luò):我選擇的是簡單的Flannel,夠用就好。
Flannel網(wǎng)絡(luò)搭建較為簡單,部署一個(gè)etcd的集群,然后build flannel,運(yùn)行即可。此不是文章重點(diǎn)。具體可參考: http://www.slideshare.net/lorispack/using-coreos-flannel-for-docker-networking 如果遇到了問題可以咨詢我,
關(guān)于Flannel在docker網(wǎng)絡(luò)中的作用可以看這篇博客: http://my.oschina.net/xue777hua/blog/488345

3. 安裝Kubernetes集群

其中 centos-master = 192.168.56.110 centos-minion = 192.168.56.111 請?jiān)O(shè)置好/etc/hosts文件,或者是DNS。
master運(yùn)行如下組件:etcd, kube-apiserver, kube-controller-manager, kube-scheduler, kube-proxy
minion運(yùn)行如下組件:docker, kubelet, kube-proxy
當(dāng)然,前提是flannel網(wǎng)絡(luò)在兩邊都可以work, 當(dāng)然更加的前提是安裝好了docker,檢驗(yàn)的方式是:在master和minion都分別啟動(dòng)一個(gè)container,在container之間互相能夠ping對方即可。

3.1 為機(jī)器添加repo

在 master+minion上, 使用virt7-testing的repo:

[virt7-testing]
name=virt7-testing
baseurl=http://cbs.centos.org/repos/virt7-testing/x86_64/os/
gpgcheck=0

3.2 安裝Kubernetes軟件

在所有的機(jī)器上執(zhí)行 yum -y install --enablerepo=virt7-testing kubernetes 即可。
檢查etcd的版本是否為 0.4.6-7 , 如果不是,則刪除etcd并且從rpm安裝:

yum erase etcd
yum install http://cbs.centos.org/kojifiles/packages/etcd/0.4.6/7.el7.centos/x86_64/etcd-0.4.6-7.el7.centos.x86_64.rpm
yum -y install --enablerepo=virt7-testing kubernetes

##3.3 配置Kubernetes集群 ## 1.設(shè)置 master+minion的 /etc/kubernetes/config 為:

KUBE_ETCD_SERVERS="--etcd_servers=http://centos-master:4001"
KUBE_LOGTOSTDERR="--logtostderr=true"
KUBE_LOG_LEVEL="--v=0"
KUBE_ALLOW_PRIV="--allow_privileged=false"

特別是 KUBE_ETCD_SERVERS 特別重要,表示要連接的etcd的服務(wù),Kubernetes的各種信息:例如物理機(jī),容器的基本信息都是存儲(chǔ)在Kubernetes上面的。

2.設(shè)置 master+minion的 /etc/kubernetes/apiserver 為(只列出了重要的幾個(gè)配置):

# 需要連接的master的地址,kubelet需要連接到kube-apiserver來工作
KUBE_API_ADDRESS="--address=centos-master" 
KUBE_API_PORT="--port=8080"
# 服務(wù)所在的ip地址范圍,服務(wù)是一組pod的組合產(chǎn)物
KUBE_SERVICE_ADDRESSES="--service-cluster-ip-range=10.254.0.0/16"

3.設(shè)置 minion端的 /etc/kubernetes/kubelet 文件

#  kubelet綁定的ip地址
KUBELET_ADDRESS="--address=0.0.0.0"
# kubelet的通信段耨
KUBELET_PORT="--port=10250"
# kubelet的hostname,到時(shí)候用kubectl get po 可以拿到的結(jié)果
KUBELET_HOSTNAME="--hostname_override=centos-minion"
# api-server的通信端口
KUBELET_API_SERVER="--api_servers=http://centos-master:8080"

4.設(shè)置iptables 8080, 10250 的tcp端口都添加到防火墻列外,另外安裝flannel也要記得設(shè)置好iptables,具體見我的博客:http://my.oschina.net/xue777hua/blog/488345

#4. 啟動(dòng)Kubernetes集群 # 個(gè)人經(jīng)驗(yàn)是執(zhí)行下面的命令之后使用 systemctl status -l $SERVICES 檢驗(yàn)一遍,如果有問題執(zhí)行systemctl restart $SERVICES 。 ##4.1 啟動(dòng)master ##

for SERVICES in etcd kube-apiserver kube-controller-manager kube-scheduler kube-proxy; do 
    systemctl restart $SERVICES
    systemctl enable $SERVICES
    systemctl status $SERVICES 
done

##4.2 啟動(dòng)minion##

for SERVICES in kube-proxy kubelet docker; do 
    systemctl restart $SERVICES
    systemctl enable $SERVICES
    systemctl status $SERVICES 
done

啟動(dòng)完畢后,master端執(zhí)行kubectl get no,如果能看到下面的結(jié)果即為成功:

[03:01 AM root@centos-master ~]$ kubectl get no
NAME            LABELS                                 STATUS
centos-minion   kubernetes.io/hostname=centos-minion   Ready

到此,相信大家對“CentOS7 YUM 搭建Kubernetes 1.0的步驟”有了更深的了解,不妨來實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI