ambari-server集群部署

ambari-server安装流程

1.还原系统

​ 使用ultralso以及ubuntu18.04镜像文件制作启动盘

​ 从此处打开,选择需要用到的镜像文件

​ 点击启动,写入硬盘映像

写入方式选择HDD+或者HDD

​ 便捷启动->写入新的驱动器引导扇区->syslinux

​ 制作完u盘后插到电脑上,重新启动,进入bios,设置第一启动项为u盘,保存启动后即可进行安装

​ 有的主板在选择U盘启动时有两个可选,一个是带UEFI的,一个是不带UEFI的,这两个选项在安装Ubuntu中设置“启动引导”时的操作不同,需要注意

2.必要软件安装以及备份

sudo apt-get update
sudo apt-get install net-tools
sudo apt-get install ssh
sudo apt-get install vim
sudo apt-get install ntp 
sudo apt-get install ntpdate

3.ssh密钥生成以及分发

​ 需要注意ssh相关操作都与用户相关,因此记录下述操作前需要切换至目的用户

su hadoop
sudo ssh localhost
sudo ssh-keygen -t rsa
ssh-copy-id -i ~/.ssh/id_rsa hadoop@10.132.221.%s

4.配置所有节点的host

​ 加入域名与主机相关信息,如下所示:

5.下载相关文件 准备环境

文件名 链接
ambari http://public-repo-1.hortonworks.com/ambari/ubuntu18/2.x/updates/2.7.3.0/ambari-2.7.3.0-ubuntu18.tar.gz
HDP http://public-repo-1.hortonworks.com/HDP/ubuntu18/3.x/updates/3.1.0.0/HDP-3.1.0.0-ubuntu18-deb.tar.gz
HDP-UTILS http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.22/repos/ubuntu18/HDP-UTILS-1.1.0.22-ubuntu18.tar.gz
HDP-GPL http://public-repo-1.hortonworks.com/HDP-GPL/ubuntu18/3.x/updates/3.1.0.0/HDP-GPL-3.1.0.0-ubuntu18-gpl.tar.gz

​ 使用wget命令进行上述文件的下载后进行如下操作配置apache服务器:

sudo apt-get install apache2
sudo mkdir -p /var/www/html
sudo tar -zxvf ambari-2.7.3.0-ubuntu18.tar.gz -C /var/www/html
sudo tar -zxvf /HDP-3.1.0.0-ubuntu18-deb.tar.gz -C /var/www/html
sudo tar -zxvf HDP-UTILS-1.1.0.22-ubuntu18.tar.gz -C /var/www/html
sudo tar -zxvf HDP-GPL-3.1.0.0-ubuntu18-gpl.tar.gz -C /var/www/html

​ 在/etc/apt/sources.list.d/目录下创建如下文件:

ambari.list:

deb http://127.0.0.1/ambari/ubuntu18/2.7.3.0-139/ Ambari main

ambari-hdp.list:

deb http://127.0.0.1/HDP-GPL/ubuntu18/3.1.0.0-78/ HDP-GPL main
deb http://127.0.0.1/HDP-UTILS/ubuntu18/1.1.0.22/ HDP-UTILS main
deb http://127.0.0.1/HDP/ubuntu18/3.1.0.0-78/ HDP main

也可采用以下命令进行快速创建:

sudo sh -c "echo 'deb http://127.0.0.1/ambari/ubuntu18/2.7.3.0-139/ Ambari main' > /etc/apt/sources.list.d/ambari.list"

sudo sh -c "echo 'deb http://127.0.0.1/HDP-GPL/ubuntu18/3.1.0.0-78/ HDP-GPL main
deb http://127.0.0.1/HDP-UTILS/ubuntu18/1.1.0.22/ HDP-UTILS main
deb http://127.0.0.1/HDP/ubuntu18/3.1.0.0-78/ HDP main' > /etc/apt/sources.list.d/ambari-hdp.list"

通过web进行简单的访问验证,确认无误后运行进行更新

sudo apt-get update

6.安装ambari-server,并进行相关配置

sudo apt-get install ambari-server
sudo ambari-server setup

首先输入的用户名为进行ambari-server运行操作的系统用户,因此不能随意填写,为坑点之一

​ 之后则是选择jkd,输入自定义jkd配置路径即可

​ 再后可以一路选择y直到数据库选择,以mysql为例:

需要自己安装配置mysql,这里的数据库用于存储ambari元数据信息,一般并非用于后续集群使用

​ 配置mysql需要使用jdbc,挑选正确版本,在setup过程中导入即可。

