千家信息网

CentOS7 YUM 搭建Kubernetes 1.0的步骤

发表于:2024-11-27 作者:千家信息网编辑
千家信息网最后更新 2024年11月27日,本篇内容主要讲解"CentOS7 YUM 搭建Kubernetes 1.0的步骤",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"CentOS7 YUM 搭建
千家信息网最后更新 2024年11月27日CentOS7 YUM 搭建Kubernetes 1.0的步骤

本篇内容主要讲解"CentOS7 YUM 搭建Kubernetes 1.0的步骤",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"CentOS7 YUM 搭建Kubernetes 1.0的步骤"吧!

1. 简要叙述#

搭建过程:

  1. 网络搭建,将采用Flannel

  2. 安装master和minion端需要的软件

  3. 启动Kubernetes集群

2. 网络搭建

在裸机上安装Kubernetes需要先备好一个网络:我选择的是简单的Flannel,够用就好。
Flannel网络搭建较为简单,部署一个etcd的集群,然后build flannel,运行即可。此不是文章重点。具体可参考: http://www.slideshare.net/lorispack/using-coreos-flannel-for-docker-networking 如果遇到了问题可以咨询我,
关于Flannel在docker网络中的作用可以看这篇博客: http://my.oschina.net/xue777hua/blog/488345

3. 安装Kubernetes集群

其中 centos-master = 192.168.56.110 centos-minion = 192.168.56.111 请设置好/etc/hosts文件,或者是DNS。
master运行如下组件:etcd, kube-apiserver, kube-controller-manager, kube-scheduler, kube-proxy
minion运行如下组件:docker, kubelet, kube-proxy
当然,前提是flannel网络在两边都可以work, 当然更加的前提是安装好了docker,检验的方式是:在master和minion都分别启动一个container,在container之间互相能够ping对方即可。

3.1 为机器添加repo

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

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

3.2 安装Kubernetes软件

在所有的机器上执行 yum -y install --enablerepo=virt7-testing kubernetes 即可。
检查etcd的版本是否为 0.4.6-7 , 如果不是,则删除etcd并且从rpm安装:

yum erase etcdyum 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.rpmyum -y install --enablerepo=virt7-testing kubernetes

##3.3 配置Kubernetes集群 ## 1.设置 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的服务,Kubernetes的各种信息:例如物理机,容器的基本信息都是存储在Kubernetes上面的。

2.设置 master+minion的 /etc/kubernetes/apiserver 为(只列出了重要的几个配置):

# 需要连接的master的地址,kubelet需要连接到kube-apiserver来工作KUBE_API_ADDRESS="--address=centos-master" KUBE_API_PORT="--port=8080"# 服务所在的ip地址范围,服务是一组pod的组合产物KUBE_SERVICE_ADDRESSES="--service-cluster-ip-range=10.254.0.0/16"

3.设置 minion端的 /etc/kubernetes/kubelet 文件

#  kubelet绑定的ip地址KUBELET_ADDRESS="--address=0.0.0.0"# kubelet的通信段耨KUBELET_PORT="--port=10250"# kubelet的hostname,到时候用kubectl get po 可以拿到的结果KUBELET_HOSTNAME="--hostname_override=centos-minion"# api-server的通信端口KUBELET_API_SERVER="--api_servers=http://centos-master:8080"

4.设置iptables 8080, 10250 的tcp端口都添加到防火墙列外,另外安装flannel也要记得设置好iptables,具体见我的博客:http://my.oschina.net/xue777hua/blog/488345

#4. 启动Kubernetes集群 # 个人经验是执行下面的命令之后使用 systemctl status -l $SERVICES 检验一遍,如果有问题执行systemctl restart $SERVICES 。 ##4.1 启动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 启动minion##

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

启动完毕后,master端执行kubectl get no,如果能看到下面的结果即为成功:

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

到此,相信大家对"CentOS7 YUM 搭建Kubernetes 1.0的步骤"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

0