ambari2.6 blueprint, 创建单节点集群

1 blueprint介绍

blueprint通过API方式实现集群的部署, 相较于可视化部署, 可以轻松实现静默安装, 进一步简化部署步骤

Ambari Blueprints provide an API to perform cluster installations.

You can build a reusable “blueprint” that defines which Stack to use, how Service Components should be laid out across a cluster and what configurations to set.

img

2 创建Blueprint

blueprint定义主机组host_group_1, 组内又定义了一系列基础组件 (zookeeper, hdfs, yarn)

组件要安装到哪台服务器呢, 所以还需要主机组与主机的映射关系, 见第4节

新建文件: cluster.json

{
	"Blueprints": {
		"blueprint_name": "N1-hdp26",
		"stack_name": "HDP",
		"stack_version": "2.6"
	},
	"configurations": [],
	"host_groups": [
		{
			"name": "host_group_1",
			"components": [
				{
					"name": "NAMENODE"
				},
				{
					"name": "SECONDARY_NAMENODE"
				},
				{
					"name": "DATANODE"
				},
				{
					"name": "HDFS_CLIENT"
				},
				{
					"name": "RESOURCEMANAGER"
				},
				{
					"name": "NODEMANAGER"
				},
				{
					"name": "YARN_CLIENT"
				},
				{
					"name": "HISTORYSERVER"
				},
				{
					"name": "APP_TIMELINE_SERVER"
				},
				{
					"name": "MAPREDUCE2_CLIENT"
				},
				{
					"name": "ZOOKEEPER_SERVER"
				},
				{
					"name": "ZOOKEEPER_CLIENT"
				}
			],
			"cardinality": "1"
		}
	]
}

3 注册Blueprint

curl -H "X-Requested-By: ambari" -X POST \
  -u admin:admin \
  http://<ambari-server>:8080/api/v1/blueprints/<blueprint-name>?validate_topology=false \
  -d @cluster.json

validate_topology=false, 表示不校验集群拓扑, 规避单节点限制

注册成功后, 通过http://<ambari-hostname>:8080/api/v1/blueprints/查看注册结果

4 创建主机组映射

第2节创建了主机组host_group_1, 这里定义host_group_1组对应的主机h199

因为是单节点部署, 所以只有1个节点

新建文件: hostmapping.json

  • blueprint名称与注册的blueprint_name一致
{
  "blueprint" : "N1-hdp26",
  "default_password": "admin",
  "host_groups" :[
    {
      "name" : "host_group_1",
      "hosts" : [
        {
          "fqdn" : "h199"
        }
      ]
    }
  ]
}

5 修改HDP源

修改repo文件 /var/lib/ambari-server/resources/stacks/HDP/2.6/repos/repoinfo.xml, 安装时直接走本地yum源, 修改后重启ambari-server

  • 因为blueprint指定stack_version=2.6, 所以只需要修改2.6的源文件
  • 由于我使用的操作系统为centos7, 选择os=redhat7的配置进行修改
  <os family="redhat7">
    <repo>
     <!-- <baseurl>http://public-repo-1.hortonworks.com/HDP/centos7/2.x/updates/2.6.0.3</baseurl> -->
      <baseurl>http://<本地yum源地址>/HDP/centos7/2.6.4.0-91</baseurl>
      <repoid>HDP-2.6</repoid>
      <reponame>HDP</reponame>
      <unique>true</unique>
    </repo>
    <repo>
   <!--   <baseurl>http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.21/repos/centos7</baseurl> -->
      <baseurl>http://<本地yum源地址>/HDP-UTILS/centos7/1.1.0.22</baseurl>
      <repoid>HDP-UTILS-1.1.0.21</repoid>
      <reponame>HDP-UTILS</reponame>
      <unique>false</unique>
    </repo>
  </os>

6 创建集群

curl -H "X-Requested-By: ambari" -X POST \
  -u admin:admin \
  http://<ambari-server>:8080/api/v1/clusters/<集群名> \
  -d @hostmapping.json

登录ambari UI, 可以观察安装过程

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值