首页
Kubernetes教程

分类

当前位置: 天天编程网 > 技术新闻 > Kubernetes教程 >正文

Kubernetes安装部署演示介绍-(一)

更新时间:2023-08-14  作者:佚名   来源: 网络转载

这是差不多2年前我整理的一篇纯手工搭建Kubernetes的文档,里边涉及的软件版本相对偏低一些,但对一些初学者来说应该依然具有一定的借鉴意义。

环境介绍

OS:Linux redhat721  3.10.0-327.el7.x86_64

K8S测试集群共2台主机,1台Master和1台Node, Master  IP:192.168.80.137

组件 版本 部署方式 安装目录或访问入口
docker 1.10.3 rpm /var/lib/docker
etcd 2.3.6 tar /root/etcd-v2.3.6-linux-amd64
flannel 0.5.5 tar /root/flannel-0.5.5
kubernetes 1.2.4 tar /root/kubernetes
skydns 2015-10-13 容器 固定ip:192.168.3.254
    kube2sky 1.14 容器 和skydns同pod
     etcd 2.2.2 容器 和skydns同pod
exechealthz 1.0 容器 和skydns同pod
dashboard 1.0.1 容器 http://192.168.80.137:8080/ui
nginx 容器
cAdvisor 容器 kubelet自动启动

http://192.168.80.137:4194

heapster 1.0.2 容器
influxDB 0.5 容器
grafana 2.6.0-2 容器 http://192.168.80.137:8080/api/v1/proxy/namespaces/

kube-system/services/monitoring-grafana/

 

Node IP:192.168.80.139

组件 版本 部署方式 安装目录或访问入口
docker 1.10.3 rpm /var/lib/docker
flannel 0.5.5 tar /root/flannel-0.5.5
kubernetes 1.2.4 tar /root/kubernetes
cAdvisor 容器 kubelet自动启动

http://192.168.80.139:4194

一、安装docker环境

1、安装

本次安装的是docker1.10.3,建议安装最新的docker环境。

使用的安装包为Redhat7.x准备所有环境依赖的rpm集合包,包内的rpm文件如下面rpm命令所涉。

将所有文件上传主机,使用下面命令进行安装:

————————

rpm -Uvh ./policycoreutils-2.2.5-20.el7.x86_64.rpm

rpm -Uvh ./audit-libs-python-2.4.1-5.el7.x86_64.rpm

rpm -Uvh ./checkpolicy-2.1.12-6.el7.x86_64.rpm

rpm -Uvh ./libcgroup-0.41-8.el7.x86_64.rpm

rpm -Uvh ./libsemanage-2.1.10-18.el7.x86_64.rpm

rpm -Uvh ./libsemanage-python-2.1.10-18.el7.x86_64.rpm

rpm -Uvh ./python-IPy-0.75-6.el7.noarch.rpm

rpm -Uvh ./setools-libs-3.3.7-46.el7.x86_64.rpm

rpm -Uvh ./policycoreutils-python-2.2.5-20.el7.x86_64.rpm

 

rpm -Uvh ./docker-engine-selinux-1.10.3-1.el7.centos.noarch.rpm

rpm -Uvh –nodeps –force ./device-mapper-libs-1.02.107-5.el7.x86_64.rpm ./device-mapper-1.02.107-5.el7.x86_64.rpm

rpm -Uvh –nodeps –force ./systemd-219-19.el7.x86_64.rpm ./systemd-libs-219-19.el7.x86_64.rpm ./kmod-20-5.el7.x86_64.rpm ./dracut-033-359.el7.x86_64.rpm ./initscripts-9.49.30-1.el7.x86_64.rpm  ./libgudev1-219-19.el7.x86_64.rpm ./systemd-sysv-219-19.el7.x86_64.rpm ./dracut-network-033-359.el7.x86_64.rpm ./dracut-config-rescue-033-359.el7.x86_64.rpm

rpm -Uvh ./docker-engine-1.10.3-1.el7.centos.x86_64.rpm

————————-

2、启动docker服务

启动docker服务命令:sudo service docker start

将docker加入随主机自启动列表:sudo chkconfig docker on

3、验证docker环境

执行命令:docker version,显示如下信息,则docker环境正确安装:

Kubernetes安装部署演示介绍-(一)[kubernetes基础入门]

 

 

 

 

 

 

二、安装etcd服务

1、安装

本次安装的是etcd2.3.6。

将etcd-v2.3.6-linux-amd64.tar.gz上传主机,并解压。

tar -xzvf etcd-v2.3.6-linux-amd64.tar.gz

 

2、验证

export PATH=$PATH:/root/etcd-v2.3.6-linux-amd64

etcd -version

 

3、启动etcd服务

编辑shell脚本startEtcd.sh,内容如下:

——————————-

#!/bin/sh

export PATH=$PATH:/root/etcd-v2.3.6-linux-amd64

export ETCD_OPTS=”–listen-client-urls http://0.0.0.0:4001 –advertise-client-urls http://0.0.0.0:4001 –data-dir /var/lib/etcd/default.etcd”

 

nohup /root/etcd-v2.3.6-linux-amd64/etcd $ETCD_OPTS &

——————————-

启动命令:./startEtcd.sh

三、安装flannel虚拟网络环境

1、安装

本次安装的是flannel0.5.5。

将flannel-0.5.5-linux-amd64.tar.gz上传主机,并解压。

tar  -zxvf  flannel-0.5.5-linux-amd64.tar

2、在etcd中预注册flannel要使用虚拟地址段

etcdctl mk /coreos.com/network/config ‘{ “Network”: “172.19.0.0/16” }’

3、启动flannel

编辑shell脚本startFlannel.sh,内容如下:

——————–

#!/bin/sh

nohup /root/flannel-0.5.5/flanneld –etcd-endpoints=http://127.0.0.1:4001  &

———————

启动命令:./startFlanneld.sh

4、etcd中验证flannel地址分配

etcdctl ls /coreos.com/network/subnets

etcdctl get /coreos.com/network/subnets/172.19.3.0-24

这说明本地flannel使用的172.19.3.0网段地址。

5、生成docker相关参数,${FLANNEL_SUBNET}

./mk-docker-opts.sh

cat /run/flannel/subnet.env

6、给docker0虚拟网卡添加参数,重启

//ifconfig docker0 172.19.3.1/24

ifconfig docker0 ${FLANNEL_SUBNET}

ifconfig docker0 down

ifconfig docker0 up

7、重启docker服务

service docker stop

service docker start

8、验证

Ifconfig命令

Docker网卡的地址不再是172.17网段的地址,而是172.19.3地址(这个每次获取都会变)。

Kubernetes安装部署演示介绍-(一)[kubernetes基础入门]

 这几个前置环境部署好后,接下来将部署K8S环境。

上一篇:Kubernetes安装部署演示介绍-(二)[kubernetes基础入门] 下一篇:纯手工搭建k8s集群-(三)认证授权和服务发现[kubernetes基础入门]
小编推荐
快速导航更多>>
JavaScript 教程 HTML5 教程 CSS3 教程 jQuery 教程 Vue.js 教程 Node.js 教程 SQL 教程 C 教程 PHP 教程 Linux 教程 Docker 教程 Nginx 教程 Python 教程 Java 教程

天天编程网 版权所有

陕ICP备2023002928号-1