准备工作

  • 新下载的centos7
  • 安装 createrepo,用于制作源
yum install createrepo
  • 安装java (推荐 java 1.7以上版本,如果有,则跳过此步骤)
yum install java
  • 安装高版本的openssl(各个host都需要安装,否则在ambari中安装服务的时候,会注册失败)
yum install openssl
  • 安装nc和redhat-lsb(hadoop和hbase都有依赖)
yum install nc
yum install redhat-lsb
  • 安装 gcc,python -devel,python-libs 这类要成套
yum install gcc
yum install python-devel
yum install python-libs

配置环境

  • httpd服务,服务根目录是 /var/www/html
vi /etc/httpd/conf/httpd.conf

启用ServerName:把 #ServerName www.example.com:80 修改为 ServerName hostname:80

修改访问权限:

<Directory />

   Options FollowSymLinks

   AllowOverride None

   Order allow,deny

   Allow from all

</Directory>

将红色部分的Deny修改为Allow

  • 关闭SELinux服务,关闭防火墙,启动httpd服务
chkconfig iptables off
service firewalld stop # 如果是centos6 命令是:service iptables stop
setenforce
service httpd start

打开浏览器,输入:http://hostname:80,如果能正确打开网页,则服务正常启动

下载服务包

  • 下载HDP 和HDP-UTILS:
wget -nv http://public-repo-1.hortonworks.com/HDP/centos6/2.x/updates/2.3.0.0/hdp.repo -O /etc/yum.repos.d/hdp.repo
#同步
Yum repolist
reposync -r HDP-UTILS-1.1.0.20
reposunc -r HDP-2.3.0.0
  • 下载Amabri:
wget -nv http://public-repo-1.hortonworks.com/ambari/centos6/2.x/updates/2.1.2/ambari.repo -O /etc/yum.repos.d/ambari.repo
#同步
yum repolist
reposync -r Updates-ambari-2.1.

制作离线源

把同步的HDP-2.3.0.0、 HDP-UTILS-1.1.0.20和Updates-ambari-2.1.2,移动到 /var/www/html目录,分别进入三个目录,执行 createrepo ./

在/var/www/html目录下,分别执行

mkdir -p ambari-2.1./centos7
mkdir -p /var/www/html/HDP/centos7/.x/2.3.0.0
mkdir -p HDP-UTILS-1.1.0.20/repos/centos7

把同步下来的包分别移动到对应的目录

然后分别执行

createrepo /var/www/html/ambari-2.1./centos7
createrepo /var/www/html/HDP/centos7/.x/2.3.0.0
createrepo /var/www/html/HDP-UTILS-1.1.0.20/repos/centos7

这样,离线源做好了

编写repo

备份/etc/yum.repo.d/下的所有文件,使yum安装就无法找到外网的源

