828华为云征文|华为云Flexus X实例部署k3s与kuboard图形化管理工具

828华为云征文|华为云Flexus X实例部署k3s与kuboard图形化管理工具

  • 华为云最近正在举办828 B2B企业节,Flexus X实例的促销力度非常大,特别适合那些对算力性能有高要求的小伙伴。如果你有自建MySQL、Redis、Nginx等服务的需求,一定不要错过这个机会。赶紧去看看吧!

什么是华为云Flexus X实例

  • 华为云Flexus X实例云服务是新一代开箱即用、体验跃级、面向中小企业和开发者打造的高品价比云服务产品。
  • Flexus云服务器X实例是新一代面向中小企业和开发者打造的柔性算力云服务器,可智能感知业务负载,适用于电商直播、企业建站、开发测试环境、游戏服务器、音视频服务等中低负载场景。

开始接触华为云Flexus云服务器X实例

  • 获取华为云Flexus云服务器X实例后第一步就是先去华为云上重置服务器密码

  • 重置完毕后用ssh工具登录华为云服务器,这里我用的是finalshell,也可以用其他工具登陆比如xshell或者Putty都可以

  • 登录上去查看硬盘大小,可以看到是100g硬盘,硬盘总大小是正常的

    root@flexusx-ebe8:~# df -h
    Filesystem Size Used Avail Use% Mounted on
    tmpfs 1.2G 1.1M 1.2G 1% /run
    /dev/vda1 99G 4.2G 90G 5% /
    tmpfs 5.7G 0 5.7G 0% /dev/shm
    tmpfs 5.0M 0 5.0M 0% /run/lock
    tmpfs 1.2G 4.0K 1.2G 1% /run/user/0

  • 然后输入 ufw status可以看到默认防火墙是关闭的,因此我们就不需要额外再去配置端口开放相关的配置,只要在华为云安全组配置端口开放就可以了

    root@flexusx-ebe8:~# ufw status
    Status: inactive

什么是k3s

K3s 是轻量级的 Kubernetes。K3s 易于安装,仅需要 Kubernetes 内存的一半,所有组件都在一个小于 100 MB 的二进制文件中,具有以下增强功能:

  • 打包为单个二进制文件。
  • 使用基于 sqlite3 作为默认存储机制的轻量级存储后端。同时支持使用 etcd3、MySQL 和 Postgres。
  • 封装在简单的启动程序中,可以处理很多复杂的 TLS 和选项。
  • 默认情况下是安全的,对轻量级环境有合理的默认值。
  • 添加了简单但强大的 batteries-included 功能,例如:
  • 本地存储提供程序
    service load balancer
    Helm controller
    Traefik ingress controller
  • 所有 Kubernetes control plane 组件的操作都封装在单个二进制文件和进程中。因此,K3s 支持自动化和管理复杂的集群操作(例如证书分发等)。
  • 最大程度减轻了外部依赖性,K3s 仅需要现代内核和 cgroup 挂载。K3s 打包了所需的依赖,包括:
    containerd
    Flannel (CNI)
    CoreDNS
    Traefik (Ingress)
    Klipper-lb (Service LB)
    嵌入式网络策略控制器
    嵌入式 local-path-provisioner
    主机实用程序(iptables、socat 等)

开始安装k3s

  • K3s 提供了一个安装脚本,可以方便地将其作为服务安装在基于 systemd 或 openrc 的系统上。该脚本可在 https://get.k3s.io 获得。要使用这种方法安装 K3s,只需运行:curl -sfL https://get.k3s.io | sh -

  • 但可能遇到网络不通的情况,所以换个连接加速curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn sh -

    root@flexusx-ebe8:/home/k3s# curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn sh
    [INFO] Finding release for channel stable
    [INFO] Using v1.30.4+k3s1 as release
    [INFO] Downloading hash rancher-mirror.rancher.cn/k3s/v1.30.4-k3s1/sha256sum-amd64.txt
    [INFO] Downloading binary rancher-mirror.rancher.cn/k3s/v1.30.4-k3s1/k3s
    [INFO] Verifying binary download
    [INFO] Installing k3s to /usr/local/bin/k3s
    [INFO] Skipping installation of SELinux RPM
    [INFO] Creating /usr/local/bin/kubectl symlink to k3s
    [INFO] Creating /usr/local/bin/crictl symlink to k3s
    [INFO] Skipping /usr/local/bin/ctr symlink to k3s, command exists in PATH at /usr/bin/ctr
    [INFO] Creating killall script /usr/local/bin/k3s-killall.sh
    [INFO] Creating uninstall script /usr/local/bin/k3s-uninstall.sh
    [INFO] env: Creating environment file /etc/systemd/system/k3s.service.env
    [INFO] systemd: Creating service file /etc/systemd/system/k3s.service
    [INFO] systemd: Enabling k3s unit
    Created symlink /etc/systemd/system/multi-user.target.wants/k3s.service → /etc/systemd/system/k3s.service.
    [INFO] systemd: Starting k3s

  • 查看k3s安装情况,输入kubectl get node,可以看到k3s已经安装完毕,并且已经启动了一个单节点 Server, 单节点 Server安装的是一个功能齐全的 Kubernetes 集群,它包括了托管工作负载 pod 所需的所有数据存储、control plane、kubelet 和容器运行时组件

    NAME STATUS ROLES AGE VERSION
    flexusx-ebe8 Ready control-plane,master 99m v1.30.4+k3s1

  • 至此k3s的安装已经完成,相比较k8s的重量级而言,k3s的下载安装速度远远比k8s快,而且核心功能齐全,完全不逊色与k8s。更适合在一些轻量级的项目中使用。

