热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

第七章Ambari二次开发之自定义Flink服务configuration配置目录详解

1、configuration目录详解configuration目录:主要对第三方服务的Conf目录下相关配置进行参数定义。核心:configurati




1、configuration目录详解


  • configuration目录:主要对第三方服务的Conf目录下相关配置进行参数定义

  • 核心:configuration被 Ambari Server 加载之后,在前端页面上会出现两个配置项,分别是 高级选项 和 自定义选项。其中 高级选项 里面就是 xml 文件的内容,自定义选项 可以加入自定义配置信息,如果不需要显示自定义配置信息的话,可以通过添加 来隐藏掉自定义配置信息。

在这里插入图片描述


2、自定义目录文件


2.1、目录文件说明

  • 目录中文件如下

在这里插入图片描述

<configuration>
<property>
<name>flink_install_dirname>
<value>/opt/flinkvalue>
<description>Location to install Flinkdescription>
property>
<property>
<name>elasticsearch_portname>
<display-name>Elasticsearch portdisplay-name>
<value>9200value>
<description>Elasticsearch portdescription>
property>
<property>
<name>contentname>
<display-name>Elasticsearch config file templatedisplay-name>
<description>This is the template for elasticsearch.yml filedescription>
<value>
http.port: {{elasticsearch_port}}
value>
<value-attributes>
<type>contenttype>
<show-property-name>trueshow-property-name>
value-attributes>
<on-ambari-upgrade add&#61;"true"/>
property>

configuration>

  • property属性说明

属性名称属性描述备注
name属性名称&#xff0c;当无 display-name 属性时&#xff0c;name 值将会显示在前端页面上。
display-name前端页面显示的名称&#xff0c;会覆盖显示在前端页面上的 name 值。
value属性值&#xff0c;前端页面对应输入框里面的值&#xff0c;可修改并保存。
description属性描述信息。在前端页面上以鼠标悬浮框的形式显示出来。

  • 页面展示&#xff1a;configuration 文件内的大部分&#xff08;普通&#xff09;属性都会在 Ambari Web UI 上的 CONFIGS 下展示&#xff0c;内容可编辑修改。

在这里插入图片描述


2.2、相关参数配置详解

&#xff08;1&#xff09;配置项锁定


  • 实现效果&#xff1a;服务安装后不可编辑&#xff0c;

<value-attributes>
<editable-only-at-install>trueeditable-only-at-install>
value-attributes>

  • 修改前效果图

在这里插入图片描述


  • 修改后效果图

在这里插入图片描述

&#xff08;2&#xff09;允许字段为空


  • 实现效果&#xff1a;允许value值为空

<value-attributes>
<empty-value-valid>trueempty-value-valid>
value-attributes>

  • 修改前效果&#xff1a;默认情况下字段值为空在安装页面会告警提示

在这里插入图片描述


  • 修改后效果

在这里插入图片描述

&#xff08;3&#xff09;设置密码校验


  • 实现效果&#xff1a;修改配置项时需要输入密码

<property require-input&#61;"true">
<name>kadmin.local.passwordname>
<display-name>admin passworddisplay-name>
<value/>
<property-type>PASSWORDproperty-type>
<description>The password is used to add the kerberos database administratordescription>
<value-attributes>
<type>passwordtype>
value-attributes>
property>

  • 修改后效果图
    在这里插入图片描述
    &#xff08;4&#xff09;实现swith滑块

  • 效果要求&#xff1a;实现滑块形式的开关要求

<property>
<name>hue-hdfs-module-enabledname>
<value>Yesvalue>
<display-name>Hue HDFS Moduledisplay-name>
<description>Enable Hue Filebrower Moduledescription>
<value-attributes>
<overridable>falseoverridable>
<type>value-listtype>
<entries>
<entry>
<value>Yesvalue>
<label>ONlabel>
entry>
<entry>
<value>Novalue>
<label>OFFlabel>
entry>
entries>
<selection-cardinality>1selection-cardinality>
value-attributes>
property>

  • 修改前效果

  • 修改后效果

&#xff08;5&#xff09;是否显示配置名称


  • 目标效果&#xff1a;隐藏部分name配置&#xff0c;将value输入框设置为文本框

<value-attributes>

<type>contenttype>

<show-property-name>trueshow-property-name>
value-attributes>

  • 输入框 VS 目录输入框VS 文本框显示效果

在这里插入图片描述

&#xff08;6&#xff09;自动创建用户和用户组

<property>
<name>elastic_username>
<display-name>Elasticsearch userdisplay-name>
<value>esvalue>
<description>Elasticsearch userdescription>
<property-type>USERproperty-type>
<value-attributes>
<type>usertype>
<user-groups>
<property>
<type>cluster-envtype>
<name>user_groupname>
property>
<property>
<type>elastic-envtype>
<name>es_groupname>
property>
user-groups>
value-attributes>
property>
<property>
<name>es_groupname>
<display-name>es User Groupdisplay-name>
<value>elasticsearch_groupvalue>
<property-type>GROUPproperty-type>
<description>es user group.description>
property>

  • 注意事项&#xff1a;只有在初始安装时可自动创建用户/用户组&#xff0c;如果进行扩容则无法实现自动创建

&#xff08;7&#xff09;配置修改后&#xff0c;提示重启服务


