1. 1 不可撤销
  2. 2 小年兽 程嘉敏
  3. 3 手放开 李圣杰
  4. 4 迷人的危险3(翻自 dance flow) FAFA
  5. 5 山楂树之恋 程佳佳
  6. 6 summertime cinnamons / evening cinema
  7. 7 不谓侠(Cover 萧忆情Alex) CRITTY
  8. 8 神武醉相思(翻自 优我女团) 双笙
  9. 9 空山新雨后 音阙诗听 / 锦零
  10. 10 Wonderful U (Demo Version) AGA
  11. 11 广寒宫 丸子呦
  12. 12 陪我看日出 回音哥
  13. 13 春夏秋冬的你 王宇良
  14. 14 世界が终わるまでは… WANDS
  15. 15 多想在平庸的生活拥抱你 隔壁老樊
  16. 16 千禧 徐秉龙
  17. 17 我的一个道姑朋友 双笙
  18. 18 大鱼  (Cover 周深) 双笙
  19. 19 霜雪千年(Cover 洛天依 / 乐正绫) 双笙 / 封茗囧菌
  20. 20 云烟成雨(翻自 房东的猫) 周玥
  21. 21 情深深雨濛濛 杨胖雨
  22. 22 Five Hundred Miles Justin Timberlake / Carey Mulligan / Stark Sands
  23. 23 斑马斑马 房东的猫
  24. 24 See You Again Wiz Khalifa / Charlie Puth
  25. 25 Faded Alan Walker / Iselin Solheim
  26. 26 Natural J.Fla
  27. 27 New Soul Vox Angeli
  28. 28 ハレハレヤ(朗朗晴天)(翻自 v flower) 猫瑾
  29. 29 像鱼 王贰浪
  30. 30 Bye Bye Bye Lovestoned
  31. 31 Blame You 眠 / Lopu$
  32. 32 Believer J.Fla
  33. 33 书信 戴羽彤
  34. 34 柴 鱼 の c a l l i n g【已售】 幸子小姐拜托了
  35. 35 夜空中最亮的星(翻自 逃跑计划) 戴羽彤
  36. 36 慢慢喜欢你 LIve版(翻自 莫文蔚) 戴羽彤
  37. 37 病变(翻自 cubi) 戴羽彤
  38. 38 那女孩对我说 (完整版) Uu
  39. 39 绿色 陈雪凝
  40. 40 月牙湾 LIve版(翻自 F.I.R.) 戴羽彤
夜空中最亮的星(翻自 逃跑计划) - 戴羽彤
00:00 / 04:10

夜空中最亮的星 能否听清

那仰望的人 心底的孤独和叹息

夜空中最亮的星 能否记起

那曾与我同行 消失在风里的身影

我祈祷拥有一颗透明的心灵

和会流泪的眼睛

给我再去相信的勇气

越过谎言去拥抱你

每当我找不到存在的意义

每当我迷失在黑夜里

噢喔喔 夜空中最亮的星

请指引我靠近你

夜空中最亮的星 是否知道

那曾与我同行的身影 如今在哪里

夜空中最亮的星 是否在意

是等太阳先升起 还是意外先来临

我宁愿所有痛苦都留在心底

也不愿忘记你的眼睛

哦 给我再去相信的勇气

哦 越过谎言去拥抱你

每当我找不到存在的意义

每当我迷失在黑夜里

噢喔喔 夜空中最亮的星

请照亮我向前行 哒~

我祈祷拥有一颗透明的心灵

和会流泪的眼睛 哦

给我再去相信的勇气

哦 越过谎言去拥抱你

每当我找不到存在的意义

每当我迷失在黑夜里

噢喔喔 夜空中最亮的星

请照亮我向前行

基于kuboard管理k8s

前言

昨天我们分享了本地springboot项目构建docker镜像的内容,详细介绍了springboot项目打包、镜像构建、基于docker启动运行的全过程,这个技术虽然不是特别难,但是很实用,因为镜像构建完成后,我们不仅可以让我们的服务在docker中运行,也可以让它在k8s中运行,今天我们就来看下如何通过kuboardk8s上部署我们的服务。

今天的内容以图片为主,文字说明为辅,只有大家按照我的操作流程进行操作,一定也可以部署成功。好了,话不多说,让我们直接开始吧。

kuboard

登录kuboard控制台

在开始之前,我们要先登录kuboard的控制台,然后选择需要部署服务的k8s集群:

选择登录角色,这里我们直接以管理员角色登录:

进入对应集群后,选择要部署服务的命名空间。在k8s中,所有的podservice都是基于命名空间进行管理的,而且一个工作空间下的服务可以直接通过负载名称进行访问,如果跨命名空间访问服务,需要加上对应的命名空间名称。

这里我们选的是默认的工作空间default,点击命名空间即可进入命名空间内部:

创建服务

在命名空间内部,我们可以构建我们的工作负载(大家要慢慢习惯这个叫法)。点击中间的悬浮菜单常用操作

在展开的选项中选择创建工作负载菜单,进入工作负载创建页面

填写负载基本信息

首先填写工作负载的基本信息。工作负载类型我们选择第一个部署,通常我们的服务和组件都选择这个;工作负载分层可以根据自己的服务类型进行选择,这个选项只是为了方便管理,分层之后会在控制面板的不同区域显示

工作负载的名称要唯一,不能重复,而且不能有中文,后面我们访问服务的时候就是通过负载名称+端口进行访问的,描述信息可以随便填写

