Ambari学习笔记:安装、配置与启动

按照官方文档的来有点迷糊,麻烦到爆炸不说,还有个报错解决不了,干脆直接通过apt安装,依赖库使用网络库。

环境:Ubuntu.1604.server


安装

参考文章

切换到root用户,进入目录,获取ambari的公共库文件并更新:

su root;
cd /etc/apt/sources.list.d;
wget http://public-repo-1.hortonworks.com/ambari/ubuntu14/2.x/updates/2.2.2.0/ambari.list;
apt-key adv --recv-keys --keyserver keyserver.ubuntu.com B9733A7A07513CAD;
apt-get update;

安装ambari:

apt-get install ambari-server

配置

ambari-server setup

自定义账户,输入y:

用户名默认root,直接回车:

选JDK,因为主机上已经安装了JDK,选择3并输入JDK路径:
Ambari学习笔记:安装、配置与启动_第1张图片
后一步为配置数据库,回车默认。


启动

ambari-server start

启动成功能看到守护进程;

其web管理页面url为:http://master:8080/
(注意与spark的web地址冲突了)

默认用户名与密码都是admin:
Ambari学习笔记:安装、配置与启动_第2张图片


实现集群间的无密登录

注意:ambari的安装、启动与配置均需在root权限下操作,并且要能保证主机与各从机之间能无密登录,这部分工作在配置hadoop集群时就已完成了。但是注意,当时配置的是账户”daya”之间能够无密登录,并没有配置root用户的无密登录,所以远程登录前需要切换回”daya”或者再配置root用户。

生成非对称密钥对

在root用户下执行:

ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa;
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys;

将密钥对文件夹分发给各从机(这里应该是只分发公钥文件id_rsa.pub,但是由于各从机上没有相关目录,分发文件的话还得创建文件夹,所以直接将整个文件夹发送过去更方便):

scp -r ~/.ssh root@slave1:~/;
scp -r ~/.ssh root@slave2:~/;
scp -r ~/.ssh root@slave3:~/;

还记得之前配置hadoop集群分发配置文件时出现了权限问题,Ubuntu默认不允许远程root账户登录。所以修改配置使得其允许远程root账户登录,修改各从机的/etc/ssh/sshd_config文件:

sudo nano /etc/ssh/sshd_config;

修改一行:
PermitRootLogin yes
重启ssh:

sudo service ssh restart

这样再次分发文件夹就不会有权限问题了。


配置集群

进入web页面http://master:8080/配置集群:

sudo firefox

集群名称:

指定要管理的从机:
Ambari学习笔记:安装、配置与启动_第3张图片

录入私钥信息:
Ambari学习笔记:安装、配置与启动_第4张图片

自动安装ambari-agent(出错)

之后web管理会自动在三台slave从机上安装ambari-agent并向主机注册,但是我这里报了错,原因不明(从机均已安装Python2.7):
STDOUT: /usr/bin/env: ‘python’: No such file or directory
三台从机都是报一样的错误,暂未解决。

手动安装ambari-agent

无法自动安装那就只好手动安装了,三台从机均需执行:

su root;
cd /etc/apt/sources.list.d;
wget http://public-repo-1.hortonworks.com/ambari/ubuntu14/2.x/updates/2.2.2.0/ambari.list;
apt-key adv --recv-keys --keyserver keyserver.ubuntu.com B9733A7A07513CAD;
apt-get update;
sudo apt-get install ambari-agent;

配置,修改/etc/ambari-agent/conf/ambari-agent.ini,修改:
hostname=master

启动ambari-agent:

sudo ambari-agent start

又报错,日志中记载如下:
Cannot register host with not supported os type, hostname=slave2, serverOsType=ubuntu16, agentOsType=ubuntu16

关于系统的兼容性问题

关于此问题的参考网站

既然系统不兼容,那么就修改Python程序使其返回支持的系统版本,通过欺骗检查系统通过注册的目的。修改各slave从机的/usr/lib/python2.6/site-packages/ambari_agent/Facter.py文件(虽然ambari2.5.1要求的Python版本为2.7,但从本例来看使用的是2.6):

  # Returns the OS name
  def getKernel(self):
    return "ubuntu14"
   # return platform.system()
...
  # Returns the OS version
  def getOperatingSystemRelease(self):
    return "14.04"
   # return OSCheck.get_os_version()

删除/usr/lib/python2.6/site-packages/ambari_agent/Facter.pyc。

注册

这下可以成功注册了:
Ambari学习笔记:安装、配置与启动_第5张图片

接下来就是一些自定义设置,根据用户的设置,在预览界面会显示最终信息以供检查:
Ambari学习笔记:安装、配置与启动_第6张图片

你可能感兴趣的:(Ambari学习笔记)