Ambari自定义服务开发-代码如何获取配置参数
[toc]
上面介绍完如何设置配置文件参数,本章节介绍如何在Ambari服务中获取到我们设置的参数。
通常获取配置参数都是在params.py
文件中编写,这个是参考HDP的源码,这里我们也在该文件中进行演示。
# 两种获取参数方法介绍
方法 | 说明 |
---|---|
Script.get_config() | 获取配置参数如果不存在,会安装异常,停止运行。 |
default() | 获取配置参数如果不存在,设置默认值,取默认值。 |
# Script.get_config()
在params.py
文件中,获取配置文件configuration/doris-env.xml
中的参数
from resource_management import *
config = Script.get_config()
# 获取doris-env中的doris_pid_dir属性值
doris_pid_dir = config['configurations']['doris-env']['doris_pid_dir']
1
2
3
4
5
2
3
4
5
# default()
在params.py
文件中,获取配置文件configuration/doris-env.xml
中的参数
from resource_management.libraries.functions.default import default
# 获取doris-env中的doris_pid_dir属性值
version = default("/configurations/doris-env/doris_pid_dir", "/var/run/pid")
1
2
3
4
2
3
4
# 读取配置文件位置
配置参数最终是在:/var/lib/ambari-agent/data/command-xxx.json
文件中读取
# 常用配置参数获取
说明 | config |
---|---|
获取执行服务agent节点hostname | hostname = config['agentLevelParams']['hostname'] |
获取ambari-server节点的hostname | ambari_server_host = config['ambariLevelParams']['ambari_server_host'] |
获取当前安装服务器的名称 | ambari_server_host = config['serviceName']['ambari_server_host'] |
上次更新: 2024/04/08, 10:55:49