官网

私有化部署

作者:chonlon
更新于:2023.05.22

本文主要介绍了分形三维的私有化部署的相关内容。

产品概览

这里主要是分形三维的不同产品的看图纸的示意图,其中,SaaS 指的是我们的在线服务,私有化部署指的是我们服务的私有化部署版本。

preview

公有云版本

公有云版本请在 这里 查看具体细节。

K3S 版本

K3S 版本请在 这里 查看具体细节。

API 概览

本节主要是分形三维的 API 使用概览。

服务架构

arch

调用时序

seq

注意事项

  1. ApiKey 与 ApiToken 所有 api 调用都需要有一个 api key 或者 api token,为了安全考虑,最好不要将 api key 或者 api token 暴露在前端,可以将其放在后端,然后通过后端的 api 来调用分形三维的 api 获取 token。

  2. 服务地址 默认的服务地址是 fratal.serving 以及 fractal.s3,您可以在安装的时候指定服务地址。对于非公网域名,需要将其加入到 hosts 文件中或者私有的 dns 服务,以便能够正常访问。请注意:直接使用 ip 地址访问是不行的,因为服务端会根据域名进行路由。


K3S

系统和硬件要求

在开始安装前,你需要确保你的硬件设备和操作系统满足以下要求:

硬件要求

  • CPU:至少有 8 个核心,架构为 amd64(x64)
  • 内存:至少有 32 GiB
  • 硬盘:至少有 500 GiB 的存储空间

操作系统要求

  • Ubuntu:版本 20.04 或更高
  • Arch Linux:滚动版本发布于 2023.06 或之后
  • CentOS:版本 8 或更高,CentOS 用户请留意此处

获取和理解安装包

安装分形三维需要获取一个安装包,这个安装包由分形三维客服提供。安装包中包含了以下文件:

  • bin/manage:这是安装程序的主要执行文件
  • config.template.yaml:这是一个示例配置文件,列出了所有可配置的选项及其含义
  • fractal-<version>-amd64-airgap.tar.gz:这是安装包,用于实际安装程序

安装过程

分形三维的安装过程分为四个主要步骤:安装、校验安装状态、校验网络状态和运行 Demo 进行校验。

安装

安装过程主要使用 bin/manage 程序,详细命令如下:

  • ./bin/manage ai <package> --values <config.yaml>:这条命令将使用给定的配置文件进行安装。请注意,此命令默认以升级方式进行安装,意味着如果已经安装过,则配置文件不会被覆盖,包括数据库密码等配置。如果需要改变配置,推荐先卸载再重新安装。
  • ./bin/manage ai <package> --values <config.yaml> --force-overwrite:如果需要重新安装并覆盖已有的配置,可以添加 --force-overwrite 参数。

校验安装状态

安装完成后,可以使用 ./bin/manage status 命令查看安装状态。如果安装成功,对应的 POD 会显示为 Running 状态。

校验网络状态

安装完成后,可以使用 ./bin/manage network 命令查看网络状态。如果列出的 ingress 的 address 已经绑定,并且 hosts 为配置中设置的域名,则网络配置成功。

运行 Demo 进行校验

安装并配置完成后,我们建议运行一个 demo 来验证服务的整体状态。

配置网络和 HTTPS

我们的系统默认使用 HTTP,但是你可以选择自行配置 HTTPS。配置 HTTPS 需要在 ingress 中配置 tls 项目。一种通用的方案是使用 cert-manager

运维操作

重启服务

使用 sudo systemctl restart k3s 命令重启分形三维后端服务。

卸载服务

使用 sudo ./dist/bin/manage uk3 卸载分形三维后端服务。

常见问题与解决方案

CentOS 系统常见问题

如果遇到下列问题,可尝试提供的解决方案:

  • 安装过程中提示 k3s-selinux 未安装:按照命令行提示,安装缺失的 container-selinux 和 k3s-selinux
  • 安装过程中提示 k3s/kubectl 找不到命令:手动将 k3s、 kubectl 和 helm 从 /usr/local/bin 目录复制到到 /usr/bin 目录
  • 安装过程中提示“the server is currently unable to handle the request":关闭防火墙,sudo systemctl stop firewalld.service
    • 或者您可以找到安装完成以后 Kubernetes 的 API Server 的 IP,然后将它添加到防火墙的白名单中。

