声明:本篇文章除部分引用外,均为原创内容,如有雷同纯属巧合,引用转载请附上原文链接与声明。
阅读条件:阅读本文建议对Linux,CDH等有基本认识,不了解亦可阅读本文。
注:本文若包含部分下载内容,本着一站式阅读的想法,本站提供其对应软件的直接下载方式,但是由于带宽原因下载缓慢是必然的,建议读者去相关官网进行下载,若某些软件禁止三方传播,请在主页上通过联系作者的方式将相关项目进行取消。
文章大纲
- 节点分配
- 节点配置
- 软件安装/配置
- CDH安装配置
1.节点分配
本次的测试环境以及配置如下,这里采取1个主节点,1个从节点来配置,在CDH安装中要求至少两个节点才能安装相关组件,本次安装使用公司所提供的服务器硬件资源,且已在相关虚拟机上重装了系统(ubuntu 18.04),所以接下来将略过虚拟机安装步骤,虚拟机的配置读者可按照自己机器的情况灵活调配。
IP | hostname | role | CPU cores | memory(GB) | disk(GB) |
---|---|---|---|---|---|
172.16.4.92 | master | 主节点 | 32 | 80 | 1024 |
172.16.4.93 | salve1 | 从节点 | 16 | 80 | 1024 |
2.节点配置
2.1 修改主机名称
在master节点上执行已下命令
vim /etc/sysconfig/network
然后在打开的文件中添加如下内容
hostname=master
同理,在salve1节点上的文件中添加如下内容
hostname=slave1
2.2 修改hosts文件
在master和slave1节点上均进行以下操作
vim /etc/hosts
添加以下内容
172.16.4.92 master
172.16.4.93 slave1
2.3 配置防火墙
在master和slave1节点上均进行执行以下命令,关闭防火墙,以及selinux
systemctl stop firewalld.serivce
systemctl mask firewalld.service
2.4 配置本地yum源
在每一个节点上,基于带有yum源的系统镜像创建本地yum源,笔者使用的是中标麒麟镜像(点此下载,建议官网获取),读者可以采用其他带有yum源的镜像,也可以采用自定义的yum源,这个看情况灵活调整。此处以master节点作为示例,以下步骤对于其他配置本次yum源的时候不做参考。
- 上传带有yum源的镜像到/home 目录下
- 禁用操作系统自带的yum源,将各项中的enabled设置为0,我的配置文件为/etc/yum.repos.d/ns7-adv.repo
[ns7-adv-os]
name=NeoKylin Linux Advanced Server 7 - Os
baseurl=http://update.cs2c.com.cn:8080/NS/V7/V7Update4/os/adv/lic/base/$basearch/
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-neokylin-release
enabled=0
[ns7-adv-updates]
name=NeoKylin Linux Advanced Server 7 - Updates
baseurl=http://update.cs2c.com.cn:8080/NS/V7/V7Update4/os/adv/lic/updates/$basearch/
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-neokylin-release
enabled=0
[ns7-adv-addons]
name=NeoKylin Linux Advanced Server 7 - Addons
baseurl=http://update.cs2c.com.cn:8080/NS/V7/V7Update4/os/adv/lic/addons/$basearch/
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-neokylin-release
enabled=0
2.5 自定义yum的repo文件
创建文件 /etc/yum.repos.d/ns7-iso.repo
输入以下内容,以下内容表示采用本地挂载文件作为yum源,配置完成后,保存退出
[ns7-iso]
name=iso
baseurl=file:///media
enabled=1
gpgcheck=0
2.6 设置本地yum源的开机挂载
编辑挂载文件,执行如下命令
vim /etc/fstab
将以下命令添加到内容中的最后一行(需要替换镜像名称)
/home/example.iso /media iso9660 defaults 0 0
2.7 挂载镜像
mount -a
2.8 更新yum源
yum clean all
yum update
2.9 NTP 配置
每个节点上安装NTP服务
yum -y install ntp
每个节点上编辑ntp配置文件
vim /etc/ntp.conf
各个节点添加以下内容,配置文件中已有的也不需要再添加
restrict default nomodify notrap nopeer noquery
restrict 172.16.4.92 nomodify notrap nopeer noquery # 替换ip和网关
restrict 172.16.4.254 mask 255.255.255.0 nomodify notrap # 替换ip和网关
restrict 127.0.0.1
restrict ::1
server 172.16.4.92 # 指向master的ip
Fudge 172.16.4.92 stratum 10 # 指向master的ip
3. 软件安装/配置
3.1 安装JDK 1.8(已配置的可跳过此步)
1.下载jdk安装包,点此下载,建议官网获取
2.下载完成后,将其上传到各个节点上
3.解压至/usr/java/ 文件夹下
4.执行以下操作配置JAVA_HOME
执行命令,编辑环境变量配置文件
vim ~/.bash_profile
添加内容,配置JAVA_HOME
export JAVA_HOME=/usr/java
PATH=$PATH:$JAVA_HOME/bin
export PATH
执行命令,使配置生效
source ~/.bash_profile
3.2 配置SSH
在每一个节点上执行以下过程
生成ssh需要的公钥和私钥,生成的公钥和私钥默认会存放在 ~/.ssh目录下
ssh-keygen -t rsa
执行以下命令将本机的公钥放在已授权的公钥中,并修改权限
cat id_rsa.pub >> authorized_keys
chmod 600 authorized_keys
接下来在每一台机器上,将其他机器的公钥拷贝到authorized_keys中
3.3 在master节点上安装mysql组件
如果机器上已经安装过旧版mysql,需要将其卸载,卸载命令如下,如果未安装跳过此步
yum remove mysql-libs
下载mysql包(5.7.x),并解压到/usr/mysql/。点此下载,建议官网获取
在解压文件中找到以下命令需要的文件,并依次执行以下命令
rpm -ivh mysql-community-common-5.7.20-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.20-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.20-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.20-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-5.7.20-1.el7.x86_64.rpm
启动mysql
systemctl start mysqld.service
获取mysql的登录密码
more /var/log/mysqld.log | grep password
使用获取的密码登录mysql
mysql -uroot -pexample
修改初始密码
set password=password('example');
授权
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'example' WITH GRANT OPTION;
flush privileges;
修改数据库时区
vim /etc/my.conf
设置相关值
default-time_zone = '+8:00'
3.4 安装Cloudera Manager
下载安装包至本地(CDH6.3.2),并将下载的包上传到所有节点上并解压至 /usr/cdh/ 文件夹下。点此下载,建议官网下载
在master节点上安装server 和 agent服务,进入/usr/cdh/ 下,在解压包中找到以下命令所需要的文件。
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 cloudera-manager-server-6.3.1-1466458.el7.x86_64.rpm
在slave节点上安装agent服务,进入/usr/cdh/下,在解压包中找到以下命令所需要的文件。
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
在master节点上,执行命令创建manager数据库,若创建成功会得到successful等类似的提示
/opt/cloudera/cm/schema/scm_prepare_database.sh mysql -hlocalhost -uroot -p scm scm
在每个节点上编辑agent配置文件
vim /etc/cloudera-scm-agent/config.ini
在配置文件中修改这些条目为如下所示
server_host=master
server_port=7182
准备启动cloudera manager,进入到/usr/cdh目录下,可以看到如下几个文件,这几个文件即为CDH启动所需文件
-rw-r--r--. 1 root root 2082186246 7月 17 15:00 CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel
-rw-r--r--. 1 root root 40 7月 17 14:59 CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel.sha1
drwxr-xr-x. 3 root root 56 7月 17 14:59 cm6.3.1-redhat7
-rw-r--r--. 1 root root 1411444147 7月 17 14:59 cm6.3.1-redhat7.tar.gz
-rw-r--r--. 1 root root 33887 7月 17 14:58 manifest.json
在master节点上
systemctl start cloudera-scm-server.service
systemctl start cloudera-scm-agent.service
在agent节点上
systemctl start cloudera-scm-agent.service
4.安装CDH
4.1 初始化
访问master节点的7180端口。会进入登录界面,以admin/admin的默认账号密码登录
4.2 安装zookeepker,Hadoop,HBase
在首次进入网站时,需要在网站右上角选中添加服务,然后即可对相关组件进行安装,安装过程按照引导过程安装即可。