一、前言
最近有两位学员都反馈在 Ambari 集成服务时,遇到了添加 quicklinks 快速链接不显示的问题。今天就给大家分享下如何排查解决这个问题。
二、quicklinks快速链接 问题排查
1、metainfo.xml 文件
首先,quicklinks 快速链接功能,需要在 metainfo.xml 中注册,也就是添加相关配置。
代码语言:javascript复制<!-- <quickLinksConfigurations-dir>quicklinks-es</quickLinksConfigurations-dir> -->
<quickLinksConfigurations>
<quickLinksConfiguration>
<fileName>quicklinks.json</fileName>
<default>true</default>
</quickLinksConfiguration>
</quickLinksConfigurations>
其中,quicklinks.json 所在位置,默认在服务根目录的 quicklinks 目录下。如果需要更改 quicklinks.json 文件的所在目录,则需要更改 metainfo.xml 文件的 quickLinksConfigurations-dir 属性值。
这里有个易错点:那就是 quickLinksConfigurations 和 quickLinksConfiguration 单词别写错了!!!否则在页面中不显示 Quick Links 。
2、quicklinks.json 文件
如果 metainfo.xml 相关配置没有写错,那问题应该就出在 quicklinks.json 这个文件里。
以集成 Elasticsearch 服务为示例,quicklinks.json 文件内容如下所示:
代码语言:javascript复制{
"name": "default",
"description": "default quick links configuration",
"configuration": {
"protocol": {
"type": "https",
"checks": [
]
},
"links": [
{
"name": "elasticsearch_ui",
"label": "Elasticsearch-head界面跳转",
"component_name": "ELASTICSEARCH_HEAD",
"url": "%@://%@:%@",
"port": {
"http_property": "elasticsearch_head_port",
"http_default_port": "9100",
"https_property": "elasticsearch_head_port",
"https_default_port": "9100",
"regex": "^(\d )$",
"site": "elastic-config"
}
}
]
}
}
其中 name 可以默认为 default ,不做修改。
这里也有个易错点:links[0].component_name 必须是正确的,组件名称是在 metainfo.xml 中指定的,否则在页面中不显示 Quick Links 。
三、quicklinks快速链接其他配置
quicklinks 快速链接,可以实现:
- http 与 https 的切换
- 服务端口号配置修改后,quicklinks快速链接中的端口号也可以即时更新
更多关于 quicklinks 的知识,可查看:
https://articles.zsxq.com/id_xqkdpnpnhlhb.html