使用外部存储服务

如果你想使用外部的存储服务,例如 S3,你可以在配置文件中更改 S3 的配置以指向你具体部署的存储服务。


公有云

安装系统要求

硬件要求

后端部分至少需要一台机器作为 Node。要求如下:

项目要求
CPU4 核心以上 amd64(x64)
内存16 GiB 以上
硬盘500GiB 以上

软件要求

后端部分
系统软件环境要求
kubelet安装时需要 kubelet 已经配置为可以直接执行,也就是 KUBECONFIG 环境配置完成
helm安装时需要 helm 已经配置为可以直接执行,也就是 KUBECONFIG 环境配置完成
网络安装时需要联网

安装流程

1. 下载安装包

请在 下载页面 下载最新的安装包。

2. 安装

安装包内文件清单: - bin/manage:这是安装程序的主要执行文件 - config.template.yaml 是安装示例配置文件(config.yaml),此处描述了所有可配置项以及含意。 - fractal-<version>-amd64-online.tar.gz 是安装包(package) 使用方式: - ./bin/manage install <package> --values <config.yaml> - 请注意,install 默认是以升级方式安装,即如果已经安装过,配置文件不会被覆盖,也就是设置的 数据库密码以及 postgresql 的密码等不会不覆盖,如果希望修改,请参考此处修改配置文件 - 如果希望重新安装,可以使用 ./bin/manage install <package> --values <config.yaml> --force-overwrite - ./bin/manage --help 查看更多使用方式

3. 校验安装状态

安装完成后,可以通过以下命令查看安装状态: - ./bin/manage status 如果安装成功,会显示如下信息: 如果安装成功,对应的 POD 会显示为 Running 状态,如下所示:

NAME                                             READY   STATUS      RESTARTS      AGE
kn-blade-3o-00004-deployment-7c48fc7f6f-q89jb    2/2     Running     2 (19h ago)   2d
portal-5d9ccb5bc-xp7sk                           1/1     Running     2 (19h ago)   4d4h
kn-blade-i-00003-deployment-796b4f87c-zp84b      2/2     Running     2 (19h ago)   2d
fractal-redis-master-0                           1/1     Running     2 (19h ago)   4d23h
seaweedfs-volume-0                               1/1     Running     2 (19h ago)   4d23h
seaweedfs-master-0                               1/1     Running     2 (19h ago)   4d23h
turbine-64ccd64477-d9qmf                         1/1     Running     5 (19h ago)   4d23h
hub-6d94d56c98-8p4xs                             1/1     Running     5 (19h ago)   4d23h
seaweedfs-filer-0                                1/1     Running     2 (19h ago)   4d23h
seaweedfs-s3-676bb4d48f-g2lpj                    1/1     Running     2 (19h ago)   4d23h
cabin-85fcb7fc76-xsd8j                           1/1     Running     6 (19h ago)   4d23h
fractal-tmpost-0                                 1/1     Running     2 (19h ago)   4d23h
installed

4. 校验网络状态

安装完成以后,可以通过以下命令查看网络状态: - ./bin/manage network 如果列出的 ingress 的 address 已经绑定,且 hosts 为配置中设置的域名,说明网络配置成功,如下所示:

network

如果列出的 ingress 的 address 已经绑定,并且 hosts 为配置中设置的域名,则网络配置成功。

5. 运行 demo 进行校验

我们推荐用户在安装完成后,运行 demo 进行校验。

进阶配置

网络配置

我们的系统默认使用 HTTP 提供服务(我们也不能直接向您提供 https 所需的密钥,这样不安全),但是你可以选择自行配置。配置方式为:在 ingress 中配置 tls 项目。另外一种通用的方案是使用 cert-manager

API 手册

本节主要是所有分形三维的 API 明细。 此处是分形三维中你需要注意的所有 api。

    联系报价联系客服