Kubernetes集羣配置

本文將介紹配置Kubernetes集羣,kubernetes集羣由master節點和slave節點組成。
Master節點上運行以下服務:
etcd (etcd服務也能夠單獨運行,不必定要運行在Master節點上)
kube-apiserver
kube-controller-manager
kube-scheduler
Kubelet
kube-proxynode

Slave節點上運行以下服務:
Kubelet
kube-proxylinux

1、環境介紹
操做系統版本:centos linux 7.2 64bit
Master節點:192.168.115.5/24 vm1
Slave節點1:192.168.115.6/24 vm2
Kubernets和etcd軟件採用yum方式安裝
Kubernets版本:1.5.2
Etcd版本:2.2.5docker

2、Master節點配置centos

# yum -y install kubernetes etcd

一、通用配置文件api

# grep -v '^#'  /etc/kubernetes/config 
KUBE_LOG_LEVEL="--v=0"
KUBE_ALLOW_PRIV="--allow-privileged=false"
KUBE_MASTER="--master=http://192.168.115.5:8080"  //apiserver的地址

二、apiserver配置文件ide

# grep -v '^#'  /etc/kubernetes/apiserver 
KUBE_API_ADDRESS="--insecure-bind-address=0.0.0.0" //apiserver的監聽地址
# KUBE_API_PORT="--port=8080"  //apiserver的監聽端口
# KUBELET_PORT="--kubelet-port=10250" //kubelet服務的監控端口
KUBE_ETCD_SERVERS="--etcd-servers=http://0.0.0.0:2379"  //etcd服務的地址
KUBE_SERVICE_ADDRESSES="--service-cluster-ip-range=10.254.0.0/16"  //cluster服務的網段
KUBE_ADMISSION_CONTROL="--admission-control=NamespaceLifecycle,NamespaceExists,LimitRanger,SecurityContextDeny,ResourceQuota"  //這裏爲了不作用戶認證,取消掉了ServiceAccount參數
KUBE_API_ARGS=""

三、controller-manager配置文件,無需特殊的配置google

# cat /etc/kubernetes/controller-manager

四、etcd配置文件spa

# grep -v '^#' /etc/etcd/etcd.conf 
ETCD_NAME=default 
ETCD_DATA_DIR="/var/lib/etcd/default.etcd"
ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:2379"  //監聽地址和端口
ETCD_ADVERTISE_CLIENT_URLS="http://0.0.0.0:2379"  //集羣服務監聽地址和端口

五、通用配置文件操作系統

# grep -v '^#' /etc/kubernetes/config 
KUBE_LOGTOSTDERR="--logtostderr=true"
KUBE_LOG_LEVEL="--v=0"
KUBE_ALLOW_PRIV="--allow-privileged=false"
KUBE_MASTER="--master=http://192.168.115.5:8080" //master服務的apiserver地址和端口

六、kubelet服務配置文件code

# grep -v '^#' /etc/kubernetes/kubelet 
KUBELET_ADDRESS="--address=192.168.115.7" //slave的監聽地址
KUBELET_HOSTNAME="--hostname-override=192.168.115.7" //slave的主機名
KUBELET_API_SERVER="--api-servers=http://192.168.115.5:8080"   //master服務的apiserver地址和端口
KUBELET_POD_INFRA_CONTAINER="--pod-infra-container-image=gcr.io/google_containers/pause"  //kubenet服務的啓動須要依賴的鏡像pull地址
KUBELET_ARGS=""

七、kube-proxy的配置文件,通常無需特別的配置

# cat /etc/kubernetes/proxy

3、Slave節點配置

# yum -y install kubernetes

一、通用配置文件

# grep -v '^#' /etc/kubernetes/config 
KUBE_LOGTOSTDERR="--logtostderr=true"
KUBE_LOG_LEVEL="--v=0"
KUBE_ALLOW_PRIV="--allow-privileged=false"
KUBE_MASTER="--master=http://192.168.115.5:8080" //master服務的apiserver地址和端口

二、kubelet服務配置文件

# grep -v '^#' /etc/kubernetes/kubelet 
KUBELET_ADDRESS="--address=192.168.115.7" //slave的監聽地址
KUBELET_HOSTNAME="--hostname-override=192.168.115.7" //slave的主機名
KUBELET_API_SERVER="--api-servers=http://192.168.115.5:8080"   //master服務的apiserver地址和端口
KUBELET_POD_INFRA_CONTAINER="--pod-infra-container-image=gcr.io/google_containers/pause"  //kubenet服務的啓動須要依賴的鏡像pull地址
KUBELET_ARGS=""

三、kube-proxy的配置文件,通常無需特別的配置

# cat /etc/kubernetes/proxy

4、服務的啓動
一、master節點

# systemctl start etcd
# systemctl start kube-apiserver
# systemctl start kube-controller-manager
# systemctl start kube-scheduler
# systemctl start kubelet
# systemctl start kube-proxy

二、slave節點

# systemctl start kubelet
# systemctl start kube-proxy

5、驗證集羣是否正常工做

# kubectl get nodes //在master節點運行
# kubectl cluster-info

Kubernetes集羣配置

6、導入pause鏡像
此鏡像爲k8s的根容器鏡像,須要下載,於是下載完成後採用本地導入的方式
Pause.tar 百度網盤下載地址
https://pan.baidu.com/s/170CWp4RcLKhV2fJImA1h5Q

# docker load < pause.tar
相關文章
相關標籤/搜索