准备集群
在部署 ArcGIS Enterprise on Kubernetes 之前,查看以下关于准备集群的指导。
命名空间
ArcGIS Enterprise on Kubernetes 需要专用命名空间。 必须在运行部署脚本之前创建命名空间。 在单个集群中运行多个 ArcGIS Enterprise on Kubernetes 部署需要每个部署具有唯一的命名空间。
资源配额
注:
如果要执行升级,则必须根据要升级到的版本要求更新命名空间中的资源配额值。
ArcGIS Enterprise on Kubernetes pod 有明确的 CPU 和内存请求和限制。 如果命名空间包含 ResourceQuota 对象,则配额必须高于所有 Pod 的请求和限制的总和。 这些值将根据您选择的架构配置文件而有所不同,如下所述。
以下建议值是每个架构配置文件组合的最低要求。 您可能需要增加这些值以适应组织的可伸缩性和高级功能要求。
|
标准性能 |
增强性能 |
|
|---|---|---|
|
开发和测试环境 |
|
|
|
标准高可用性 |
|
|
|
增强高可用性 |
|
|
命名空间网络要求
如果使用 Kubernetes NetworkPolicies,请确保在 ArcGIS Enterprise 命名空间中允许不间断的 Pod 到 Pod 和 Pod 到服务的通信。
此外,确保命名空间中的 Pod 有权访问 Kubernetes API 服务器。 可通过默认命名空间中名为 Kubernetes 的服务访问 API 服务器。 ArcGIS Enterprise Pod 使用完全限定域名 (FQDN) kubernetes.default.svc.cluster.local 查询 API 服务器。
注:
cluster.local 是 Kubernetes 集群默认的域后缀,但在其他环境中可能有所不同。
Pod 安全性标准
Pod 安全性标准是一个 Kubernetes 功能,允许管理员在 Pod 在集群内部调度之前对其实施一套安全性规则。 默认情况下,有三种级别:特权、基线和受限。 这些标准的警告和实施按照命名空间进行控制。
设置基线或受限实施级别时,如果 Pod 不符合这些级别的安全性要求,则不允许该 Pod 运行。 有关各个级别的详细信息,请参阅以下内容:
特权 - 特权是不受限制的 Pod 安全性标准,提供大量权限不受限制的访问权限。 ArcGIS Enterprise 可在此级别下运行,无需任何配置修改。 此级别允许集群内部已知的权限提升,因此不建议在此级别运行。
基线 - 基线是更受限制的 Pod 安全性标准,此级别阻止 Pod 访问主机文件系统,并且存在对功能和其他卷类型的限制。 通过修改运行的应用程序上下文外部的基础工作节点,并于部署之前在部署属性文件中将
ALLOW_PRIVILEGED_CONTAINERS属性设置为 false,ArcGIS Enterprise 即可在基线实施级别下运行。为了匹配工作节点组的灵活性,管理员必须使用自动化进程在现有节点和新配置的节点上将
vm.max_map_count设置增加至262144。 要实现此目的,可以修改用于配置节点的基础节点映像、通过作为引导过程一部分的配置脚本应用更改或借助特权安全上下文中运行的守护进程集。受限 - 受限 Pod 安全性标准对 Pod 安全性施加最严格的限制,此标准需要显式配置大多数
securityContext属性。 所有 ArcGIS Enterprise 工作负载的必要属性均包含在内。与基线标准一样,为了匹配工作节点组的弹性,管理员必须使用自动化过程在现有节点和新配置的节点上将
vm.max_map_count设置增加至262144。 要实现此目的,可以修改用于配置节点的基础节点映像、通过作为引导过程一部分的配置脚本应用更改或借助特权安全上下文中运行的守护进程集。当实施受限 pod 安全标准时,文件夹数据存储的注册仅限于基于 PV 的卷。 有关详细信息,请参阅管理文件夹数据存储。
有关详细信息,请参阅 Pod 安全性准入和 Pod 安全性标准。
指标服务器
要在 ArcGIS Enterprise on Kubernetes 中应用水平 Pod 自动扩缩,需要使用指标服务器从每个运行节点上的 kubelet 收集 Pod 资源消耗指标。 有关详细信息,请参阅 Kubernetes Metrics Server。