什么是kuboard

  • Kuboard 是一个基于 Kubernetes 的图形化管理工具,用于简化 Kubernetes 集群的运维和管理。它提供了用户友好的界面,帮助用户更直观地管理和监控 Kubernetes 集群中的资源,如 Pods、服务、配置、存储卷等。
  • Kuboard 特别适合需要简化 Kubernetes 复杂操作的用户,尤其是在中小型团队中,它能够极大地提升工作效率和操作便利性

安装kuboard

  • kuboard的安装需要依赖docker,所以需要提前安装好docker,网上教程较多,此处不再赘述。

  • 先创建文件夹挂载文件mkdir /root/kuboard-data,然后执行 docker run --restart=unless-stopped -p 8088:80 -d --name kuboard -e KUBOARD_AGENT_SERVER_TCP_PORT=8088 -e KUBOARD_ENDPOINT=https://弹性公网ip -v /root/kuboard-data:/data eipwork/kuboard:v3.5.2.7

    root@flexusx-ebe8:/home/k3s# docker run --restart=unless-stopped -p 8088:80 -d --name kuboard -e KUBOARD_AGENT_SERVER_TCP_PORT=8088 -e KUBOARD_ENDPOINT=https://弹性公网ip -v /root/kuboard-data:/data eipwork/kuboard:v3.5.2.7
    69250cb8a892: Loading layer [==================================================>] 83.88MB/83.88MB
    ae2b3df40922: Loading layer [==================================================>] 13.18MB/13.18MB
    a1824de85fcf: Loading layer [==================================================>] 3.584kB/3.584kB
    250eaa00b2bd: Loading layer [==================================================>] 23.85MB/23.85MB
    8fcb3c48fc99: Loading layer [==================================================>] 17.62MB/17.62MB
    974ff5e30cff: Loading layer [==================================================>] 43.77MB/43.77MB
    f7f1d51a77b0: Loading layer [==================================================>] 97.14MB/97.14MB
    7a410bf07334: Loading layer [==================================================>] 3.072kB/3.072kB
    be58f0e51944: Loading layer [==================================================>] 9.216kB/9.216kB
    2bb74bb9a408: Loading layer [==================================================>] 23.76MB/23.76MB
    c6d10a351149: Loading layer [==================================================>] 18.77MB/18.77MB
    b465627a87b8: Loading layer [==================================================>] 42.54MB/42.54MB
    60238073cec3: Loading layer [==================================================>] 2.024MB/2.024MB
    c4f2c4dc8e79: Loading layer [==================================================>] 28.67kB/28.67kB
    b68d4a8bf0a0: Loading layer [==================================================>] 61.95kB/61.95kB
    6bf9adcbc496: Loading layer [==================================================>] 42.1MB/42.1MB
    b7761c61c80a: Loading layer [==================================================>] 42.1MB/42.1MB
    18f966ef4c93: Loading layer [==================================================>] 13.34MB/13.34MB
    8ca551781b2a26cfa2e22b3e3be2c03935e0ed5ef7ad989c389f84cc67d789b0

  • 查看kuboard运行状态 docker ps

    root@flexusx-ebe8:/home/k3s# docker ps
    CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
    8ca551781b2a eipwork/kuboard:v3.5.2.7 "/entrypoint.sh" 2 minutes ago Up 2 minutes 443/tcp, 10081/tcp, 0.0.0.0:8088->80/tcp, :::8088->80/tcp kuboard

  • 但此时还无法访问页面,还需要在华为云服务器的安全组开放端口

配置Flexus云服务器X实例安全组

  • 经过上面部署harbor服务,这时候服务是已经部署完毕了,但是我们还没法通过外网进行访问,还需要对Flexus云服务器X安全组的配置进行修改

  • 进入安全组的配置页面

  • 新建安全组

  • 这里我们开放8088端口

  • 然后加入新建的安全组

  • 这样我们的实例的端口也就开放成功了

使用kuboard并接入k3s

  • 网页访问kuboard,访问登录页

    http://弹性ip:8088/sso/auth/default?req=kgoptaus7rndtkzw6nyqyyt6q

  • 登录kuboard,默认账号密码为 admin Kuboard123

  • 选择添加集群,使用第一个方法,把脚本复制出来,去服务器执行

  • 执行完后,把红色的token复制出来

  • 按图所示填写数据,ApiServer地址填内网地址,这里不填弹性公网地址

  • 点击确定后,k3s就接入kuboard,然后选择第一个ServiceAccount kuboard-admin,然后选择集群概要

  • 至此kuboard接入k3s完成

欢迎大家一起加入华为云!

相关推荐
小袁搬码3 分钟前
Ubuntu24.04LTS设置root用户可远程登录
linux·ubuntu24.04
很楠不爱5 分钟前
Linux网络——传输层协议
linux·网络·udp
xxjkkjjkj23 分钟前
udp_socket
linux·网络
钰爱&25 分钟前
【操作系统】Linux之网络编程(UDP)(头歌作业)
linux·操作系统
最后一个bug37 分钟前
如何理解Lua 使用虚拟堆栈
linux·c语言·开发语言·嵌入式硬件·lua
Wang's Blog1 小时前
Linux: 任务的定时与延期
linux·服务器
熬了夜的程序员1 小时前
Linux 下的 AWK 命令详细指南与示例
linux·运维·服务器
Java 第一深情2 小时前
Linux上安装单机版ElasticSearch6.8.1
linux·elasticsearch·全文检索
xiaozhiwise2 小时前
Makefile 之 wordlist
linux
檀越剑指大厂2 小时前
Linux本地部署开源项目OpenHands基于AI的软件开发代理平台及公网访问
linux·人工智能·开源