资讯专栏INFORMATION COLUMN

RKE安装kubernetes集群+Rancher 2.0安装

fevin / 1156人阅读

摘要:环境信息系统版本信息环境版本主机信息主机名安装用户操作系统环境预设以下步骤所有集群主机都要配置关闭防火墙禁用文件配置修改主机名以机器为例登录修改主机名为退出重新登录查看是否生效配置用户组将安装用户加入组建议安装用户选择非用户禁用交

环境信息 系统版本信息
环境 版本
OS CentOS Linux release 7.4.1708 (Core)
Kernel Linux version 3.10.0-693.el7.x86_64
rke v0.1.9
rancher v2.0.8
docker 1.13.1
主机信息
主机名 ip 安装用户 操作系统
rk1 192.168.0.130 docker CentOS Linux release 7.4
rk2 192.168.0.129 docker CentOS Linux release 7.4
环境预设 以下步骤所有集群主机都要配置 1.关闭防火墙
setenforce 0
systemctl disable iptables-services firewalld
systemctl stop iptables-services firewalld
2.禁用SELINUX
vi /etc/selinux/config
SELINUX=disabled
service network restart
3.hosts文件配置
vi /etc/hosts
127.0.0.1 localhost
192.168.0.129 rk2
192.168.0.130 rk1
4.修改主机名

以rk1机器(192.168.0.130)为例

1.登录192.168.0.130

ssh root@192.168.0.130

2.修改主机名为rk1

vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=rk1

hostname rk1
hostnamectl set-hostname rk1

3.退出重新登录查看是否生效

[root@rk1 ~]# hostname
rk1
5.配置用户组
#将安装rke用户加入docker组,建议安装用户选择非root用户
usermod -aG docker docker
6.禁用交换分区

修改/etc/fstab 注释掉以下配置项

#/dev/mapper/VolGroup-lv_swap swap                    swap    defaults        0 0
7.设置ipv4转发

修改/etc/sysctl.conf

$ echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
$ systemctl restart network
$ sysctl net.ipv4.ip_forward
8.配置ssh互信

登录rk1

$ ssh-keygen #生成公钥和私钥
$ ssh-copy-id docker@192.168.0.129
$ ssh-copy-id docker@192.168.0.130
#验证是否生效
[docker@rk1 ~]$ ssh docker@192.168.0.129 date
Mon Aug 27 21:36:27 CST 2018
docker安装 1.配置yum源
##备份原yum源
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum makecache
2.docker安装
yum -y install docker
service docker start
##查看docker版本
docker -v
Docker version 1.12.6, build 3e8e77d/1.12.6
3.设置加速器

docker默认访问国外docker hub上镜像,速度较慢,可以替换成国内源,阿里和daocloud都有相关加速器,而且是永久免费,这里以daocloud为例.执行以下命令即可替换源(加速器是笔者的账号永久免费可以放心使用)

curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://41935bf4.m.daocloud.io

这个脚本在centos 7上有个bug,脚本会改变docker的配置文件/etc/docker/daemon.json但修改的时候多了一个逗号,导致docker无法启动

[root@docker /]# more /etc/docker/daemon.json
{"registry-mirrors": ["http://41935bf4.m.daocloud.io"],}

将最后的逗号去掉即可,截止到写这篇文档(2018-08-28)该bug还尚未修复.
替换后重启docker即可

systemctl restart docker
4.重启服务器

重启服务器后需要重新启动docker服务否则集群无法正常安装

kuberntes安装 RKE介绍

Rancher Kubernetes Engine(RKE)是rancher提供的一个快速安装kubernted集群工具,
使用Golang语言编写,能够实现在短时间内部署高可用kubernetes集群环境,从而大大降低安装kubernetes成本.

RKE安装集群需要指定配置文件cluster.yml,只要环境按照以上步骤预先配置好,只要一行命令就能安装Kubernetes集群.

RKE安装

可以从https://github.com/rancher/rke/releases下载安装包,本文使用版本v0.1.9.下载完后将安装包上传至任意节点.

cluster.yml

这里提供一个简单版配置文件

nodes:
    - address: 192.168.0.130
      user: docker
      role:
        - controlplane
        - etcd
        - worker
    - address: 192.168.0.129
      user: docker
      role:
        - controlplane
        - etcd
        - worker
cluster_name: mpaascluster

这里简单定义了两个节点,完整的配置清单可以打开https://rancher.com/docs/rke/v0.1.x/en/example-yamls/查看.

运行rke

cluster.yml和rke的安装包rke_linux-amd64放到同一个目录下,并在终端将当前目录cd到当前两个文件所在目录.执行以下命令

chmod +x rke_linux-amd64
./rke_linux-amd64 up

如果运行正常,看到以下输出代表安装成功

....
INFO[0018] [addons] Saving addon ConfigMap to Kubernetes
INFO[0018] [addons] Successfully Saved addon to Kubernetes ConfigMap: rke-metrics-addon
INFO[0018] [addons] Executing deploy job..
INFO[0018] [addons] KubeDNS deployed successfully..
INFO[0018] [ingress] Setting up nginx ingress controller
INFO[0018] [addons] Saving addon ConfigMap to Kubernetes
INFO[0018] [addons] Successfully Saved addon to Kubernetes ConfigMap: rke-ingress-controller
INFO[0018] [addons] Executing deploy job..
INFO[0018] [ingress] ingress controller nginx is successfully deployed
INFO[0018] [addons] Setting up user addons
INFO[0018] [addons] no user addons defined
INFO[0018] Finished building Kubernetes cluster successfully

