zoukankan      html  css  js  c++  java
  • Cloudera Manager安装部署

    1、连接阿里云服务器

    打开远程连接工具进行配置,这里以CRT为例。

    1)新建一个session

     

    2)填写hostname(填写公网ip)

     

     2、修改hosts

    [root@hadoop001 ~]# vim /etc/hosts
    127.0.0.1 localhost  localhost
    ::1     localhost       localhost.localdomain   localhost6      localhost6.localdomain6
    172.17.138.24 hadoop102 hadoop102
    172.17.138.25 hadoop103 hadoop103
    172.17.138.23 hadoop104 hadoop104

    注意:ip填写的是私有ip,做完后ping一下。

    3、SSH免密登录

    配置hadoop102对hadoop102、hadoop103、hadoop104三台服务器免密登录。CDH服务开启与关闭是通过server和agent来完成的,所以这里不需要配置SSH免密登录,但是为了我们分发文件方便,在这里我们也配置SSH。

    1)生成公钥和私钥:

    [root@hadoop102 .ssh]$ ssh-keygen -t rsa

    然后敲(三个回车),就会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)

    2)将公钥拷贝到要免密登录的目标机器上

    [root@hadoop102 .ssh]$ ssh-copy-id hadoop102
    [root@hadoop102 .ssh]$ ssh-copy-id hadoop103
    [root@hadoop102 .ssh]$ ssh-copy-id hadoop104

    3)重复1和2的操作,配置hadoop103对hadoop102、hadoop103、hadoop104三台服务器免密登录。

    4、集群同步脚本

    1)在/root目录下创建bin目录,并在bin目录下创建文件xsync,文件内容如下:

    #!/bin/bash
    #1 获取输入参数个数,如果没有参数,直接退出
    pcount=$#
    if((pcount==0)); then
    echo no args;
    exit;
    fi
    
    #2 获取文件名称
    p1=$1
    fname=`basename $p1`
    echo fname=$fname
    
    #3 获取上级目录到绝对路径
    pdir=`cd -P $(dirname $p1); pwd`
    echo pdir=$pdir
    
    #4 获取当前用户名称
    user=`whoami`
    
    #5 循环
    for((host=103; host<105; host++)); do
            echo ------------------- hadoop$host --------------
            rsync -av $pdir/$fname $user@hadoop$host:$pdir
    done

    2)修改脚本 xsync 具有执行权限

    [root@hadoop102 bin]$ chmod 777 xsync

    5、集群整体操作脚本

    1)在/root/bin目录下创建脚本xcall.sh

    [root@hadoop102 bin]$ vim xcall.sh

    2)在脚本中编写如下内容

    #! /bin/bash
    
    for i in hadoop102 hadoop103 hadoop104
    do
            echo --------- $i ----------
            ssh $i "source /etc/profile ; $*"
    done

    3)修改脚本执行权限

    [root@hadoop102 bin]$ chmod +x xcall.sh

    4)测试

    [root@hadoop102 bin]# xcall.sh jps

    6、关闭防火墙

     阿里云的防火墙默认是关闭的,但是他有web防火墙,我们需要将7180,3306,8888,8889,9870等端口开放。

    7、关闭SELINUX(阿里云环境可跳过)

    安全增强型Linux(Security-Enhanced Linux)简称SELinux,它是一个 Linux 内核模块,也是Linux的一个安全子系统。为了避免安装过程出现各种错误,建议关闭,有如下两种关闭方法:

    1)临时关闭(不建议使用)

    [root@hadoop102 ~]# setenforce 0

    但是这种方式只对当次启动有效,重启机器后会失效。

    2)永久关闭(建议使用)

    修改配置文件/etc/selinux/config

    [root@hadoop102 ~]# vim /etc/selinux/config

    将SELINUX=enforcing 改为SELINUX=disabled

    SELINUX=disabled

    3)同步/etc/selinux/config配置文件

    [root@hadoop102 ~]# xsync /etc/selinux/config

    4)重启hadoop102、hadoop103、hadoop104主机

    [root@hadoop102 ~]# reboot
    [root@hadoop103 ~]# reboot
    [root@hadoop104 ~]# reboot

    8、配置NTP时钟同步(阿里云环境可跳过)

    1)NTP服务器配置

    1)NTP服务器配置

    [root@hadoop102 ~]# vi /etc/ntp.conf
    ①注释掉所有的restrict开头的配置
    ②修改#restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
    为restrict 192.168.1.102 mask 255.255.255.0 nomodify notrap
    ③将所有server配置进行注释
    ④添加下面两行内容
    server 127.127.1.0
    fudge 127.127.1.0 stratum 10

    2)启动NTP服务 service ntpd start

    [root@hadoop102 ~]# service ntpd start

    3)NTP客户端配置(在agent主机上进行配置hadoop103,hadoop104)

    [root@hadoop103 ~]# vi /etc/ntp.conf
    
    ①注释所有restrict和server配置
    ②添加server 192.168.1.102

    4)手动测试

    [root@hadoop103~]# ntpdate 192.168.1.102

    显示如下内容为成功:

    17 Jun 15:34:38 ntpdate[9247]: step time server 192.168.1.102 offset 77556618.173854 sec

    如果显示如下内容需要先关闭ntpd:

    17 Jun 15:25:42 ntpdate[8885]: the NTP socket is in use, exiting

    5)启动ntpd并设置为开机自启(每个节点hadoop102,hadoop103,hadoop104)

    [root@hadoop103 ~]#  chkconfig ntpd on
    [root@hadoop103 ~]#  service ntpd start

    6)使用群发date命令查看结果

     9、安装jdk

    1)在hadoop102创建/usr/java目录

    [root@hadoop102 opt]# mkdir /usr/java

    2SecureCRTjdk-8u144-linux-x64.tar.gz上传至hadoop102,并解压/usr/java目录下。

    [root@hadoop102 ~]# tar -zxvf jdk-8u144-linux-x64.tar.gz -C /usr/java/

    3)配置JAVA_HOME环境变量

    1)打开/etc/profile文件

    [root@hadoop102 software]$ vim /etc/profile

    profile文件末尾添加JDK路径

    #JAVA_HOME

    export JAVA_HOME=/usr/java/jdk1.8.0_144

    export PATH=$PATH:$JAVA_HOME/bin

    2)让修改后的文件生效

    [root@hadoop102 jdk1.8.0_144]$ source /etc/profile

    4)测试JDK是否安装成功

    [root@hadoop102 jdk1.8.0_144]# java -version

    java version "1.8.0_144"

    5)将hadoop102JDK和环境变量分发到hadoop103、hadoop104两台主机

    [root@hadoop102 opt]# xsync /usr/java/

    [root@hadoop102 opt]# xsync /etc/profile

     

    分别在hadoop103、hadoop104上source一下

    [root@hadoop103 ~]$ source /etc/profile

    [root@hadoop104 ~]# source /etc/profile

    10、安装MySQL及其驱动(hadoop102上操作

    1)卸载mariadb

    rpm -qa | grep mariadb | xargs rpm -e --nodeps

    2)下载msql5.7 yum

    wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm

    3)安装yum

    rpm -ivh mysql57-community-release-el7-9.noarch.rpm

    4)安装mysql

    yum -y install mysql-server

    5)启动mysql

    service mysqld start

    6)查看root用户密码

    grep 'temporary password' /var/log/mysqld.log    d9V,K1..6e.Q

    7)执行mysql初始化脚本

    mysql_secure_installation

    8)输入新密码(至少12个字符,至少包含一个大写字母有,一个小写字母,一个数字,一个特殊字符)

     

    9)配置root用户远程访问权限

    mysql> grant all privileges on *.* to 'root' @'%' identified by 'Atguigu.123456';

     

    mysql> flush privileges;

    10)为CM安装mysql驱动

    1)将mysql-connector-java-5.1.27-bin.jar拷贝到/usr/share/java路径下,并重命名

    [root@hadoop102 java]# mv mysql-connector-java-5.1.27-bin.jar mysql-connector-java.jar

    2)分发驱动

    xsync /usr/share/java

    11、CM安装

    Cloudera Manager默认采用yum安装,对于能够联网的用户,可直接在线安装,十分快捷方便。对于网络不畅的用户,则可搭建本地yum源,进行安装。

    1)集群规划

    节点

    hadoop102

    hadoop103

    hadoop104

    服务

    cloudera-scm-server

    cloudera-scm-agent

    cloudera-scm-agent

    cloudera-scm-agent

    2)下载在线yum源配置文件(在线yum安装)

    cd /etc/yum.repos.d

    wget https://archive.cloudera.com/cm6/6.2.1/redhat7/yum/cloudera-manager.repo

    3)分发在线yum源配置文件(在线yum安装)

    xsync /etc/yum.repos.d/cloudera-manager.repo

    4)搭建本地yum源(离线yum安装)(若网络环境畅通,此步可直接跳过

    1)将压缩包cloudera-repos.tar.gz拷贝到集群中的一台节点,解压到/var/www/html路径下

    [root@hadoop102 ~]# tar -zxvf cloudera-repos.tar.gz -C /var/www/html

    2)进入/var/www/html/路径,并开启http服务

    [root@hadoop102 ~]# cd /var/www/html/

    [root@hadoop102 html]# python -m SimpleHTTPServer 8900

    3)浏览器访问该节点的8900端口,查看http服务是否正常开启

     

    4)编辑本地yum源配置文件

    vim /etc/yum.repos.d/cloudera-manager.repo

    文件内容如下

    [cloudera-manager]

    name=cloudera-manager

    baseurl=http://hadoop102:8900/cloudera-repos/cm6/6.2.1/redhat7/yum/

    enabled=1

    gpgcheck=0

    5)分发该配置文件

    xsync /etc/yum.repos.d/cloudera-manager.repo

    4)安装CM server及agent

    [root@hadoop102 ~]# yum -y install cloudera-manager-daemons cloudera-manager-agent cloudera-manager-server

    [root@hadoop103 ~]# yum -y install cloudera-manager-agent cloudera-manager-daemons

    [root@hadoop104 ~]# yum -y install cloudera-manager-agent cloudera-manager-daemons

    12、修改CM配置文件(三台,不要用xsync同步

    vim /etc/cloudera-scm-agent/config.ini

    13、MySQL中建库

    1)创建各组件需要的数据库

    mysql> CREATE DATABASE scm DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

     

    mysql> CREATE DATABASE amon DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

     

    mysql> CREATE DATABASE hue DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

     

    mysql> CREATE DATABASE hive DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

     

    mysql> CREATE DATABASE sentry DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

     

    mysql> CREATE DATABASE oozie DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

    2)为CM配置数据库(自带脚本)

    /opt/cloudera/cm/schema/scm_prepare_database.sh mysql scm root Atguigu.123456

    14、启动CM服务

    1)启动服务节点hadoop102

    [root@hadoop102 ~]# systemctl start cloudera-scm-server

    2)启动工作节点:hadoop102、hadoop103、hadoop104

    [root@hadoop102 ~]# systemctl start cloudera-scm-agent

    [root@hadoop103 ~]# systemctl start cloudera-scm-agent

    [root@hadoop104 ~]# systemctl start cloudera-scm-agent

    3查看Server启动日志

    [root@hadoop102 cm]# tail -f /var/log/cloudera-scm-server/cloudera-scm-server.log

    出现Started Jetty server字样及表明启动成功。

    4)访问http://hadoop102:7180(初始用户名、密码均为admin

    15、关闭CM服务

    1)关闭工作节点:hadoop102、hadoop103、hadoop104

    [root@hadoop102 ~]# systemctl stop cloudera-scm-agent

    [root@hadoop103 ~]# systemctl stop cloudera-scm-agent

    [root@hadoop104 ~]# systemctl stop cloudera-scm-agent

    2)关闭服务节点hadoop102

    [root@hadoop102 ~]# systemctl stop cloudera-scm-server

  • 相关阅读:
    Microsoft Visual Studio 2010(vs10)安装与使用
    961专业课复习资料
    spring boot: 输出json
    spring boot: 热部署(一) run as – java application (spring-loader-1.2.4.RELEASE.jar)
    FastJson/spring boot: json输出方法二
    FastJson/spring boot: json输出
    FastJson中文乱码
    FastJSON 简单使用
    mytabits表关联一对一(多对一?)
    Model/ModelMap 和 ModelAndView 的区别使用
  • 原文地址:https://www.cnblogs.com/qfdy123/p/13915494.html
Copyright © 2011-2022 走看看