实验机器总数3台。html
IPjava |
主机名node |
部署环境python |
192.168.1.223mysql |
223linux |
Ambari-server、ambari-agent、yum源sql |
192.168.1.224apache |
224vim |
Ambari-agentcentos |
192.168.1.225 |
225 |
Ambari-agent |
在三台主机中添加主机名与IP之间的对应关系。
vim /etc/hosts
将如下內容添加进去
192.168.1.223 223 192.168.1.224 224 192.168.1.225 225
在全部的主机上,执行以下命令,关闭防火墙。
chkconfig iptables off service iptables stop
在全部的主机上,执行以下命令
SELINUX修改
vim /etc/selinux/config
作以下更改:SELINUX=disabled
PackageKit(系统中已经安装了PackageKit)
vim /etc/yum/pluginconf.d/refresh-packagekit.conf
作以下更改:enabled=0
在全部的主机上,执行以下操做
安装NTP服务
yum install -y ntp chkconfig ntpd on
启动NTP服务
service ntpd start
在全部的主机上创建互信,要求全部的机器必须可以项目无密码登录。
首先,登录ambari-server机器,执行以下命令生成公钥
//首先切换到当前登陆用户的用户目录下 cd ~/ mkdir .ssh ssh-keygen -t rsa cd .ssh cat id_rsa.pub >> authorized_keys chmod 700 ~/.ssh chmod 600 ~/.ssh/authorized_keys
将authorized_keys中的秘钥分发到全部ambari-agent节点上。
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.1.224 ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.1.225
在其它ambari-agent节点上也一样利用上面的命令生成公钥,而后将公钥分发给ambari-server。而后,两个agent相互信任。
echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag echo never > /sys/kernel/mm/redhat_transparent_hugepage/enabled echo never > /sys/kernel/mm/transparent_hugepage/enabled echo never > /sys/kernel/mm/transparent_hugepage/defrag
卸载自带的Open-jdk
rpm -qa | grep java rpm -e –nodeps 加上查询出来的名字
从官网下载JDK安装包
利用终端工具将安装包上传至服务器
执行以下命令
mkdir /usr/local/jdk tar -zxvf jdk-8u181-linux-x64.tar.gz -C /usr/local/jdk/ vim /etc/profile
将以下內容放到文件底部,保存
export JAVA_HOME=/usr/local/jdk/jdk1.8.0_181 export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib export PATH=$PATH:$JAVA_HOME/bin
使环境变量生效
source /etc/profile
检查是否安装成功
java -version
yum install yum-utils createrepo
yum install httpd
将本地安装包上传服务器后,解压到/var/www/html目录下。若是解压后的目录中没有repodata文件夹,则用如下命令生成repodata。
cd /root/HDP/ tar -vzxf ambari.tar.gz -C /var/www/html/ambari/ tar -vzxf HDP.tar.gz -C /var/www/html/HDP/ tar -vzxf HDP-UTILS.tar.gz -C /var/www/html/hdp-util/ # 若是解压后的目录中没有repodata才执行 createrepo操做 createrepo /var/www/html/ambari/centos6/
chkconfig httpd on service httpd start
添加源的时候baseurl填写安装包托管到apache服务器的地址。
添加ambari源
cd /etc/yum.repos.d/ vim ambari.repo
将如下內容添加进ambari.repo
baseurl为当前ambari安装包托管到apache服务器的地址
gpgkey填写当前GPGKEY托管到apache服务器的地址
#VERSION_NUMBER=2.6.2.0-155 [ambari-2.6.2.0] name=ambari Version - ambari-2.6.2.0 baseurl=http://192.168.1.223/ambari/centos6/ gpgcheck=1 gpgkey=http://192.168.1.223/ambari/centos6/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins enabled=1 priority=1
添加HDP源
cd /etc/yum.repos.d/ vim hdp.repo
将如下內容添加进hdp.repo
baseurl为当前hdp安装包托管到apache服务器的地址
gpgkey填写当前GPGKEY托管到apache服务器的地址
#VERSION_NUMBER=2.6.5.0-292 [HDP-2.6.5.0] name=HDP Version - HDP-2.6.5.0 baseurl=http://192.168.1.223/hdp/centos6 gpgcheck=1 gpgkey=http://192.168.1.223/hdp/centos6/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins enabled=1 priority=1 [HDP-UTILS-1.1.0.22] name=HDP-UTILS Version - HDP-UTILS-1.1.0.22 baseurl=http://192.168.1.223/hdp-util gpgcheck=1 gpgkey=http://192.168.1.223/hdp-util/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins enabled=1 priority=1
查看是否添加成功
yum clean all yum repolist
从网上下载相对应linux版本的完整版安装包
在服务器上建立相应yum源托管目录。因为文件较大,咱们经过软链接方式托管到服务器。
mkdir -p /var/www/html/centos/7/os/ mkdir -p /opt/centos/7/os/x86_64/Packages ln -s /opt/centos/7/os/x86_64/ /var/www/html/centos/7/os/
解压linux安装包,将Packages目录下的文件拷贝到/opt/centos/7/os/x86_64/Packages目录下,将RPM-GPG-KEY-CentOS-7拷贝到/opt/centos/7/os/x86_64/目录下。
执行以下命令
createrepo /var/www/html/centos/7/os/x86_64/ vim /etc/yum.repos.d/local.repo
将以下內容拷贝到local.repo而后保存
#LOCAL [local] name=local baseurl=http://服务器IP地址/centos/$releasever/os/$basearch/ gpgcheck=1 gpgkey=http://服务器IP地址/centos/$releasever/os/$basearch/RPM-GPG-KEY-CentOS-7 enabled=1 priority=1
执行以下命令进行测试
yum clean all yum makecache yum repolist
首先,在一台机器上制做好局域网本地源后,其它机器只须要按照2.5和2.8步骤进行相应的配置便可。
yum install ambari-server
注意加粗地方的选择
ambari-server setup Using python /usr/bin/python2 Setup ambari-server Checking SELinux... SELinux status is 'disabled' Customize user account for ambari-server daemon [y/n] (n)? y Enter user account for ambari-server daemon (root):root Adjusting ambari-server permissions and ownership... Checking firewall status... Checking JDK... [1] Oracle JDK 1.8 + Java Cryptography Extension (JCE) Policy Files 8 [2] Oracle JDK 1.7 + Java Cryptography Extension (JCE) Policy Files 7 [3] Custom JDK ============================================================================== Enter choice (1): 3 WARNING: JDK must be installed on all hosts and JAVA_HOME must be valid on all hosts. WARNING: JCE Policy files are required for configuring Kerberos security. If you plan to use Kerberos,please make sure JCE Unlimited Strength Jurisdiction Policy Files are valid on all hosts. Path to JAVA_HOME: /usr/local/jdk/jdk1.8.0_60 Validating JDK on Ambari Server...done. Completing setup... Configuring database... Enter advanced database configuration [y/n] (n)? n
ambari-server start
访问服务器IP地址+8080端口,看到ambari界面,则安装成功。
将驱动更名为mysql-connector-java.jar复制到ambari-server服务器的/var/lib/ambari-server/resources目录下
进入管理界面后,点击这个按钮
输入集群名字
选择HDP版本,填写HDP,和相应本地yum源地址
填写目标机器主机名,和ambari-server的私钥
Ambari-server私钥查看
cat ~/.ssh/id_rsa
等待安装
选择须要服务
默认安装就好,后期能够改,一路next。
注意在进行这一步操做时,须要填写几种环境的用户名和密码
最终安装成功后,跳转到主页
当ambari-agent向ambari-server注册时出现以下错误,则执行此步骤。
NetUtil.py:96 - EOF occurred in violation of protocol (_ssl.c:579) NetUtil.py:97 - SSLError: Failed to connect. Please check openssl library versions.
执行以下步骤解决
vim /etc/ambari-agent/conf/ambari-agent.ini
相应位置配置作出以下修改
[security] force_https_protocol=PROTOCOL_TLSv1_2
若是python版本为2.7那么还须要进行以下修改
vim /etc/python/cert-verification.cfg
将以下內容进行修改
[https] verify=disable