此时在该目录下会生成一个kube_config_cluster.yml文件,这个文件下面会用到.

kubectl安装

kubectl是和kuberneter交互的工具,也就是kubernnetes-cli.通过该工具可以在本地执行kubernetes api

kubectl安装可以参考https://kubernetes.io/docs/tasks/tools/install-kubectl/#install-kubectl,以MacOS为例,只要执行以下命令就能完成安装,还是非常的简单.

brew install kubernetes-cli

安装完后将上面rke生成的文件kube_config_cluster.yml拷贝到本地~/.kube/目录下,执行以下命令验证是否集群连接成功

$ kubectl --kubeconfig kube_config_cluster.yml get nodes
NAME            STATUS    ROLES                      AGE       VERSION
192.168.0.129   Ready     controlplane,etcd,worker   2h        v1.11.1
192.168.0.130   Ready     controlplane,etcd,worker   2h        v1.11.1
Rancher 2.0安装 安装

RKE只是负责kubernetes集群的安装,并没有安装Rancher server.Rancher server需要独立安装.这里非常不建议rancher和kubernetes安装在同一台主机上,主要是会有端口冲突,虽然可以通过端口映射解决,但无论是修改kubernetes还是rancher都比较麻烦.

这里在新的一台主机上192.168.0.118安装Rancher server,版本为2.0.8,Rancher安装相对比较简单,执行以下命令就能完成安装

docker run -d --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher:v2.0.8
集群导入

安装完成后登录https://192.168.0.118,如果提示证书错误,忽略即可.

初次登录需要指定管理员密码,设置下即可,默认管理员用户名为admin .

点击菜单全局->添加集群,添加集群.

选择import方式导入,输入集群名称点击创建.

点击后会跳转至说明页面,上面有导入集群到命令.如图

复制第二个命令,在本地(需按照以上步骤安装完kubectl)执行命令

kubectl --kubeconfig kube_config_cluster.yml apply -f https://192.168.0.118/v3/import/xxxxxxxxxxxxxx.yaml

如果因为Rancher正在使用不受信任/自签名的SSL证书运行而出现"由未知颁发机构签名的证书"错误, 请运行下面的命令以绕过证书检查:

curl --insecure -sfL https://192.168.0.118/v3/import/xxxxxxxxxxx.yaml | kubectl --kubeconfig kube_config_cluster.yml apply -f -

如果出现以下错误

Unable to connect to the server: x509: certificate signed by unknown authority

可以忽略,集群还是会正常导入

至此rancher 2.0集群安装完毕

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/32719.html

相关文章

  • Rancher Kubernetes Engine(RKE)正式发布:闪电般的Kubernetes

    摘要:现在,越来越多的开发人员不再使用传统的应用程序服务器,而是开始使用作为分布式应用程序平台开发人员使用作为后端数据库。而我们已注意到,将诸如之类的轻量级安装程序嵌入到分布式应用程序中,满足了很多来自用户的兴趣与需求。 作为Rancher 2.0的重要组件,Rancher Kubernetes Engine(RKE)现已正式全面发布!这是Rancher Labs推出的新的开源项目,一个极致...

    canopus4u 评论0 收藏0
  • Rancher Kubernetes Engine(RKE)正式发布:闪电般的Kubernetes

    摘要:现在,越来越多的开发人员不再使用传统的应用程序服务器,而是开始使用作为分布式应用程序平台开发人员使用作为后端数据库。而我们已注意到,将诸如之类的轻量级安装程序嵌入到分布式应用程序中,满足了很多来自用户的兴趣与需求。 作为Rancher 2.0的重要组件,Rancher Kubernetes Engine(RKE)现已正式全面发布!这是Rancher Labs推出的新的开源项目,一个极致...

    Anchorer 评论0 收藏0
  • RKE安装kubernetes集群+Rancher 2.0安装

    摘要:环境信息系统版本信息环境版本主机信息主机名安装用户操作系统环境预设以下步骤所有集群主机都要配置关闭防火墙禁用文件配置修改主机名以机器为例登录修改主机名为退出重新登录查看是否生效配置用户组将安装用户加入组建议安装用户选择非用户禁用交 环境信息 系统版本信息 环境 版本 OS CentOS Linux release 7.4.1708 (Core) Kernel Linux v...

    ningwang 评论0 收藏0
  • 公有云托管K8s服务百花齐放,企业如何统一纳管、便捷管理?

    摘要:正在美国拉斯维加斯举行的大会上,亚马逊新发布的一系列计算及存储相关的功能中,最轰动容器领域,无非是一种无需管理服务器即可运行容器的服务,以及,一个完全托管的服务。的发布,意味着国际范围内三大最主要的云服务商和,已全部提供托管的服务。 正在美国拉斯维加斯举行的AWS re:Invent 2017大会上,亚马逊新发布的一系列计算及存储相关的功能中,最轰动容器领域,无非是AWS Fargat...

    AdolphLWQ 评论0 收藏0
  • 公有云托管K8s服务百花齐放,企业如何统一纳管、便捷管理?

    摘要:正在美国拉斯维加斯举行的大会上,亚马逊新发布的一系列计算及存储相关的功能中,最轰动容器领域,无非是一种无需管理服务器即可运行容器的服务,以及,一个完全托管的服务。的发布,意味着国际范围内三大最主要的云服务商和,已全部提供托管的服务。 正在美国拉斯维加斯举行的AWS re:Invent 2017大会上,亚马逊新发布的一系列计算及存储相关的功能中,最轰动容器领域,无非是AWS Fargat...

    golden_hamster 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<