云服务器安装CDH集群

前提准备

虚拟机上服务器版本:centos7.8
对应ip和主机名
192.168.100.150 server150 Server150
192.168.100.151 server151 Server151
192.168.100.152 server152 Server152
192.168.100.153 server153 Server153
对应的软件准备(jdk,mysql,cdh等对应版本,服务器常用工具)
Jdk1.8u181
Mysql5.7
Cdh6.2
#所有节点安装常用工具
Yum install sudo
#1.安装vim编辑器
yum install -y vim
#2.安装lrzsz文件传输工具
yum -y install lrzsz
#3.安装wget文件下载工具
yum -y install wget
#4.安装netstat,查看端口监听状况: netstat -ntlp | grep 端口号
yum -y install net-tools
#5.下载unzip解压工具,解压命令: uzip 压缩包.zip -d 解压目录
yum install -y unzip zip

环境初始化

1. 修改主机名和ip
修改主机名
查看主机名:cat /ect/hostname
修改主机名://永久性的修改主机名称,重启后能保持修改后的。
hostnamectl set-hostname server151
//删除hostname
hostnamectl set-hostname “”
hostnamectl set-hostname “” --static
hostnamectl set-hostname “” –pretty
修改ip
修改:ip addr
cd /etc/sysconfig/network-scripts
vim ifcfg-ens192
或者vim /etc/sysconfig/network-scripts/ifcfg-ens192
#重启网卡服务
systemctl restart network

#修改以下内容红色部分

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="none"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens192"
UUID="f10ce132-b6da-473d-bffc-580e7a5ca117"
DEVICE="ens192"
ONBOOT="yes"
IPADDR="192.168.100.151"
PREFIX="24"
GATEWAY="192.168.100.254"
DNS1="202.101.172.35"
IPV6_PRIVACY="no"

#保存并退出
#重启网卡服务
systemctl restart network

2. 关闭防火墙

#查看防火墙状态
Firewall-cmd –state
#永久关闭防火墙
Systemctl disable firewalld

3. 配置hosts文件

vim /etc/hosts
#所有节点都要配置
192.168.100.151 server151 Server151
192.168.100.152 server152 Server152
192.168.100.153 server153 Server153
192.168.100.154 server154 Server154

在这里插入图片描述
4. 配置免密

所有节点上执行
#到root目录下:
cd root
#执行生成密钥命令:
ssh-keygen -t rsa
#然后三个回车
#然后复制公钥追加到第一台节点的公钥文件中:
ssh-copy-id -i /root/.ssh/id_rsa.pub root@server152
#选择yes
#输入登录第一台节点的密码(操作完成该节点公钥复制到第一台节点中)

在这里插入图片描述
在这里插入图片描述

	#依次操作复制到其他几台的节点上
	ssh-copy-id -i /root/.ssh/id_rsa.pub root@server153
	ssh-copy-id -i /root/.ssh/id_rsa.pub root@server154

免密具体原理

逻辑
全部生成公钥和私钥
将第1台的公钥拷到该目录特定文件authorized_keys中,
将第1台的authorized_keys scp到第2台机器,
将第2台的公钥拷到该目录特定文件authorized_keys中
将第2台的authorized_keys scp到第3台机器
将第3台的公钥拷到该目录特定文件authorized_keys中
将第3台的authorized_keys scp到第1台机器

具体操作:
所有集群机器
cd /root/
ssh-keygen -t rsa
#然后三个回车
[root@hadoop26 ~]# cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys
此时authorized_keys只有hadoop26的公钥
[root@hadoop26 ~]# scp /root/.ssh/authorized_keys root@hadoop27:/root/.ssh/authorized_keys
[root@hadoop27 ~]# cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys
此时authorized_keys有hadoop26,hadoop27的公钥
[root@hadoop27 ~]# cat /root/.ssh/authorized_keys
[root@hadoop27 ~]# scp /root/.ssh/authorized_keys root@hadoop28:/root/.ssh/authorized_keys

[root@hadoop28 ~]# cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys
此时只有hadoop28的authorized_keys有hadoop26,hadoop27,hadoop28的公钥
[root@hadoop28 ~]# cat /root/.ssh/authorized_keys
[root@hadoop28 ~]# scp /root/.ssh/authorized_keys root@hadoop26:/root/.ssh/authorized_keys
此时hadoop26,hadoop28的authorized_keys有hadoop26,hadoop27,hadoop28的公钥
[root@hadoop28 ~]# scp /root/.ssh/authorized_keys root@hadoop27:/root/.ssh/authorized_keys
此时全部节点的authorized_keys有hadoop26,hadoop27,hadoop28的公钥

5. 设置时间同步

#先查看服务器是否安装ntpd服务(啥都没显示的话说明没有安装)
rpm -qa | grep ntpd
#安装NTP服务
yum install ntp或者yum –y install ntp
###5、设置时间同步
#设置时区为Asia/Shanghai
timedatectl set-timezone Asia/Shanghai
#查看是否安装了ntpd的服务
rpm -qa  | grep  ntpd
#如果没有安装,可以进行在线安装
yum -y install ntp
#启动ntpd的服务
service  ntpd  start
#设置ntpd的服务开机启动
systemctl enable ntpd.service
#查看ntpd的服务是否启动
service  ntpd  status
#设置定时任务
#与阿里云服务器进行时钟同步
crontab  -e
#设置的内容如下(其中ip为你需要和该ip的时间同步为准)
*/1 * * * * /usr/sbin/ntpdate -u ip;
#然后date查看时间是否一致

