使用rancher-2.5.5部署单节点kubernetes集群

rancher2.5.x发布,除了新的feature外,更加简洁,体验/研究/熟悉一下,方便后续的落地使用。感觉:太爽了

相关版本信息:

rancher:v2.5.5

helm3:v3.5.1

kubernetes:1.19.7

目录:

(1).rancher部署并在rancher上创建kubernetes单节点集群

(2).宿主机接入kubectl与helm3

1.部署helm3

2.部署kubectl

(3).相关参考

(1).rancher部署并在rancher上创建kubernetes单节点集群

rancher从2.5.5开始使用rancher/rancher的镜像名称。

docker pull rancher/rancher:v2.5.5

在开发和测试环境中,运行单个 Docker 容器安装 Rancher。

与 2.4.x 或之前的版本相比,使用docker run命令安装 Rancher 2.5.x 时,需要添加--privileged标志变量,启用特权模式安装 Rancher。

docker run -d --restart=unless-stopped \

-p 81:80 -p 444:443 \

--privileged \

rancher/rancher:v2.5.5

注意要使用宿主机的81,444端口,避免和后续安装的ingress-nginx发生端口冲突。

然后浏览器中访问:

https://ip:444

第一次访问需要设置admin密码。设置后进入下一步:

提示v2.5的新变化:

主界面:忽略名为local的cluster name,目前还没有使用rancher创建k8s集群。

现在开始创建一个k8s单节点集群,点击“Add Cluster”:

选择创建一个新集群:

除集群名称外都保留默认值:

另外,要记住这个版本号,我们之后要下载这个版本的kubectl:

注意最后的那行命令,需要在k8s的work节点上执行,这样才能将k8s的节点纳入到rancher管理;

一个master节点至少要有etcd和control,如果你打算创建一个单节点集群,需要选择所有3个角色并更改命令:

回到主界面:

注意此时再点击集群进入,你会看到etcd和control plane是未勾选状态:

然后在节点执行如下命令,rancher就会通过RKE在这个节点部署kubernetes:

sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/rancher-agent:v2.5.5 --server https://192.168.111.31 --token hh288bh6w5tgcch484tkr6wpz66xmgxw8n5qd7xbpgschc945cfd28 --ca-checksum e30e6c39cec618f2c913e50e4592d71b8186d15c246c0f4ba615524a9c522632 --etcd --controlplane --worker

需要一些时间,稍等即可。

安装过程中的主界面变化:

至此,完成rancher搭建kubernetes单节点集群。

关于RKE:

RKE是一个用Golang编写的Kubernetes安装程序,极为简单易用,用户不再需要做大量的准备工作,即可拥有闪电般快速的Kubernetes安装部署体验。

RKE是一款经过CNCF认证的开源Kubernetes发行版,可以在Docker容器内运行。它通过删除大部分主机依赖项,并为部署、升级和回滚提供一个稳定的路径,从而解决了Kubernetes最常见的安装复杂性问题。

(2).宿主机接入kubectl与helm3

1.部署helm3

https://github.com/helm/helm/releases

wget https://get.helm.sh/helm-v3.5.1-linux-amd64.tar.gz

解压后将helm拷贝到/usr/local/bin

helm version验证是否work:

2.部署kubectl

参见文档:

Install and Set Up kubectl

https://kubernetes.io/docs/tasks/tools/install-kubectl/

选择匹配集群的kubectl版本:

curl -LO https://dl.k8s.io/release/v1.19.7/bin/linux/amd64/kubectl

下载后赋权后移动至/usr/local/bin

chmod 755 kubectl

验证:kubectl version

获取rancher搭建的kubernetes集群的kube-config文件:

将kube-config文件放到宿主机这个目录位置:~/.kube/config

现在,通过在宿主机上执行kubectl相关命令,就可以对rancher搭建的kubernetes集群进行操作了。

kubectl get nodes

kubectl get pods --all-namespaces

注意上图中,ingress-nginx的pod是创建失败的,这是因为我们在创建rancher时使用的是80,443端口,而ingress-nginx也是使用的80,443端口,所以在创建ingress-nginx时发生了冲突而创建失败。

任何程序错误,以及技术疑问或需要解答的,请添加

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/546705.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

1-2.Win10系统利用Pycharm社区版安装Django搭建一个简单Python Web项目的步骤之二

七、在项目下新建 templates 路径 在工程上,右键,添加templates目录 注意*: 此目录下即用来存放我们的html文件; 此目录一般是与app的主目录是平级的。当然也可以建立在app的目录下,主要取决于你的模板,一般是全局…

k8s-自动横向伸缩pod 根据CPU使用率,QPS访问数监控指标