<metainfo>
<schemaVersion>2.0schemaVersion>
<services>
<service>
...(省略)

<components>
<component>
<name>ELASTICSEARCH_SERVICEname>
<displayName>Elasticsearch ServicedisplayName>
<category>MASTERcategory>
<cardinality>1&#43;cardinality>
...(省略)
<configuration-dir>configurationconfiguration-dir>
<configuration-dependencies>
<config-type>elastic-configconfig-type>
configuration-dependencies>
...(省略)
component>
components>

<configuration-dir>configurationconfiguration-dir>
<configuration-dependencies>
<config-type>elastic-envconfig-type>
configuration-dependencies>

...(省略)
service>
services>
metainfo>

  • 参数说明&#xff1a; 作用域下的 / 来说&#xff0c;如果在前端页面上修改了该 xml 文件内容后并保存配置&#xff0c;那么整个服务都将会提示重启。如果是 的作用域下&#xff0c;则只提示重启该 component 组件&#xff0c;并不是所有组件都重启。

属性说明备注
config-typeconfiguration 目录下 xml 文件的名
configuration-dependencies指定服务所依赖的配置文件

3、调试方法

1、修改文件
2、将修改文件覆盖/var/lib/ambari-server/resources/stacks/HDP/3.1/services/FLINK
3、重启ambari-server
4、卸载服务重新安装

  • 文件配置路径&#xff1a;Ambari 自定义服务的参数配置由 xml 文件管理&#xff0c;默认存放在 configuration 目录下。如果要自定义该目录名称的话&#xff0c;可以在 metainfo.xml 中声明&#xff0c;在 service 标签下设置 configuration-dir 的值&#xff1a;configuration-dir

  • 配置修改记录会保存到 ambari 数据库中&#xff0c;主要涉及到的表有如下&#xff1a;


    • serviceconfig
    • serviceconfigmapping
    • clusterconfig&#xff08;历史配置的详细内容&#xff09;






推荐阅读
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • Nginx使用(server参数配置)
    本文介绍了Nginx的使用,重点讲解了server参数配置,包括端口号、主机名、根目录等内容。同时,还介绍了Nginx的反向代理功能。 ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • 本文介绍了Perl的测试框架Test::Base,它是一个数据驱动的测试框架,可以自动进行单元测试,省去手工编写测试程序的麻烦。与Test::More完全兼容,使用方法简单。以plural函数为例,展示了Test::Base的使用方法。 ... [详细]
  • 成功安装Sabayon Linux在thinkpad X60上的经验分享
    本文分享了作者在国庆期间在thinkpad X60上成功安装Sabayon Linux的经验。通过修改CHOST和执行emerge命令,作者顺利完成了安装过程。Sabayon Linux是一个基于Gentoo Linux的发行版,可以将电脑快速转变为一个功能强大的系统。除了作为一个live DVD使用外,Sabayon Linux还可以被安装在硬盘上,方便用户使用。 ... [详细]
  • 本文介绍了在mac环境下使用nginx配置nodejs代理服务器的步骤,包括安装nginx、创建目录和文件、配置代理的域名和日志记录等。 ... [详细]
  • Inno Setup区段之Components篇相关知识详解
    本文详细介绍了Inno Setup区段之Components篇相关的知识,包括Components和Types的使用方式以及各个参数的说明,希望对读者有一定的参考价值。内容涵盖了ComponentsName、Description、Types、ExtraDiskSpaceRequired、ExtraDiskSpaceRequiredFlags等多个关键词,帮助读者更好地理解和应用Inno Setup区段之Components篇的知识。 ... [详细]
  • 本文介绍了在rhel5.5操作系统下搭建网关+LAMP+postfix+dhcp的步骤和配置方法。通过配置dhcp自动分配ip、实现外网访问公司网站、内网收发邮件、内网上网以及SNAT转换等功能。详细介绍了安装dhcp和配置相关文件的步骤,并提供了相关的命令和配置示例。 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • 本文介绍了九度OnlineJudge中的1002题目“Grading”的解决方法。该题目要求设计一个公平的评分过程,将每个考题分配给3个独立的专家,如果他们的评分不一致,则需要请一位裁判做出最终决定。文章详细描述了评分规则,并给出了解决该问题的程序。 ... [详细]
  • Firefox火狐浏览器关闭到http://detectportal.firefox.com的流量问题解决办法
    本文介绍了使用Firefox火狐浏览器时出现关闭到http://detectportal.firefox.com的流量问题,并提供了解决办法。问题的本质是因为火狐默认开启了Captive portal技术,当连接需要认证的WiFi时,火狐会跳出认证界面。通过修改about:config中的network.captive-portal-service.en的值为false,可以解决该问题。 ... [详细]
  • 本文介绍了Oracle数据库中tnsnames.ora文件的作用和配置方法。tnsnames.ora文件在数据库启动过程中会被读取,用于解析LOCAL_LISTENER,并且与侦听无关。文章还提供了配置LOCAL_LISTENER和1522端口的示例,并展示了listener.ora文件的内容。 ... [详细]
  • http:my.oschina.netleejun2005blog136820刚看到群里又有同学在说HTTP协议下的Get请求参数长度是有大小限制的,最大不能超过XX ... [详细]
author-avatar
dwxa520恋歌_261
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有