centOS7.2使用yum安裝kubernetes

kubernetes學習1--centOS7.2使用yum安裝kubernetes.

準備3臺服務器,

172.16.126.227-master

172.16.126.228-node1

172.16.126.251-node2

截止2015年9月1日,CentOS 已經把 Kubernetes 加入官方源,所以現在安裝Kubernetes已經方便很多。

master包含kube-apiserver kube-scheduler kube-controller-manager etcd4個組件

node包含kube-proxy kubelet flannel 3個組件

1. kube-apiserver:位于master節點,接受用戶請求。

2. kube-scheduler:位于master節點,負責資源調度,即pod建在哪個node節點。

3. kube-controller-manager:位于master節點,包含ReplicationManager,Endpointscontroller,Namespacecontroller,and Nodecontroller等。

4. etcd:分布式鍵值存儲系統,共享整個集群的資源對象信息。

5. kubelet:位于node節點,負責維護在特定主機上運行的pod。

6. kube-proxy:位于node節點,它起的作用是一個服務代理的角色

1.準備工作 在3臺服務器上都執行下面的操作。

1關閉防火墻? ? 每臺機器禁用iptables 避免和Docker 的iptables沖突:

? ? 1. #systemctl stop firewalld?

? ? 2. #systemctl disable firewalld?

2安裝NTP

為了讓各個服務器的時間保持一致,還需要為所有的服務器安裝NTP:

? ? 1. # yum -y install ntp?

? ? 2. # systemctl start ntpd?

? ? 3. # systemctl enable ntpd?

3禁用selinux

? ? 1. #vi /etc/selinux/config? ?

? ? ? #SELINUX=enforcing?

? ? ? ?SELINUX=disabled?

2.部署master? 1.安裝etcd和kubernetes(這會自動安裝docker)

? ? 1. [root@localhost etc]# yum -y install etcd kubernetes-master?

? ? 2.修改etcd.conf? ?

? ? [root@localhost etc]# vim /etc/etcd/etcd.conf


? ? 3.修改kube-master配置文件? ?

? ? [root@localhost kubernetes]# vim /etc/kubernetes/apiserver


? ? [root@localhost /]# vim /etc/kubernetes/controller-manager



[root@localhost /]# vim /etc/kubernetes/config

其中的8080,如果被占用了,或者不想用這個端口,可以修改


? ? 4.啟動服務? 讓 etcd kube-apiserver kube-scheduler kube-controller-manager? ? 隨開機啟動

? ? 1. [root@localhost /]# systemctl enable etcd kube-apiserver kube-scheduler kube-controller-manager?

? ? 啟動

? ? 1. [root@localhost /]# systemctl restart etcd kube-apiserver kube-scheduler kube-controller-manager?

? ? 5.配置etcd中的網絡

? ?定義etcd中的網絡配置,nodeN中的flannel service會拉取此配置

? ? 1. [root@localhost /]# etcdctl mk /coreos.com/network/config '{"Network":"172.17.0.0/16"}'?

3.部署minions(node節點) 1安裝kubernetes-node和 flannel(會自動安裝docker)

? ? 1. [root@localhost ~]# yum -y install kubernetes-node flannel?

? ? 2修改kube-node

? ? [root@localhost ~]# vim /etc/kubernetes/config


? ? [root@localhost ~]# vim /etc/kubernetes/kubelet


? ? 3修改flannel

? ? ? ? 為etcd服務配置flannel,修改配置文件 vim /etc/sysconfig/flanneld

? ? ? ? [root@localhost ~]# vim /etc/sysconfig/flanneld

? ? FLANNEL_OPTIONS=" -iface=eth0" 其中的eth0是網卡名稱(用ifconfig可查詢出來,centos7如果你沒有改網卡名,那可以是enoXXXXX)


? ? 4.啟動服務[root@localhost ~]# systemctl restart flanneld docker

? ? [root@localhost ~]# systemctl restart kubelet kube-proxy

? ? [root@localhost ~]# systemctl enable flanneld kubelet kube-proxy

?ifconfig下,看到每個minions(node)會有docker0和flannel0這2個網卡。這2個網卡在不同的minons都是不同的.

4.驗證? 在master上執行

[root@localhost /]# kubectl get nodes


? 這樣etcd+flannel + kubernetes在centOS7上就搭建起來了.

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容