k8s-自动横向伸缩pod 与节点 简述 我们可以通过调高ReplicationController、 ReplicaSet、 Deployment等可伸缩资源的rep让cas字段, 来手动实现pod中应用的横向扩容。 我们也可以通过增加pod容器的资源请求和限制来纵向扩容pod (尽管目前该操作只能在pod创建时&am…

记一次蚂蚁金服的面试经历

2015在实习的时候,当时一个一起实习的朋友在2019年3月份的时候突然在微信上找我,问我要不要面试下蚂蚁金服。问了下相关信息才知道他在2018年11月的时候进到蚂蚁金服,现在招人就想到了我,问我要不要试一下。刚开始还是有所顾虑的&…

记一次阿里巴巴一面的经历

上周在拉勾上收到一个蚂蚁金服的大哥要我的简历,当时很惊讶,居然有蚂蚁金服的找到我,然后想都没想就给了。受宠若惊呀,我知道自己的水平跟阿里的差距有多远,以前一直没用勇气去投,连试试都不敢。这次居然主…

Can‘t find a suitable configuration file in this directory or any parent. 报错解决错误

docker-compose 执行的时候报错 Cant find a suitable configuration file in this directory or any parent. Are you in the right directory? 解决办法: 1.把文件名重命名为docker-compose.yml,然后进入docker-compose.yml所在目录 2.然后在执行 docker…

Python获取两个列表list的不同之处

python Pycharm开发平台,列表listA包含listB,现在需要取出两个list中的不同值,diff_list[“23”, “78”] 说明: 转换为set再相减的目的去除list中重复的元素; # -*- coding: utf-8 -*-listA ["23", &quo…

jquery选择器《-》

2019独角兽企业重金招聘Python工程师标准>>> 1.DOM筛选,遍历查找相关方法 2.选择器中特殊符号的处理 3.改写原生js例子 a.表格隔行变色 b.tab标签页4.选择器的优化准则(初级)筛选 eq()选择指定索引的元素 filter(表达式)筛选指定表达式的元素first…

一文带你轻松搞懂事务隔离级别(图文详解)

本文由 SnailClimb 和读者 BugSpeak 共同完成。事务隔离级别(图文详解)什么是事务?事务是逻辑上的一组操作,要么都执行,要么都不执行。事务最经典也经常被拿出来说例子就是转账了。假如小明要给小红转账1000元,这个转账会涉及到两个关键操作…

Yolo opencv刻度尺识别 刻度读数识别 水尺识别 水位识别源码

刻度识别项目 简介实现效果实现流程实现原理 刻度尺的标定 指针位置标定读数位置标定刻度线标定数字检测数字分割数字识别web部署附录简介 好久不见了,我看了一下我最近的博客到现在已经3个月时间没更新了。这是因为我最近都在忙毕业设计,所以一直没有时…

Python检查特定值是否包含在列表中

python 检查特定值是否包含在列表中 # -*- coding: utf-8 -*-listA ["23", "45", "78", "92"] strB "45" strC "12"if __name__ __main__:if strB in listA:print(%s is on the list % strB)if strC not in …

【数据结构与算法】通俗易懂说链表

一:概述链表(Linked list)由一些节点组成,物理存储非连续的线性表。其中每个节点都会存储下个节点的指针,由于实际存储空间不连续,对链表插入节点,删除节点可以达到O(1)的复杂度,但是…

Yolov5实现道路裂缝检测

Yolov5实现道路裂缝检测 GitHub参考代码链接 我修改后的代码百度网盘链接 密码:2mzl 数据集链接 密码:06dj 基于Pytorch的Yolov5道路裂缝检测程序运行说明。大家可以结合我的说明和原文说明使用,有问题欢迎询问。 文章目录 Yolov5实现…

五、QPushButton按钮和QLineEdit控件操作

在第四节基础上,下面来进行QPushButton按钮和QLineEdit控件操作。 1.在主界面添加三个QLineEdit编辑框(其控件对象依次为lineEditNum1、lineEditNum2、lineEditSum)存放整数和一个按钮(其控件对象btnCalculate及5个QLable,进行2个数和的计算。 2.为按钮添加信号槽函数 单…

JVM史上最佳入门指南

提到Java虚拟机(JVM),可能大部分人的第一印象是“难”,但当让我们真正走入“JVM世界”的时候,会发现其实问题并不像我们想象中的那么复杂。唯一真正令我们恐惧的,其实是恐惧本身。而作为整个JVM系列的首篇&…

Docker Registry 删除镜像并清理

目录 修改Docker Registry配置使用Registry V2 RestfulAPI 删除镜像Docker Registry GC回收空间使用UI管理Docker Registry 修改Docker Registry配置 配置开启删除功能:config.yml version: 0.1 log:fields:service: registry storage:delete:enabled: truecache:blobdescri…

1-3.Win10系统利用Pycharm社区版安装Django搭建一个简单Python Web项目的步骤之三

在1-1.Win10系统利用Pycharm社区版安装Django搭建一个简单Python Web项目的步骤之一 基础上进行如下操作: 所有路由不能全部都在myDjango下的urls.py路由文件中,一个app创建一个路由分发文件urls.py, 在myDjango下的urls.py路由文件中只对每…

阿里《Java手册》做一个有技术情怀的人

导读最近重温了阿里的《码出高效Java开发手册》,感觉最后一页“聊聊成长”这一小块的内容写的很棒,特意把它复制出来,送给每一个技术人,愿你做一个有技术情怀的人。正文成长并没有直线式的捷径,“不走弯路就是捷径”这…

安卓应用在各大应用市场上架方法整理

安卓应用在各大应用市场上架方法整理 正在上传…重新上传取消​ ASO优化师-酱紫 酱紫ASO、ASA推广运营研究 ​关注她 1 人赞同了该文章 想要把APP上架到应用市场都要先注册开发者账号才可以。这里的方法包括注册帐号和后期上架及一些需要注意的问题。注意:首次…

Linux Shell编程之脚本执行方式

1.新建bash脚本文件 打开命令终端 touch hello.sh vim hello.sh2.编辑bash文件 #!/bin/bash # this is a test programerecho "hello word"3.脚本执行 赋予执行权限,直接运行 chmod 755 hello.sh ./hello.sh输出结果:

经典面试题|讲一讲JVM的组成

JVM(Java 虚拟机)算是面试必问的问题的了,而但凡问 JVM 一定会问的第一个问题就是:讲一讲 JVM 的组成?那本文就注重讲一下 JVM 的组成。 首先来说 JVM 的组成分为,整体组成部分和运行时数据区组成部分&…