公共的库源安装Ambari

Ambari有三种安装方式,

<1>源码安装,这个可以后期有自己的特定需求在考虑,
<2>使用rmp安装
<3>yum安装,其中yum安装有两种方式
    一种使用公共的库源(public repository),
    第二种是搭建一个本地库(local repository)进行安装

准备工作

Linux操作系统的电脑,
具有网络连接
JAVA_HOME
Python

安装步骤:

<1>配置hosts。修改主机名并和IP地址对应。

其中172.19.100.190 是服务主机 
gedit /etc/hosts
        172.19.100.190  unix190
        172.19.100.191  unix191
        172.19.100.192  unix192
        172.19.100.193  unix193

<2>配置ssh免登录

在所有从机器上都生成私钥和公钥
    在unix191中 ssh-keygen -t rsa   #一路回车
    在unix192中 ssh-keygen -t rsa   #一路回车
    在unix193中 ssh-keygen -t rsa   #一路回车

需要让机器间都能相互访问,就把每个机子上的id_rsa.pub发给master节点,传输公钥可以用scp来传输。
在unix191中   scp ~/.ssh/id_rsa.pub root@unix190:~/.ssh/id_rsa.pub.unix191
在unix192中   scp ~/.ssh/id_rsa.pub root@unix190:~/.ssh/id_rsa.pub.unix192
在unix193中   scp ~/.ssh/id_rsa.pub root@unix190:~/.ssh/id_rsa.pub.unix193

在unix190上,将所有公钥加到用于认证的公钥文件authorized_keys中
cat ~/.ssh/id_rsa.pub* >> ~/.ssh/authorized_keys

在unix190上,将公钥文件authorized_keys分发给每台slave
scp ~/.ssh/authorized_keys root@unix191:~/.ssh/
scp ~/.ssh/authorized_keys root@unix192:~/.ssh/
scp ~/.ssh/authorized_keys root@unix193:~/.ssh/

在每台机子上互相验证SSH无密码通信
在unix190上   ssh unix191  
在unix191上   ssh unix192  ssh unix193  ssh 190

如果登陆测试不成功,则可能需要修改文件authorized_keys的权限(权限的设置非常重要,因为不安全的设置安全设置,会让你不能使用RSA功能 )
chmod 600 ~/.ssh/authorized_keys

3.安装Ambari

安装Ambari, Ambari 的安装,目前网上能找到两个发行版,一个是 Apache 的 Ambari,另一个是 Hortonworks 的
 确保 Yum 可以使用,Python安装,版本最好大于或等于2.6  python -V.确保JDK存在且版本符合要求
确保 home 目录的写权限。
  Ambari 会创建一些 OS 用户
在主机unix190下输入命令:
将下载的 ambari.repo 文件拷贝到 Linux 的系统目录/etc/yum.repos.d/。拷贝完后,我们需要获取该公共库的所有的源文件列表。。
    wget -nv http://public-repo-1.hortonworks.com/ambari/centos6/2.x/updates/2.2.0.0/ambari.repo -O /etc/yum.repos.d/ambari.repo
依次执行以下命令
    yum clean all
    yum list|grep ambari
安装:yum install ambari-server
 配置:ambari-server setup  
 启动:ambari-server start 
 登录管理页面:登录URL:http://172.19.100.190:8080/     <如果打不开,查看网络以及防火墙、和httpd服务>

4.利用 Ambari 扩展集群

利用 Ambari 搭建好的集群,可以通过 Ambari 来扩展。
这里的步骤其实类似于 Add Service,只是少了选择 Master 的页面。下面是详细的描述。
    第一步,需要打开 Hosts 页面,然后点击左上角的 Actions,在下拉列表中选择“Add New Hosts”。
    第二步,在 Add Host Wizard 需要输入新增的机器名(包含完整域名)以及 Ambari Service 机器上生成的私钥
    第三步,需要部署已安装 Service 的 Slave 模块和 Client 模块。
    第四步,选择对应的 Service 的配置。这里 Ambari 为用户已经选择了默认的配置。选择完后,便会开始安装 Ambari Agent 到新的机器,并且安装选择的模块。
    当 Add Host Wizard 完成时,我们就可以从 Hosts 的页面中看到新的机器,以及安装的模块(Component)。

注意事项:

0) 权限

 1.使用的是root登录,所以不需要使用sudo,如果不是root用户,注意使用中的权限问题。
 2.设置各个计算机的IP地址,配置host,设置ip和主机名的映射
 <设置IP地址可以使用命令行或者图形界面>
 3.确保 Yum 可以使用,使用yum安装可以解决很多依赖问题
 通过公共库(public repository),安装 Hadoop 这些软件,背后其实就是应用 Yum 在安装公共库里面的 rpm 包。
 所以这里需要您的机器都能访问 Internet。
    如果是使用虚拟机连接内网构建,则需要
        1.虚拟机的网络设置成"桥接网络",并将高级设置 设置为允许全部连接
        2.ip设置成固定ip
        3. 虚拟机中的防火墙设置 iptables  DNS设置

1)SSH免密码大致流程

1.在客户机创建一对密钥文件,包括公钥文件(~/.ssh/id_rsa.pub)    私钥文件(~/.ssh/id_rsa).
2.把公钥放到服务器上(~/.ssh/authorized_keys),在使用ssh登录时,
ssh程序会发送私钥去和服务器上的公钥做匹配。如果匹配成功就可以自动登录
0.SSH 服务
一般默认CentOS已经安装了OpenSSH,查看ssh服务的状态 
输入以下命令:
    root 用户直接:service sshd status
    root用户前面加:sudo service sshd status
    如果没有安装,则使用以下命令
