跳转至
For the complete DHIS2 documentation index, see llms.txt.

服务器工具变量{ #dhis2_server_tools_variables }

Ansible 使用变量来处理系统差异。在 dhis2-server-tools、 中定义了 PostgreSQL、dhis2 实例、代理和监控系统的特定变量。虽然 变量,但我们主要是在 "dhis2-server-tools "中定义它们。 主要在 dhis2-server-tools/deploy/inventory/hosts 文件中定义、 文件中定义,该文件由 hosts.template. 创建,可根据环境自定义这些变量。

在清单主机文件中,主机按 [group_names] 分组,在我们的案例中,我们有 数据库]、[实例]、[网络]和[监控]组。 属于[所有]组。要将 变量绑定到一个特定组,请将它们放在[group_name:vars]下,例如 、 [实例:vars]。如果要将变量应用于特定主机,可将其追加到 host 行。 添加到主机行。例如,要将database_hostdhis2_version添加到 instances 组中的 dhis 主机,请使用以下格式:

实例
dhiss ansible_host=172.19.2.11 database_host=postgres dhis2_version=2.39 
另一种方法是在 inventory/host_vars/ 目录中创建一个文件,文件名与 inventory/hosts 文件中的主机名相同。 目录中创建一个文件,文件名与inventory/hosts文件中的主机名相同。这种方法的 这种方法的好处是可以使用 ansible-vault 加密文件,以增加安全性。 安全性。在 host_vars 目录中定义的变量将优先于在 inventory/hosts 目录中定义的变量。 目录中定义的变量优先于 inventory/hosts 文件中定义的变量。

touch inventory/host_vars/dhis
vim inventory/host_vars/dhis
使用 yaml 语法添加变量,如下所示
ansible_host: 172.19.2.11
数据库主机: postgres
dhis2_version: 2.39

以下是可用配置参数及其默认值的列表{ #heres-the-list-of-available-configuration-parameters-and-their-default-values }

一般变量{ #dhis2_server_tools_general_variables }


变量 评论
时区 列出所有可用的时区timedatectl list-timezones
示例
  • 欧洲/奥斯陆
  • 非洲/内罗毕
ansible_connection 取决于Architecture 。 采用,默认为lxd
选项
  • lxd ←(默认),用于单服务器架构
  • ssh ← 分布式架构
lxd_network 在此定义创建容器的网络、 默认为172.19.2.1/24
lxd_bridge_interface 创建的 lxd 网桥名称,默认为lxdbr1

实例变量{ #dhis2_server_tools_instance_variables }

变量 评论
fqdn 这是用于访问 dhis2 应用程序的域
严格要求用于 Letsencrypt 工作
创建数据库 是否应创建数据库
选项:
  • True ←(默认)
  • False
数据库主机 用作数据库服务器的主机
默认=postgres
dhis2_war_file dhis2 war 文件的源文件,可以是远程文件,也可以是本地文件。 本地文件
示例
  • "https://releases.dhis2.org/2.38/dhis2-stable-2.38.0.war"
  • /full/path/for/your/dhis2.war
dhis2_version 您可以只指定 dhis2 的主要版本,它将从 最新稳定版本https://releases.dhis2.org
如果您的 同时定义了dhis2_war_filedhis2_version 定义,则dhis2_war_file 将胜出、
示例
  • 2.39
  • 2.38
heap_memory_size 这是 tomcat Java 堆内存大小,
示例
heap_memory_size=2G
dhis2_auto_upgrade 当有更新的补丁版本时,启用 DHIS2 自动升级。
选项:
  • 假 ←(默认)

启用前,请确保已备份实例数据库。
应用程序监控 启用应用程序监控。目前支持glowroot
选项:
  • glowroot

示例:app_monitoring=glowroot

PostgreSQL 变量{ #dhis2_server_tools_postgresql_variables }

变量 评论
postgresql_version 要安装的 PostgreSQL 版本。新安装的默认版本为 16
最大连接数 允许的最大数据库连接数。
共享缓冲区 PostgreSQL 的共享缓冲区。建议使用:0.25 x Available_RAM`。
pg_work_mem 每次查询的工作内存。建议使用:(0.25 x Available_RAM) / max_connections`。
维护工作存储器 用于创建索引等维护任务的内存。尽可能合理分配。
有效缓存大小 约为 (Available_RAM - maintenance_work_mem - max_connections * work_mem) `的 80%。

代理变量

变量 评论
电子邮件 使用 Letsencrypt 时必须填写
代理 您选择的代理软件
选项
  • nginx ←(默认)
  • apache2
SSL_TYPE 该参数用于指定是使用 letsencrypt 还是你自己的customssl 证书,
选项
  • letsencrypt ← (默认)
  • customssl
munin_base_path 访问 munin 的基本路径,例如 https://domain.example.com/munin_base_path 默认为munin
munin_users 允许登录 munin 的用户及其相应密码的列表: 例如
  
munin_users:
  - name: admin
    密码:admin_password
  - 名称: user2
    密码: user2_passsword
 
 
默认用户名和密码分别为 admin 和 district。
变量 评论
电子邮件 如果使用 Let's Encrypt,则必须填写。
代理
选项
- nginx ←(默认)
- apache2
SSL_TYPE 选择使用 "letsencrypt "还是 "customssl "证书。
选项
- letsencrypt ←(默认)
- customssl
munin_base_path 访问 Munin 的基本路径,如 https://domain.example.com/munin_base_path。默认为 munin
munin_users 允许登录 Munin 的用户和密码列表。请参阅下面的示例。

示例: ``yaml munin_users: - name: admin password: admin_password - 名称: user2 password: user2_passsword ```

这些变量与 PostgreSQL 数据库主机有关,包含敏感信息。 敏感信息。建议使用 ansible-vault 加密来保护它们。您可以 可以灵活地在不同位置定义这些变量,但 建议放在 host_vars 目录下的 host 文件中、 如下所示:

dhis2-server-tools/deploy/inventory/host_vars/postgres

变量 评论
s3_access_key 这是需要与对象存储交互的云用户或编程实体(如应用程序)的唯一标识符。
`s3_secret_key`` 这是一条与访问密钥相关联的秘密信息。它用于对向对象存储空间(可能还有其他服务)发出的请求进行数字签名。该密钥必须保密,因为它代表访问密钥对请求进行验证和授权。
s3_cluster_id 对象存储的群集 URL 对每个数据中心都是唯一的。不同的数据中心有唯一的群集 ID。请参阅 Linode 的 Linode Object Storage Guide
s3_bucket 这是一种容器或存储资源,用于在对象存储环境中存储文件。