在 Linux 上以 All-in-One 模式安装 KubeSphere

步骤 1:准备 Linux 机器

若要以 All-in-One 模式进行安装,您仅需参考以下对机器硬件和操作系统的要求准备一台主机。

硬件推荐配置

操作系统最低配置
Ubuntu 16.0418.0420.0422.042 核 CPU,4 GB 内存,40 GB 磁盘空间
Debian BusterStretch2 核 CPU,4 GB 内存,40 GB 磁盘空间
CentOS 7.x2 核 CPU,4 GB 内存,40 GB 磁盘空间
Red Hat Enterprise Linux 72 核 CPU,4 GB 内存,40 GB 磁盘空间
SUSE Linux Enterprise Server 15/openSUSE Leap 15.22 核 CPU,4 GB 内存,40 GB 磁盘空间

备注

以上的系统要求和以下的教程适用于没有启用任何可选组件的默认最小化安装。如果您的机器至少有 8 核 CPU 和 16 GB 内存,则建议启用所有组件。

节点要求

  • 节点必须能够通过 SSH 连接。
  • 节点上可以使用 sudo/curl/openssl/tar 命令。

容器运行时

您的集群必须有一个可用的容器运行时。如果您使用 KubeKey 搭建集群,KubeKey 会默认安装最新版本的 Docker。或者,您也可以在创建集群前手动安装 Docker 或其他容器运行时。

支持的容器运行时版本
Docker19.3.8 +
containerd最新版
CRI-O(试验版,未经充分测试)最新版
iSula(试验版,未经充分测试)最新版

依赖项要求

KubeKey 可以将 Kubernetes 和 KubeSphere 一同安装。针对不同的 Kubernetes 版本,需要安装的依赖项可能有所不同。您可以参考以下列表,查看是否需要提前在节点上安装相关的依赖项。

依赖项Kubernetes 版本 ≥ 1.18Kubernetes 版本 < 1.18
socat必须可选但建议
conntrack必须可选但建议
ebtables可选但建议可选但建议
ipset可选但建议可选但建议

信息

KubeKey 是用 Go 语言开发的一款全新的安装工具,代替了以前基于 ansible 的安装程序。KubeKey 为用户提供了灵活的安装选择,可以分别安装 KubeSphere 和 Kubernetes 或二者同时安装,既方便又高效。

网络和 DNS 要求

  • 请确保 /etc/resolv.conf 中的 DNS 地址可用,否则,可能会导致集群中的 DNS 出现问题。
  • 如果您的网络配置使用防火墙规则或安全组,请务必确保基础设施组件可以通过特定端口相互通信。建议您关闭防火墙。
  • 支持的 CNI 插件:Calico 和 Flannel。其他插件也适用(例如 Cilium 和 Kube-OVN 等),但请注意它们未经充分测试。

提示

  • 建议您的操作系统处于干净状态(不安装任何其他软件),否则可能会发生冲突。
  • 如果您无法从 dockerhub.io 下载容器镜像,建议提前准备仓库的镜像地址(即加速器)。

步骤 2:下载 KubeKey

请按照以下步骤下载 KubeKey。

从 GitHub Release Page 下载 KubeKey 或直接使用以下命令(ubuntu使用bash替换sh)。

curl -sfL https://get-kk.kubesphere.io | VERSION=v3.0.7 sh -

备注

执行以上命令会下载最新版 KubeKey,您可以修改命令中的版本号下载指定版本。

为 kk 添加可执行权限:

chmod +x kk

步骤 3:开始安装

在本快速入门教程中,您只需执行一个命令即可进行安装,其模板如下所示:

./kk create cluster [--with-kubernetes version] [--with-kubesphere version]

若要同时安装 Kubernetes 和 KubeSphere,可参考以下示例命令:

./kk create cluster --with-kubernetes v1.22.12 --with-kubesphere v3.3.2

备注

  • 安装 KubeSphere 3.3 的建议 Kubernetes 版本:v1.20.x、v1.21.x、* v1.22.x、* v1.23.x 和 * v1.24.x。带星号的版本可能出现边缘节点部分功能不可用的情况。因此,如需使用边缘节点,推荐安装 v1.21.x。
  • 一般来说,对于 All-in-One 安装,您无需更改任何配置。
  • 如果您在这一步的命令中不添加标志 --with-kubesphere,则不会部署 KubeSphere,KubeKey 将只安装 Kubernetes。如果您添加标志 --with-kubesphere 时不指定 KubeSphere 版本,则会安装最新版本的 KubeSphere。
  • KubeKey 会默认安装 OpenEBS 为开发和测试环境提供 LocalPV 以方便新用户。