安装SSH:yum install ssh   
启动SSH:service sshd start    
设置开机运行:chkconfig sshd on

2)开机自启动网络

主机190网络是 cat  /etc/sysconfig/network-scripts/ifcfg-lo 
查看191-193:cat  /etc/sysconfig/network-scripts/ifcfg-Auto_eth1   
修改/etc/sysconfig/network-scripts/ifcfg-eth0文件,将onboot 改为onboot = yes
    vim /etc/sysconfig/network-scripts/ifcfg-eth0
    onboot = yes

3)设置时间同步,所有机器

service ntpd status
每个节点都要要开启ntp服务
chkconfig ntpd on
service ntpd start
    cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime  #设置时区为北京时间,这里为上海,因为centos里面只有上海。。。    
    ntpdate 172.19.100.190   #时间同步,同步成功的标志如下
    Nov 18:40:50 ntpdate[23265]: step time server 172.19.100.190 offset -516.333097 sec
    如果没有成功,关闭之后再重新设置

    没有安装ntpdate的可以yum一下    yum install -y ntpdate   
    加入定时计划任务,每隔1分钟同步一下时钟<时间设置1分钟>  
    crontab -l   ##查看
    crontab -e    
    把下面的内容粘贴进去保存即可 按下a,进入编辑模式,复制到里面,然后按下ESC键输入以下内容退出, :wq
    0-59/1 * * * * /usr/sbin/ntpdate 172.19.100.190  | logger -t NTP

4)关防火墙:

/etc/init.d/iptables    status
/etc/init.d/iptables    stop    ##即时关闭
chkconfig iptables      off      # 永久关闭,重启生效

防火墙还需要关闭ipv6的防火墙:
/etc/init.d/ip6tables   stop
chkconfig ip6tables off
并且可以通过如下命令查看状态:
chkconfig --list iptables

5)关SELINUX

查看selinux状态,如果为SELinux status enable则表示为开启:
    /usr/sbin/sestatus -v
    cat /etc/selinux/config

查看selinux的模式 # getenforce
关闭selinux:
# 即时临时性关闭(立即生效,但是重启服务器后失效)
setenforce 0     #设置selinux为permissive模式(即关闭)
                #setenforce 1      #设置selinux为enforcing模式(即开启)
# 永久性关闭(这样需要重启服务器后生效)
修改/etc/selinux/config 文件,将SELINUX=enforcing改为SELINUX=disabled
 vim  /etc/selinux/config
    SELINUX=disabled        
    或者直接sed替换
    sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
查看内核有无关闭
    cat /boot/grub/menu.lst

6) 安装JDK,并且设置路径

    检查系统原版本: java -version
                     rpm -qa | grep java
                     卸载:
    安装相应的JDK版本:
        下载jdk1.8 并且安装,待安装完毕
        配置环境变量并配置java环境变量,在/etc/profile末尾添加如下代码:
                    export JAVA_HOME=/usr/java/default
                    export PATH=$JAVA_HOME/bin:$PATH
        使修改生效:执行source /etc/profile生效
        查看系统环境状态 echo $PATH
        在命令行执行java -version 如下代表JAVA安装成功.

相关解释

    chkconfig 命令也可以用来激活和解除服务。
    chkconfig –list 命令显示系统服务列表,以及这些服务在运行级别0到6中已被启动(on)还是停止(off)。
    PackageKit 个自由且开源的应用软件套装 有可能会影响。禁止PackageKit​
    这个步骤每台都需要做,因为在使用yum安装期间有可能导致yum被锁,安装过程报错。agent会用到yum安装hadoop及上层组件,而server也要用yum安装ambari。
    vi  /etc/yum/pluginconf.d/refresh-packagekit.conf 修改其中配置将enabled后面数值置0。

以上操作,进行重启 reboot

参考:

 https://cwiki.apache.org/confluence/display/AMBARI/Start+Guide+Using+Centos+6.x  官方Start Guide Using Centos 6.x 
http://www.ibm.com/developerworks/cn/opensource/os-cn-bigdata-ambari/index.html Ambari——大数据平台的搭建利器
http://blog.csdn.net/javastart/article/details/51780797  Ambari——大数据平台的搭建利器之进阶篇
https://docs.hortonworks.com/HDPDocuments/Ambari-2.2.0.0/bk_ambari_reference_guide/content/_download_the_ambari_repo.html 安装指南
https://docs.hortonworks.com/HDPDocuments/Ambari-2.2.0.0/bk_ambari_reference_guide/content/_install_the_ambari_agents_manually.html
http://www.cnblogs.com/scotoma/archive/2013/05/18/3085040.html Ambari,hadoop的配置,管理和监控项目入门
http://blog.csdn.net/levy_cui/article/details/52461377  升级ambari、HDP版本(ambari 2.1升级到2.4、HDP2.3升级到2.5)
https://cwiki.apache.org/confluence/display/AMBARI/Installation+Guide+for+Ambari+2.4.1 apache安装官方教程
http://docs.hortonworks.com/HDPDocuments/Ambari-2.4.1.0/bk_ambari-installation/content/determine_stack_compatibility.html  大数据Hortonworks公司文档

blogroll

social