填写容器信息

基本信息填写完成后,切换到容器信息填写页面。这里创建容器,经过我的试验,初始化容器可以不创建,但是工作容器必须创建,否则无法提交表单

我们直接创建工作容器,然后填写容器信息。这里的容器名称,一般和基本信息保持一致就行了,虽然没有要求,但是不一致的话,不利于后期管理;这一块的配置中,容器镜像是最重要的内容,而且要确保镜像存在,否则在后面容器启动的时候会报错。

这里的镜像配置的内容和我们docker pull 镜像名称的镜像名称是一样的,我们以zookeeper为例,我们拉取镜像的命令是这样的:

docker pull zookeeper:latest

所以我们这里配置的就是zookeeper:latest;大家注意右侧的imagePullSecret配置,这个配置是方便我们配置私有镜像仓库,例如很多公司都基于harbor搭建了私有的镜像仓库,这里就配置harbor的配置。

然后,记得指定下容器的端口,否则我们是服务访问容器中的服务或组件的。

镜像的拉取策略,设置的是拉取的条件,第一个选项始终拉取新镜像,表示任何时候只要你重启了容器都会从镜像仓库拉取镜像,不论本地是否已经有镜像;第二个选项表示当本地没有镜像的时候,才拉取镜像;第三个选项表示从不拉取镜像,但当镜像不存在则会报错。大家可以根据自己的需要设置,一般对于第三方组件,或者不经常变更的镜像,我们都选择第二个。

配置服务路由

这里也是很关键的一步,如果不设置路由的话,我们是没办法通过负载名称访问服务的,虽然通过ip地址也能访问,但是容器重启后,ip地址会发生变化,所以必须配置路由。

这里只需要选择clusterIP,然后指定端口映射即可

服务控制面板

点击保存后,会进入服务的控制面板,控制面板处理常用的操作菜单外,还会显示服务的运行状况信息:

如果在右侧事件显示区域,有如下显示,表明你的服务镜像配置有误,可以点击编辑菜单进行修改:

有时候页面内容长时间为变化,可以点击上部的刷新菜单进行刷新。如果提示容器已就绪,说明我们的服务已经部署启动成功,这时候我们可以点击容器下部的菜单对容器进行管理。

追踪日志菜单可以实时展示容器中服务的日志信息,点击后会打开新页面,内容显示如下,页面支持搜索,还可以设置是否滚动

bashsh没有本质区别,都是进入容器的linux控制台,点击对应菜单后,会打开如下页面

下载日志菜单,可以下载容器中的日志文件,也就是我们跟踪日志显示的日志,可以根据自己的需要进行下载:

补充内容

下面这张图片很好地展示了配置路由器和配置路由后的访问情况,配置路由前,我们访问activemq-k8s,提示无法解析主机,但当我们添加路由配置后,再次访问,发现这时候activemq-k8s已经可以正常解析了,而且返回了页面内容。

为了更好地测试命名空间内服务间的通信,我这里构建了两个服务,一个是zk,一个是mq,然后在mq的控制台访问zookeeper-k8s,虽然无法正常访问,但可以看到名称已经被正常解析,说明路由是没有问题的

zk控制台访问activemq-k8s效果也是一样的,由于容器的linux没有pingcurl,我只能用wget命令了:

容器配置导出

最后,我们再讲一下容器的导出。导出主要是为了备份,如果特殊原因导致k8s崩溃(前段时间,我们测试环境就发生过,有人把k8s集群搞坏了,然后集群被删除了),这时候如果从头再配置,不仅浪费时间,而且好多配置你也记不清楚了。

但如果你之前备份过,那直接可以通过备份的yaml文件重新构建容器,这样效率更高,而且不容器出错。上次一也是因为我提前备份过,所以除了我们项目,其他组都花了好久才把环境重新部署好。

备份的方式也很简单,首先命名空间首页,点击悬浮菜单,选择导出工作负载

选择需要导出的负载

下一步,然后选择需要导出的服务

然后一直下一步,最后点击确认,到这里负载文件就导出完成了。

导出的文件长这个样子,是标准的yaml文件

导入负载

导入负载也很简单,导入方式有两种,第一种直接点击左侧导入工作负载菜单,然后选择导入文件,点击确定就可以了,剩下的就是等待,等待容器启动完成。

另一种方式是点击左侧从yaml创建菜单,这里主要是针对单个负载,多个负载我没有试过。

然后把我们负载yaml内容赋值进去,点击确定即可,然后也是漫长的等待。

好了,到这里,今天的内容就全部结束了,图片虽然多,但是都是实打实的干货,有条件的小伙伴自己动手试下吧。

总结

今天我们主要分享了基于kuboard管理k8s容器的一些基本的常用操作,包括服务部署、日志查看、负载导入导出等,虽然简单但是很实用。

总体来说,kuboard确实比k8s官方的控制台体验要好,除了颜值高,功能也很强大,而且又是原生的中文支持,确实很香。

最后我想说,k8s确实要比docker优秀,这个最大的体会来源于k8s的伸缩特性,在docker中,创建第一个容器和创建第二个容器一样复杂,一样的麻烦,但是在k8s中,创建第二个容器只需要把副本数改为2,想创建多少个都可以,既简单又方便,而且很灵活,反正就是很强。更多特性,后面有机会的话再来分享,今天就到这里吧!

posted @ 2021-07-15 13:39  云中志  阅读(586)  评论(0编辑  收藏  举报