Ambari 自定义服务集成 | quicklinks 快速链接不显示的排查方案

2022-11-17 09:54:24 浏览数 (1)

一、前言

最近有两位学员都反馈在 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

0 人点赞