Application Basic Settings
这是一个用于管理AMDP中项目/配置文件级别应用程序的页面。每个应用程序都指的是项目和配置文件的设置和信息(集群、命名空间、Git等)。根据应用程序的特性,可以使用默认设置和资源立即构建/部署,并且可以修改像后端服务连接这样的专家设置以供使用。
应用程序基本设置列表
提供基于一般默认值的功能,这些值可以立即使用,基于在应用程序信息中设置的工作负载类型和应用框架等设置。
应用程序中设置的值在保存后不会立即反映。设置仅在通过部署管道进行构建/部署过程后应用。
应用程序基本设置中每个项目的描述:
基本部署设置
- 部署:设置应用程序的数量、资源使用等。
- 服务:设置服务类型和集群内通信的服务端口。
数据和消息管理设置
- 消息通道:连接应用程序使用的后端服务的消息通道类型。
- 数据库访问:连接应用程序使用的后端服务的数据库类型。
- 内存:连接应用程序使用的后端服务的内存类型。
详细应用程序 [基本部署设置 / 部署]
在应用程序列表屏幕的操作列中单击“编辑”按钮,以设置应用程序基本部署设置中的部署信息。这包括副本数量、容器的访问端口和资源属性。
① 副本 : 指定要创建的实例(Pods)数量。默认值为 1。与 Kubernetes 中的 ReplicaSet 相关。
② Http 端口 : 设置应用程序使用的端口。默认值根据应用框架而异。与 Kubernetes 中的容器端口相关。
- SPRINGBOOT 或 DOCKER 的默认值为 8080。
- VUE/REACT/NEXACRO 的默认值为 80。
③ CPU 请求 : 设置应用程序主容器的初始请求 CPU 规格。当选择使用 CPU 请求属性时激活。默认值为 500 (m)。与 Kubernetes 中的 CPU 请求相关。
④ CPU 限制 : 设置应用程序主容器的最大 CPU 规格。当选择使用 CPU 限制属性时激活。默认值为 1000 (m)。与 Kubernetes 中的 CPU 限制相关。
⑤ 内存请求 (Mi) : 设置应用程序主容器的初始请求内存规格。当选择使用内存请求属性时激活。默认值为 128 (Mi)。与 Kubernetes 中的内存请求相关。
⑥ 内存限制 (Mi) : 设置应用程序主容器的最大内存规格。当选择使用内存限制属性时激活。默认值为 256 (Mi)。与 Kubernetes 中的内存限制相关。
如果未确定最佳内存使用情况,将内存限制设置为低于实际使用量可能会导致内存溢出 (OOM) 问题,因此在设置此限制时需要谨慎。
应用程序 [基本部署设置 / 服务] 详细设置
设置集群中应用程序内部/外部通信所需的信息。
① 服务类型 : 应用程序内部和外部通信的服务类型。 应用程序依赖于集群提供的服务类型:
- ClusterIP:主要是,这种模式使应用程序只能在集群内部进行通信。它不需要额外的配置来进行外部访问。然而,如果需要服务通信,可以使用端口转发功能进行访问。
- NodePort:这种模式在集群内分配一个端口(默认范围:30000-32767)以供外部访问。内部通信方式与ClusterIP相同。
- LoadBalancer:在云提供商支持的外部负载均衡器的环境中,这种模式连接到负载均衡器的配置。负载均衡器的创建是异步的,取决于云提供商的环境。内部通信方式与ClusterIP相同。
② 服务注解:服务注解将特定的注解注入到应用程序的服务配置中。这用于扩展云提供商或集群环境提供的某些功能。
- 它们必须以键/值格式编写,键和值都不能为null。
- 可以通过点击图标“+”创建多个注解。
③ 会话亲和性:如果您希望将客户端请求始终连接到同一应用程序组中的特定pod,则使用此设置。默认设置为None,这意味着未设置会话亲和性。如果设置为ClientIP,则检查客户端的IP以保持与同一pod的连接。
- 默认值为None。大多数应用程序不需要此设置。
④ 服务端口:这是服务接收应用程序通信的端口信息。它包括集群内的内部服务端口和从外部访问服务的各种方法。接收到的信息与目标端口信息相关联,实际应用程序从中响应。
- 服务可以将所有接收的端口映射到目标端口,为了方便,通常会为两者设置相同的值。
- SPRINGBOOT 或 DOCKER 的默认值为 8080。
- VUE/REACT/NEXACRO 的默认值为 80。
⑤ 目标端口:这是应用程序内部服务响应的端口信息。服务指定一个端口来表示该服务。
- 服务可以将所有接收的服务端口映射到目标端口,为了方便,通常会为两者设置相同的值。
- SPRINGBOOT 或 DOCKER 的默认值为 8080。
- VUE/REACT/NEXACRO 的默认值为 80。
应用程序数据与消息管理设置
对于使用 SpringBoot 应用框架作为 API 服务器的应用程序,有一个功能可以通过添加与后端服务相关的设置来自动注入应用程序配置数据。
① 消息通道:提供来自 RabbitMQ 和 Kafka 等后端服务的消息通道相关信息的自动配置。
② 数据库访问:为 MariaDB、MongoDB、PostgreSQL 和 Oracle 等数据库相关的后端服务提供自动配置。
③ 内存:为 Redis 等内存相关的后端服务提供自动配置。
应用程序数据与消息管理的详细设置 / 消息通道
对于在配置文件的后端服务中注册的消息通道类型(RabbitMQ、Kafka),当应用程序部署到集群时,设置信息会自动注入:
① 消息通道(消息通道属性使用):选择是否使用消息通道属性。当启用时,相关设置将被应用。
② 代理实例:从配置文件的后端服务列表中选择与消息通道(RabbitMQ、Kafka)相关的一个服务。设置将自动注入到SpringBoot应用程序配置中。
- 对于RabbitMQ:
- spring.rabbitmq.host:管理RabbitMQ主机访问信息。
- spring.rabbitmq.port:管理RabbitMQ端口信息。
- spring.rabbitmq.username:管理RabbitMQ用户信息,作为秘密提供。
- spring.rabbitmq.password:管理RabbitMQ用户密码,作为秘密提供。
- 对于Kafka:
- spring.kafka.bootstrap-servers:管理Kafka引导访问主机信息。
应用数据和消息管理的详细设置 /数据库访问
选择在配置文件的后端服务中注册的后端服务类型(MariaDB、MongoDB、PostgreSQL、Oracle),以便在应用程序部署到集群时自动注入设置信息。
① 数据库访问(数据库访问属性使用):选择是否使用数据库访问属性。当启用时,相关设置将被应用。
② 数据库实例:从配置文件的后端服务列表中选择与数据库(MariaDB、MongoDB、PostgreSQL、Oracle)相关的一个服务。设置将自动注入到SpringBoot应用程序配置中。
- 对于MariaDB类型,管理以下设置:
- spring.datasource.driver-class-name:设置使用MariaDB的驱动程序。
- spring.datasource.url:设置MariaDB主机访问信息。
- spring.datasource.username:设置MariaDB用户信息,作为秘密管理。
- spring.datasource.password : 设置MariaDB用户密码,作为秘密管理。
- 对于MongoDB类型,管理以下设置:
- spring.data.mongodb.host : 设置MongoDB主机访问信息。
- spring.data.mongodb.port : 设置MongoDB访问端口。
- 对于PostgreSQL类型,管理以下设置:
- spring.datasource.driver-class-name : 设置使用PostgreSQL的驱动程序。
- spring.datasource.url : 设置PostgreSQL主机访问信息。
- spring.datasource.username : 设置PostgreSQL用户信息,作为秘密管理。
- spring.datasource.password : 设置PostgreSQL用户密码,作为秘密管理。
- 对于Oracle类型,管理以下设置:
- spring.datasource.driver-class-name : 设置使用Oracle DB的驱动程序。
- spring.datasource.url : 设置Oracle DB主机访问信息。
- spring.datasource.username : 设置Oracle DB用户信息,作为秘密管理。
- spring.datasource.password : 设置Oracle DB用户密码,作为秘密管理。
应用程序的 [数据与消息管理设置 / 内存] 详细配置 (编辑)
此配置涉及选择在配置文件的后端服务中注册的内存类型后备服务(Redis)。当应用程序在集群中部署时,这些设置会根据所选配置自动注入。
① 缓存 : 选择是否使用缓存属性。如果启用,将应用相关设置。
② 缓存实例 : 从配置文件中注册的内存类型服务中选择目标缓存实例。 ③ 默认过期时间:设置缓存的默认过期时间。默认值为3600(秒)。在SpringBoot应用程序配置中设置为spring.cache.redis.default-expire-time。
④ 生存时间:设置缓存信息的生存时间(TTL)。默认值为3600(秒)。在SpringBoot应用程序配置中设置为spring.cache.redis.time-to-live。
⑤ 键前缀:设置缓存中使用的键的前缀值。默认值为myCache。在SpringBoot应用程序配置中设置为spring.cache.redis.keyprefix。
⑥ 使用键前缀:设置是否激活缓存键的前缀。默认值为true。在SpringBoot应用程序配置中设置为spring.cache.redis.use-key-prefix。
① 会话(使用会话属性):选择是否使用会话属性。激活此设置将应用与会话管理相关的配置。
② 会话类型:指定Redis会话的类型。
- Redis会话:用于基于Spring WebMVC的模块。
- Redis会话Webflux:适用于基于Spring WebFlux的模块。
③ 会话实例:从配置文件中注册的内存类型服务中选择会话实例的目标。
④ 刷新模式:定义会话数据如何写入服务器。选择ON_SAVE和IMMEDIATE。配置在SpringBoot应用程序设置中为spring.session.redis.flush-mode。默认值为ON_SAVE。
- ON_SAVE:在调用时保存到会话服务器。
- IMMEDIATE:无论调用与否,立即记录到会话服务器。
⑤ 保存模式:选择会话保存模式,可以是ALWAYS或ON_SET_ATTRIBUTE。配置在SpringBoot应用程序设置中为spring.session.redis.save-mode。默认值为ALWAYS。
- ALWAYS:始终保存所有会话属性。
- ON_SET_ATTRIBUTE: 仅保存更改。
⑥ 命名空间:这是 Redis 命名空间,默认值为 spring:session。在 SpringBoot 应用程序设置中配置为 spring.session.redis.namespace。
⑦ 超时:设置会话的过期时间。默认值为 60 分钟。在 SpringBoot 应用程序设置中配置为 spring.redis.timeout。