6. 主节点安装配置mysql

自行百度建议安装mysql5.7

7. 创建本地yum仓库

使用阿里的镜像源安装MySQL时下载速度比较快
#1.备份原镜像文件,便于后期恢复
cd /etc/yum.repos.d/
mv CentOS-Base.repo CentOS-Base.repo.backup
#2.下载阿里云的CentOS-Base.repo 到/etc/yum.repos.d/
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
#3. 清除缓存
yum clean all
#4. 生成缓存
yum makecache

8. 安装配置jdk

	hadoop权限:所有机器上安装jdk(单台安装在向集群分发)
#上传文件并解压到指定目录:jdk-8u181-linux-x64.tar.gz
tar –zxvf /tmp/ jdk-8u181-linux-x64.tar.gz –C /home/jdk1.8z
1 到配置文件中去配置java环境变量 
vi /ect/profile 
#复制: 
export JAVA_HOME=/usr/share/java/jdk1.8.0_181
export JRE_HOME=${JAVA_HOME}/jre 
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH 
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin 
export PATH=$PATH:${JAVA_PATH} 
    然后:wq退出,然后通过命令source /etc/profile让profile文件立即生效 
2 检查环境变量 
    javac 
    java –version

一般不采用上述的方法:用二(见三,1)

	yum -y install oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm

该方法安装直接在/usr/java/路径下是莫个配置读取jdk的默认路径,然后配置环境变量

vim /ect/profile

主节点编写文件分发脚本

#/home路径下创建scp.sh脚本内容如下:
#同步主节点的文件到其他节点
sh scp.sh /usr/share/java/*
sh scp.sh /etc/profile
sh scp.sh /etc/hosts

scp.sh内容如下

#!/bin/bash
#1. 判断参数个数
if [ $# -lt 1 ]then 
echo Not Enough Arguement! exit;
fi
#2. 遍历集群所有机器(主机名或者ip)
for host in ip1 ip2 ip3
do 
echo ==================== $host ==================== 
#3. 遍历所有目录,挨个发送 
for file in $@ 
do 
#4 判断文件是否存在 
if [ -e $file ] 
then 
#5. 获取父目录 
pdir=$(cd -P $(dirname $file); pwd) 
#6. 获取当前文件的名称 
fname=$(basename $file) 
ssh $host "mkdir -p $pdir" 
rsync -av $pdir/$fname $host:$pdir 
else 
echo $file does not exists! 
fi donedone

Cloudea Manager安装部署

  1. 安装CM Server及其agent

    文件准备:将下载好的CDH包和CM的包放到指定的目录:/opt/cloudera/parcel-repo
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/ff37eb87e771490ba598047e3bd3b35b.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAY3Nkbl9neWI=,size_19,color_FFFFFF,t_70,g_se,x_16)
    分发到集群的节点机器
    

安装httpd服务(cdh-1)
#安装
yum install -y httpd
#启动
systemctl start httpd
#开机自启
systemctl enable httpd
制作CM源生成repodata文件,需要用到createrepo这个包(cdh-1)
#安装
yum install -y createrepo
#进入到cm的rpm包存放目录
cd /var/www/html/cm
#生成repodata文件夹
createrepo .
#安装依赖(所有节点)
yum install -y bind-utils libxslt cyrus-sasl-plain cyrus-sasl-gssapi portmap fuse-libs /lib/lsb/init-functions httpd mod_ssl openssl-devel python-psycopg2 Mysql-python fuse

安装CM agent及其Server
#其中server是主节点安装,其他的所有机器都要安装(安装顺序daemons所有—> server主节点—> server-db主节点—> agent所有)

cd /var/www/html/cm 
yum -y install cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm
yum -y install cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm

yum -y install oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm
#该命令只有主节点安装
yum -y install cloudera-manager-server-6.3.1-1466458.el7.x86_64.rpm
yum -y install cloudera-manager-server-db-2-6.3.1-1466458.el7.x86_64.rpm

3. 所有节点修改agen加粗样式配置文件 ( server_host=主节点名称或者ip)

#所有节点修改agent配置(server_host=主节点ip或者主机名)
vim /etc/cloudera-scm-agent/config.ini

	 server_host=server150

4. 初始化scm数据库

	/opt/cloudera/cm/schema/scm_prepare_database.sh mysql scm scm scm

在这里插入图片描述

5. 启动cm server及其agent
启动cm server 及其agent(先启动server后启动agent)
#Server主节点启动CM server服务

	systemctl start cloudera-scm-server

#启动的日志目录为

	/var/log/cloudera-scm-server/
	tail cloudera-scm-server.log

#或者

tail  /var/log/cloudera-scm-server/ cloudera-scm-server.log

#所有节点启动CM agent
systemctl start cloudera-scm-agent
#查看状态
systemctl status cloudera-scm-agent
systemctl status cloudera-scm-server
#停掉服务
systemctl stop cloudera-scm-agent
systemctl stop cloudera-scm-server

7. 页面可视化安装其他服务
版本选择
在这里插入图片描述
在这里插入图片描述

安装基础服务

在这里插入图片描述
其中zookeeper安装的时候要选择至少3台节点
查看各服务版本

在这里插入图片描述

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值