第二节. 配置Ambari安装环境
关于 Ambari 的安装,目前网上能找到两个发行版,一个是 Apache 的 Ambari,另一个是 Hortonworks 的,两者区别不大。这里就以 Hortonworks 的 Ambari 2.2.2 作为示例。本文使用四台 Ubuntu14.04 作为安装环境,四台机器分别为node0.example.com、 node1.example.com、node2.example.com、node3.example.com。node0 计划安装为 Ambari 的 Server,另外三台为 Ambari Agent。
先了解如何如何使用vagrant快速搭建虚拟机集群的,可以查看文章《使用Vagrant创建虚拟机集群》
安装 Ambari 最方便的方式就是使用公共的库源(public repository)。有兴趣的朋友可以自己研究一下搭建一个本地库(local repository)进行安装。这个不是重点,所以不在此赘述。在进行具体的安装之前,需要做几个准备工作。
1.创建四台机器的域名
例如node0.example.com机器:
$ sudo echo node0 > /etc/hostname
$ sudo vim /etc/hosts
#在文件中添加本机的主机信息:
192.168.17.200 node0.example.com node0
然后依次为node1-node3修改主机名及域名信息,切记域名信息必须是FQDN格式的,如node0.example.com, node0是主机名,example.com是域名后缀。
注意:需要将在/etc/hosts中将127.0.0.1对应的信息注释或者删除,否则可能引起节点之间通信失败,其原因是这行hosts导致组件的端口监听绑定到了127.0.0.1而不是ip或者0.0.0.0,所以其他节点没法连接到这个节点。为了确保Ambari server可以根据Ambari Agent的域名信息联接,需要将node1-node3的域名信息添加到node0
在node0中执行以下操作:
$ sudo vim /etc/hosts
#在文件中添加如下信息
192.168.17.201 node1.example.com node1
192.168.17.202 node2.example.com node2
192.168.17.203 node3.example.com node3
验证:
$ ping node1.example.com
$ ping node1
2.SSH的无密码登录 Ambari的Server会SSH到Agent的机器,拷贝并执行一些命令。因此我们需要配置 Ambari Server到Agent的SSH无密码登录。在这个例子里,node0可以SSH无密码登录node1、node2和 node3。 步骤:
- 使用root用户
$ sudo -i
- 分别在node0-node3创建ssh key
$ ssh-keygen -t rsa
- 将Ambari Server的public key的内容复制到node0-node3的 /home/hadoop/.ssh/authorized_keys
- 验证:在node0输入
$ ssh [email protected]
3.安装启动ntp
$ ape-get install ntp
$ ntpq -p
4.查看是否开启transparent_hugepage
$ cat /sys/kernel/mm/transparent_hugepage/enabled
[always] madvise never
always代表开启 不存在该文件就是没开启 临时关闭
$ echo never > /sys/kernel/mm/transparent_hugepage/enabled
当重启系统后,会自动还原为always 以上的准备工作完成后,便可以真正的开始安装 Ambari 了。