mkdir bak
mv /etc/yum.repo.d/* bak/

创建文件 ambari.repo,写入内容:

#VERSION_NUMBER=2.1.2-377
[Updates-ambari-2.1.2]
name=ambari-2.1.2 - Updates
baseurl=http://<hostname>/ambari-2.1.2/centos7
gpgcheck=0
enabled=1 [HDP-2.3.0.0]
name=HDP Version - HDP-2.3.0.0
baseurl=http://<hostname>/hdp/HDP/centos7/2.x/updates/2.3.0.0
gpgcheck=0
enabled=1 [HDP-UTILS-1.1.0.20]
name=HDP Utils Version - HDP-UTILS-1.1.0.20
baseurl=http://<hostname>/HDP-UTILS-1.1.0.20/repos/centos7
gpgcheck=0
enabled=1

保存,然后执行

yum clean all
yum makecache

注意:红色加粗部分的<hostname> ,需要替换成提供httpd和离线镜像的主机的IP或者hostname

安装

然后开始安装ambari-server

PS:安装过程中提示依赖 Postgresql-server,则先需要安装postgresql-server,可以依照前面的下载镜像,制作镜像源来提供下载

Ambari-server setup

PS:需要设置JAVA_HOME的路径,或者下载安装(依照前面的下载镜像,制作离线镜像源)

执行:

Ambari-server start

start 成功后,即可在网页上打开 ambari的web UI来安装hadoop集群。

如果遇到错误,请查看 /var/log/ambari-server/ambari-server.log中查找出错原因。

安装 hadoop

1,配置好host和ip的映射

2,无密登录,把操作ambari-server的web UI的机器的rsa公钥发给要安装集群的各个主机,此处我假设操作网页的机器是PC0,要安装服务的是PC1,PC2,PC3

PC0:

ssk-keygen -t rsa

scp ~/.ssh/id_rsa.pub root@PC1:~/

scp ~/.ssh/id_rsa.pub root@PC2:~/

scp ~/.ssh/id_rsa.pub root@PC3:~/

PC1,PC2,PC3:

#############################################################

修改/etc/ssh/sshd_config,确保一下服务开启

RSAAuthentication yes

PubkeyAuthentication yes

AuthorizedKeysFile      .ssh/authorized_keys

#############################################################

#ssk-keygen -t rsa

cat ~/id_rsa.pub >> ~/.ssh/authorized_keys

3,启动 ntpd

service ntpd start

4,关闭 iptables

service iptables stop

5,关闭Linux的THP服务,需要重启

#centos6
vi /etc/grub.conf,添加 transparent_hugepage=never #centos7:
vi /etc/default/grub
在有CMDLINE一行添加 transparent_hugepage=never
grub2-mkconfig -o /boot/grub2/grub.cfg
systemctl disable tuned

重启之后,用下面的命令检查:

cat /sys/kernel/mm/redhat_transparent_hugepage/enabled

有 [never]则表示THP被禁用

6,打开网页hostname:8080,用admin:admin登录,按照网页提示,开始安装hadoop集群

安装遇到的问题

openssl,NetUtil.py 无法注册,需要yum upgrade openssl

Install,Start and Test这一步,等待时间长,可能出现比较多的错误:

1)App Timeline server安装出错,retry解决;

2)Heartbeat lost for the host错误,检查出错节点的ambari-agent是否停止,ambari-angent是python脚本运行的,可能遇到没有捕捉到的异常,导致进程crash或者停止了;

centos7 离线安装Ambari的更多相关文章

  1. CentOS7离线安装Ambari与HDP

    安装步骤总体说明 1.安装以前需要先规划服务器,一台主机多台从机.主从需要设置时间同步和免密. 2.建立离线源,因在线安装速度很慢,所以需要建立离线源. 3.在主机上安装Ambari,进入系统后,挂接 ...

  2. CentOS7离线安装mysql5.7

    下载mysql5.7,系统选择redhat,版本选择RHEL7,下载RPM Bundle后得到一个tar文件.这里得到文件mysql-5.7.25-1.el7.x86_64.rpm-bundle.ta ...

  3. CentOS7 离线安装mysql-5.7.16

    CentOS7 离线安装mysql-5.7.16 1 . 安装新版mysql前,需将系统自带的mariadb-lib卸载 [root@slave mytmp]# rpm -qa|grep mariad ...

  4. CentOS7离线安装Nginx(详细安装过程)

    CentOS7离线安装Nginx(详细安装过程) 1.安装gcc.g++ 下载好所需的文件后上传至服务器(下载地址:https://download.csdn.net/download/a729360 ...

  5. CentOS7离线安装MySQL8.0

    CentOS7离线安装MySQL8.0 卸载软件 rpm -e --nodeps 要卸载的软件包 root@jacky zookeeper]# rpm -e --nodeps java-1.6.0-o ...

  6. Binlog2sql+CentOS7 离线安装

    Binlog2sql+CentOS7 离线安装 目录 Binlog2sql+CentOS7 离线安装 1. 环境 2. 下载 3.1 Pip 安装 3.2 PyMySQL/mysql-replicat ...

  7. Ambari2.7.4+HDP3.1.4安装 Centos7离线安装

    一. Ambari等简单介绍 1.1Ambari Ambari是一种基于Web的工具,支持Apache Hadoop集群的创建 .管理和监控. Ambari已支持大多数Hadoop组件,包括HDFS. ...

  8. 离线安装 Ambari Hadoop

    制作本地yum源 安装步骤: 先建立本地yum源(Ambari和HDP的) 1. 先安装 ambari 然后http://localhost:8080 登录进去,设置 hdp的源链接. 2. 安装HD ...

  9. Centos7 离线安装 php7

    问题:因内部管控,机器无法连接公有yum源安装php. 正常安装php7可以参考CentOS7.2 安装 PHP7.2 下面的代码也是一种方法 yum -y install libmcrypt lib ...

随机推荐

  1. Day6 ,周期末考试试题

    Python基础数据类型考试题 考试时间:两个半小时                      满分100分(80分以上包含80分及格) 一,基础题. 1,简述变量命名规范(3分) 2,字节和位的关系 ...

  2. Brainteaser-292. Nim Game

    You are playing the following Nim Game with your friend: There is a heap of stones on the table, eac ...

  3. 微信小程序 Unexpected end of JSON input/Unexpected token o in JSON at position 1

    原因JSON.parse无法识别某些url中的特殊字符,所以报错 mistakes.js中 nextBtn:function(){ var nextData = this.data.dataNextI ...

  4. 读DEDECMS找后台目录有感

    本文作者:红日安全团队——Mochazz 早上看了先知论坛的这篇文章:解决DEDECMS历史难题–找后台目录 不得不说作者思路确实巧妙,作者巧妙的利用了Windows FindFirstFile和织梦 ...

  5. Retrofit源码解析(下)

    接着上一章继续分析上一章主要简单说了一下基本使用和注解,这一章,我们主要看源码,废话不多说了,直接上.先上一张图 从网络上拿来的 前面一章说了一下Retrofit的简单使用https://www.cn ...

  6. kubernetes traefik multiple namespaces

    官方文档在此 https://docs.traefik.io/user-guide/kubernetes/ 官方文档在配置 RBAC 时使用了 ClusterRoleBinding, 当你想用多命名空 ...

  7. Flask从入门到精通之Flash消息

    请求完成后,有时需要让用户知道状态发生了变化.这里可以使用确认消息.警告或者错误提醒.一个典型例子是,用户提交了有一项错误的登录表单后,服务器发回的响应重新渲染了登录表单,并在表单上面显示一个消息,提 ...

  8. Swift 里字符串(七)stringIndex

    在 String 里,用来索引 Character 的,不是整数,而是StringIndex 内部结构 extension String { /// A position of a character ...

  9. 简单HOG+SVM mnist手写数字分类

    使用工具 :VS2013 + OpenCV 3.1 数据集:minst 训练数据:60000张 测试数据:10000张 输出模型:HOG_SVM_DATA.xml 数据准备 train-images- ...

  10. docker安装指定版本TAG的镜像

    在docker中安装镜像,一般过程是,docker search 软件名称. 本文以tomcat为例,讲解下载指定版本TAG的tomcat. 搜索tomcat镜像 $ sudo docker sear ...