zoukankan      html  css  js  c++  java
  • CDH5部署三部曲之一:准备工作

    欢迎访问我的GitHub

    https://github.com/zq2599/blog_demos

    内容:所有原创文章分类汇总及配套源码,涉及Java、Docker、Kubernetes、DevOPS等;

    系列介绍

    《CDH5部署三部曲》共三篇文章,对CDH5.7.2版本的准备、部署、启动、设置等环节进行实战,内容如下:

    第一篇:《准备工作》,即CDH集群中每一台机器都要做的操作;
    第二篇:《部署和设置》,本章完成CDH集群部署和启动;
    第三篇:《问题总结》,列出实战中遇到的问题及解决办法;

    系列文章链接

    1. 《CDH5部署三部曲之一:准备工作》
    2. 《CDH5部署三部曲之二:部署和设置》
    3. 《CDH5部署三部曲之三:问题总结》

    版本信息

    1. CentOS:7.6.1810
    2. Python: 2.7.5(操作系统自带)
    3. CM包:cloudera-manager-centos7-cm5.7.2_x86_64.tar.gz

    服务器规划

    本次搭建的CDH集群一共用到三台机器,一台master,另外两台是agent:

    主机名 IP地址 内存 身份
    master 192.168.133.152 双核4G内存 管理节点
    worker1 192.168.133.153 双核8G内存 任务节点
    worker2 192.168.133.154 双核16G内存 任务节点

    文件下载

    1. cm下载地址:http://archive.cloudera.com/cm5/cm/5/ ,找到自己需要的cm包下载,本次实战用的是cloudera-manager-centos7-cm5.7.2_x86_64.tar.gz,如下图红框:
      在这里插入图片描述
    2. parcel下载地址:http://archive.cloudera.com/cdh5/parcels ,本次实战用到的是CDH-5.7.2-1.cdh5.7.2.p0.18-el7.parcel,请下载下图红框中的三个文件,注意一共要下载三个文件:
      在这里插入图片描述

    所有机器都要做的相同操作

    以下操作需要master、worker1、worker2各自做一遍:

    1. 本次实战在所有机器上的操作,都使用root账号;
    2. 确保所有机器都可以用SSH工具远程登录;
    3. 安装时间同步工具:
    yum install -y ntpdate
    
    1. 时间同步:
    ntpdate cn.ntp.org.cn
    
    1. 关闭和禁用防火墙:
    systemctl stop firewalld && systemctl disable firewalld
    
    1. 关闭SELINUX:打开文件/etc/selinux/config,找到SELINUX=xxx那一行,改为SELINUX=disabled,如下图红框:
      在这里插入图片描述
    2. 关闭swap:打开文件/etc/fstab,找到带有swap的那一行,注释掉,如下图红框:
      在这里插入图片描述
    3. 重启电脑;
    4. 新建文件夹/usr/lib/jvm
    5. 安装JDK,我这里下载的是jdk-8u191-linux-x64.tar.gz,解压后是个名为jdk1.8.0_191的文件夹,将此文件夹放在/usr/lib/jvm目录下;
    6. 打开文件/etc/profile,在尾部增加以下内容:
    export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_191
    export JRE_HOME=${JAVA_HOME}/jre
    export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
    export PATH=${JAVA_HOME}/bin:$PATH
    
    1. 使配置生效:
    source /etc/profile
    
    1. CDH默认的JDK目录是 /usr/java/default,因此要创建软链接,执行以下命令:
    mkdir /usr/java && ln -s /usr/lib/jvm/jdk1.8.0_191 /usr/java/default
    
    1. 检查Python是否可用,如果没有还请自行安装,本次用到的是2.6或者2.7版本:
      在这里插入图片描述
    2. 安装多个依赖包:
    yum -y install chkconfig bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse fuse-libs redhat-lsb
    
    1. 创建目录:
    mkdir /opt/cloudera-manager
    
    1. 把前面准备好的文件cloudera-manager-centos7-cm5.7.2_x86_64.tar.gz上传到master,执行以下命令将该文件解压到/opt/cloudera-manager目录:
    tar -zxvf cloudera-manager-centos7-cm5.7.2_x86_64.tar.gz -C /opt/cloudera-manager/
    
    1. 创建账号cloudera-scm
    useradd --system --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
    
    1. 编辑文件config.ini
    vi /opt/cloudera-manager/cm-5.7.2/etc/cloudera-scm-agent/config.ini
    
    1. 修改server_host的值,改为master,如下图红框所示:
      在这里插入图片描述
    2. 新建目录 /usr/share/java/,将刚才下载的mysql-connector-java-5.1.34.jar放入该目录,并改名为mysql-connector-java.jar

    三台电脑相互免密码登录设置

    1. 三台电脑的/etc/hosts文件,都增加以下相同内容:
    192.168.133.154 master
    192.168.133.155 worker1
    192.168.133.156 worker2
    
    1. 三台电脑都执行命令:ssh-keygen 然后四个回车完成ssh公私钥创建;
    2. 在master执行ssh-copy-id root@worker1ssh-copy-id root@worker2
    3. 在worker1执行ssh-copy-id root@masterssh-copy-id root@worker2
    4. 在worker2执行ssh-copy-id root@masterssh-copy-id root@worker1

    至此,准备工作全部完成,请确保所有机器都做了上述操作,下一篇会用这些机器来完成部署。

    欢迎关注公众号:程序员欣宸

    微信搜索「程序员欣宸」,我是欣宸,期待与您一同畅游Java世界...

    https://github.com/zq2599/blog_demos

  • 相关阅读:
    Device eth0 does not seem to be present, delaying initialization(解决克隆CentOS6.3虚拟机后网卡设备无法启动问题)
    CI整合Smarty
    修改crontab默认的编辑器
    添加数据之后不跳页面显示一个漂亮的提示信息(非ajax提交数据)
    jsp连接mysql数据库
    PHP使用CURL详解
    内、外部号码范围配置
    更改SAP的字段翻译
    SAP 应用服务负载均衡的实现
    SAP中禁止特定用户更改密码
  • 原文地址:https://www.cnblogs.com/bolingcavalry/p/13806601.html
Copyright © 2011-2022 走看看