Kasten K10 入门系列 02 - K10 安装

目录

Kasten K10 入门系列目录

Kasten K10 入门系列 01 - 快速搭建 K8S 单节点测试环境

正文

Kasten K10 的安装使用 Kubernetes 安装包管理工具 Helm,如果不熟悉 Kubernetes 的朋友可能不知道什么是 Helm,简单来说,Kubernetes 上的 Helm 来说就像 CentOS 上的 yum,有啥软件需要安装在 CentOS 上直接 yum install,而在 Kubernetes 上就是 helm install。

Helm 的命令和其他 Linux 命令一样,一大堆参数,看着就头疼,不过没关系,那么复杂的我们不用全明白,记住我下面的这几个关键的就足够玩转 k10 了:

# 添加 chart
$ helm repo add <repo name> <url>
# 安装软件
$ helm install <chart> <repo/chart> --namespace <namespace name>
# 卸载软件
$ helm uninstall <chart> --namespace <namespace name>

对于 k10 安装,几个关键要素分别是:

  • Repo name (仓库名): kasten
  • Chart(软件名) : k10
  • URL(仓库地址): https://charts.kasten.io/
  • Namespace name: kasten-io(默认值)

k10 起飞检查

当然,在安装前,因为各个用户的环境错综复杂,会产生各种不满足条件的情况,Kasten 提供了起飞检查脚本(pre-flight checks),用于帮助我们判断是否满足最基本的安装条件。简单来说,这个脚本跑完,看到上面是全绿的 Ok 状态,那么安装 k10 就完全没问题。

由于一些不可理解的网络问题,gcr.io 无法正常访问,官网手册中的起飞检查脚本就没办法正常运行,这里我提供修改过的脚本可以用于国内网络正常访问:

$ curl https://blog.backupnext.cloud/k10_primer.sh | bash

这个 k10 起飞检查脚本还有一个 storageclass 检查专用参数,有需要的时候也可以针对创建好的 storageclass 做一系列体检:

$ curl -s https://blog.backupnext.cloud/k10_primer.sh  | bash /dev/stdin -s ${STORAGE_CLASS}

k10 安装

k10 基本上能够通吃所有 Kubernetes 的发行版,在官网手册上,对于像 AWS、Azure、Red Hat Openshift、Google Cloud、DigitalOcean 和 VMware vSphere 这些特殊的发行版,给出了一些特别的安装指导,大部分都是关于 service account 的。而除了这些之外的 Kubernetes 发行版,都可以按照通用安装方式来进行。

还是一样因为 gcr.io 无法访问,我们国内的网络对应到手册中去找一些步骤,就需要找 Air-Gapped Install 章节。安装步骤如下:

  1. 将安装脚本下载到本地,运行命令后,会在本地文件夹中看到一个叫 k10-4.0.2.tgz 的文件,其中 4.0.2 是当前最新的 k10 版本。
# 更新 helm 库,将 k10 的 chart 抓到本地来
$ helm repo update && \
    helm fetch kasten/k10
# 上面命令中,kasten 就是 repo 名字,而 k10 就是 chart 名字
  1. 在 Kubernetes 群集中创建 kasten-io 的 namespace。
# 创建名称为“kasten-io”的命名空间
$  kubectl create namespace kasten-io
  1. 使用国内镜像 ccr.ccs.tencentyun.com/kasten/ 安装 k10 的 4.0.2 版本。
# 使用 helm 安装 kasten k10
$ helm install k10 k10-4.0.2.tgz --namespace kasten-io \
    --set global.airgapped.repository=ccr.ccs.tencentyun.com/kasten
# 上面命令中,k10 就是 chart 名字,而 repo 就没有指定,直接使用了下载下来的 tgz 压缩包中的内容,不需要再去 repo 中找相关 chart 了。
  1. 由于整个安装过程,会自动去指定的容器镜像库中抓取容器镜像,比如我们这个例子就是去腾讯国内镜像 ccr.ccs.tencentyun.com/kasten/ 中抓 k10 镜像,因此会需要等待一段时间,在这段等待的过程中,可以用以下命令来查询 k10 的所有 pod 的状态。
# 查询 k10 状态
$ watch -n 2 "kubectl get pod -n kasten-io"
  1. 等到所有 pod 状态都是 running 的时候,就可以 Ctrl+C 来终止这条命令了。
  2. 安装过程到此结束,接下去就是通过图形化界面来进行 k10 的使用了,访问 Dashboard 需要将 k10 的服务从 Kubernetes 中暴露出来,方法有很多,这里说一个最简单的,我自己测试时候最常用的。
 # 后台运行命令,通过 kubectl 将 k10 仪表盘的网页服务发布出来。
 $ kubectl -n kasten-io port-forward --address 0.0.0.0 svc/gateway 8080:8000 > /dev/null 2>&1 &
  1. 通过网页浏览器访问 http://cluster ip:8080/k10/#/就能访问 k10,愉快的玩耍了。

好了,以上就是今天 Kasten K10 的第二课内容,感谢阅读,欢迎动手装一装玩一把。

打赏一个呗

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