执行该命令后,KubeKey 将检查您的安装环境,结果显示在一张表格中。

步骤 4:验证安装结果

输入以下命令以检查安装结果。

kubectl logs -n kubesphere-system $(kubectl get pod -n kubesphere-system -l 'app in (ks-install, ks-installer)' -o jsonpath='{.items[0].metadata.name}') -f

输出信息会显示 Web 控制台的 IP 地址和端口号,默认的 NodePort 是 30880。现在,您可以使用默认的帐户和密码 (admin/P@88w0rd) 通过 <NodeIP>:30880 访问控制台。

#####################################################
###              Welcome to KubeSphere!           ###
#####################################################

Console: http://192.168.0.2:30880
Account: admin
Password: P@88w0rd

NOTES:
  1. After you log into the console, please check the
     monitoring status of service components in
     "Cluster Management". If any service is not
     ready, please wait patiently until all components 
     are up and running.
  2. Please change the default password after login.

#####################################################
https://kubesphere.io             20xx-xx-xx xx:xx:xx
#####################################################

备注

您可能需要配置端口转发规则并在安全组中开放端口,以便外部用户访问控制台。

登录至控制台后,您可以在系统组件中查看各个组件的状态。如果要使用相关服务,您可能需要等待部分组件启动并运行。您也可以使用 kubectl get pod --all-namespaces 来检查 KubeSphere 相关组件的运行状况。

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/8003

(0)
郭靖的头像郭靖
上一篇 2023年4月14日 下午4:10
下一篇 2023年4月18日 下午4:11

相关推荐

  • Linux Centos 7.6修改ssh端口为49527,并添加防火墙例外,修改root密码, 设置禁ping,搭建FTP站点 ,修改yum源。

    1.修改ssh端口为49527,并添加防火墙例外 (1). 修改ssh配置文件  /etc/ssh/sshd_config,将端口号修改为49527.同时保留ssh默认的22端口,为了防止修改端口号失败以后,远程登录不上服务器,如图1所示: (2).修改firewall配置 默认情况下,防火墙在没有配置任何策略集情况下,是禁止所有ip地址和端口号同行的,因此…

    2022年7月18日
    1.5K00
  • 安装 Smem – Linux工具 安装条件: 现代内核 (版本号高于 2.6.27) 较新的 Python 版本 (2.4 及以后版本) 可选的 matplotlib 库用于生成图表 对于当今的大多数的 Linux 发行版而言,内核版本和 Python 的版本都能够满足需要,所以仅需要为生成良好的图表安装 matplotlib 库。 RHEL,…

    2023年8月25日
    1.1K00
  • MySQL数据库数据对比工具——Mysqldbcompare

    MySQL Utilities介绍 MySQL Utilities 提供一组命令行工具用于维护和管理 MySQL 服务器,包括: 管理工具 (克隆、复制、比较、差异、导出、导入) 复制工具 (安装、配置) 一般工具 (磁盘使用情况、冗余索引、搜索元数据) MySQL Utilities是一系列的命令行工具以及python库更容易完成管理的任务。库是用Pyth…

    2023年5月4日
    1.4K00
  • find命令排除某些目录或文件

    使用-prune开关。例如,如果要排除misc目录,只需将a添加-path ./misc -prune -o到您的find命令中: find . -path ./misc -prune -false -o -name ‘*.txt’ 这是带有多个目录的示例: find . -type d \( -path dir1 -o -path dir2 -o -pat…

    2023年6月16日
    1.3K00
  • 微信扫码登录的技术实现思考

    简介: 微信扫码登录是很常见的技术,曾经在一次面试当中,面试官就曾问过微信扫码登录的实现思路,这次,以微信读书网页版扫码登录为例子,聊聊我对它技术实现思路一些思考。 微信扫码登录是很常见的技术,曾经在一次面试当中,面试官就曾问过微信扫码登录的实现思路,这次,以微信读书网页版扫码登录为例子,聊聊我对它技术实现思路一些思考。 以谷歌浏览器来做分析,打开F12,准…

    2023年11月10日
    96000

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信