​ 以下sql操作须在启动server之前完成

create database ambari;
use ambari;
source /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql
sudo ambari-server start

7.在除server节点上配置ambari-agent

​ 可以使用python的paramiko或者xshell进行批处理操作,每个节点上进行的指令如下:

su hadoop 

sudo apt-get install apache2

sudo mkdir -p /var/www/html

sudo scp -r hadoop@wzu107:/var/www/html/* /var/www/html #从server上面拷贝源至本地

sudo sh -c "echo 'deb http://127.0.0.1/ambari/ubuntu18/2.7.3.0-139/ Ambari main' > /etc/apt/sources.list.d/ambari.list"

sudo sh -c "echo 'deb http://127.0.0.1/HDP-GPL/ubuntu18/3.1.0.0-78/ HDP-GPL main
deb http://127.0.0.1/HDP-UTILS/ubuntu18/1.1.0.22/ HDP-UTILS main
deb http://127.0.0.1/HDP/ubuntu18/3.1.0.0-78/ HDP main' > /etc/apt/sources.list.d/ambari-hdp.list"

sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com B9733A7A07513CAD #解决update没有公钥的问题

sudo apt-get update

sudo apt-get install ambari-agent

sudo vim /etc/ambari-agent/conf/ambari-agent.ini #需要将里面[server]下的hostname改成server在hosts文件中的映射名,如下

sudo ambari-agent start

8.进行ambari集群部署

通过http://hostname:8080即可通过web对ambari集群进行管理,打开后输入用户密码,默认均为admin,登录后进行集群创建工作。

  • 输入集群名称
  • 选择HDP版本
  • 输入所有节点hostname,通过agent直连
  • 选择组件
  • 进行master设置
  • 进行slaves设置
  • 进行相关账号设置,为了便于管理统一采用默认的username以及使用同一个密码,需要注意部分密码有一定的复杂度验证,不能太简单
  • 进行相关服务的细节配置
  • 安装完毕

9.坑点注意

  1. 如果本地仓库配置有误,不如选择在线下载配置

  2. YARN REGISTRY DNS服务启动失败 ERROR: Cannot set priority of registrydns process 12976

  3. https://blog.csdn.net/huangzhirong19893311/article/details/100524155

  4. 装机时注意必须要是英文https://blog.csdn.net/weixin_43821273/article/details/91329614

  5. https://www.cnblogs.com/wangyi666/p/10592612.html

  6. https://cloud.tencent.com/developer/news/291717


  7. 众多原因造成,检查ssh以及网络通信,检查java是否生效

  8. /usr/hdp/current/hadoop-client/conf doesn't exist经检查可以发现是死链循环造成 人工更改 hive和zk也可能遇到相同问题

    cd /etc/hadoop
    rm -rf conf
    sudo ln -s /etc/hadoop/conf.backup /etc/hadoop/conf
    
  9. 不同版本不要混用,可能造成连接问题

  10. /usr/hdp/是一个很重要的文件夹,其中可以存放多个版本的hdp,只有current文件夹才是当前集群使用的,此文件夹中有关service的都是连接,误删client之后重新执行安装的会变成文件夹 本来也是连接,需要谨慎处理

  11. Sys DB and Information Schema not created yet

    解决方案:
    cd /etc/hive/
    touch /etc/hive/sys.db.created
    进入ambari-server 端重启
    ambari-server restart

  12. ambari-agent启动:socket.gaierror: [Errno -2] Name or service not known

    解决方法:/etc/hosts中加入主机名hostname,建立完整映射 理论上只要装了agent,建立了免密,更改了agent的配置,就可以将节点加入集群

  13. regionserver decomission处理:对regionserver进行stop,后start的重启处理,使用recomission无效

  14. Timeline Service V2.0 Reader启动问题:将yarn配置文件中的is_hbase_system_service_launch和use_external_hbase勾选

  15. 部分环境造成的问题还有一个解决思路:删除该节点上的服务并重新添加

  16. 500 status code received on GET method for API:
    /api/v1/stacks /HDP/versions/3.1/services/ /quicklinks ?QuickLinkInfo/default=true&fields=* 解决办法:重启ambari-server

  17. 凡是ambari报错 第一时间检查连接问题 查看是否有连接错误...

  18. JAVA_HOME is not set 或者 service stop but still running 的问题 在确认其他配置无误后直接通过jps定位进程 然后kill 重启 就能解决问题

posted @ 2020-07-24 11:07  -拂石-  阅读(965)  评论(0)    收藏  举报