cloudera安装
环境准备
机器角色分配
node01 192.168.56.101 cdh-master/cdh-agent
node02 192.168.56.102 cdh-agent
node03 192.168.56.103 cdh-agent
设置swapping和禁止透明页,可选操作,如果不行可以再回来设置。
# 修改Linux swapping参数
#查看
cat /proc/sys/vm/swappiness #30
#修改当前
echo 0 > /proc/sys/vm/swappiness
#添加到配置文件
echo "vm.swappiness=0" >> /etc/sysctl.conf
# 禁止透明页
echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled
#添加到配置文件
echo "echo never > /sys/kernel/mm/transparent_hugepage/defrag" >> /etc/rc.local
echo "echo never > /sys/kernel/mm/transparent_hugepage/enabled" >> /etc/rc.local
#避免重启后不生效 添加执行权限
chmod +x /etc/rc.d/rc.local
另外,该项目需要基于上一篇hadoop的基础box进行,包括支持无密码登录、时间同步等。
数据库安装
在cdh-master中安装数据库。
执行 script/install_mysql.sh
安装MySQL5.7:
# 安装完成后就会覆盖掉之前的mariadb
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
rpm -ivh mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql-community-server
# 因为安装了Yum Repository,以后每次yum操作都会自动更新,需要把这个卸载掉:
yum -y remove mysql57-community-release-el7-10.noarch
# 配置 /etc/my.cnf
grep -q '^\[mysql\]' /etc/my.cnf || cat >> /etc/my.cnf << EOF
port=3306
max_connections=1000
max_connect_errors=10
character-set-server=UTF8MB4
default-storage-engine=INNODB
default_authentication_plugin=mysql_native_password
[mysql]
default-character-set=UTF8MB4
[client]
port=3306
default-character-set=UTF8MB4
EOF
cat >> /etc/my.cnf << EOF
port=3306
max_connections=1000
max_connect_errors=10
character-set-server=UTF8MB4
default-storage-engine=INNODB
default_authentication_plugin=mysql_native_password
[mysql]
default-character-set=UTF8MB4
[client]
port=3306
default-character-set=UTF8MB4
EOF
启动数据库并开机启动:systemctl start mysqld && systemctl enable mysqld
启动后通过 cat /var/log/mysqld.log|grep password
获取临时密码。
登录数据库修改临时密码:
$ mysql -uroot -p #回车后输入临时密码
mysql> alter user 'root'@'localhost' identified by 'Rooot#132';
mysql> flush privileges; -- 刷新权限,可选
创建数据库
CREATE DATABASE scm DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE amon DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE rman DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE hue DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE metastore DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE sentry DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE nav DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE navms DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE oozie DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE hive DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
安装 mysql 连接器
mkdir -p /usr/share/java
wget https://repo1.maven.org/maven2/mysql/mysql-connector-java/5.1.47/mysql-connector-java-5.1.47.jar
mv mysql-connector-java-5.1.47.jar /usr/share/java/mysql-connector-java.jar
- 注意文件要重命名为mysql-connector-java.jar
- 如果下载不了,可以从这里下载: https://pan.baidu.com/s/1hYz_m3BLwgc_lBWpzfNKtQ 提取码: kqfe
仓库准备:第三方仓库
# 解决cdh官方仓库无法下载问题 cat > /etc/yum.repos.d/cloudera.repo << EOF [cloudera-manager] name = Cloudera Manager, Version 6.2.0 baseurl = http://ro-bucharest-repo.bigstepcloud.com/cloudera-repos/cm6/redhat/7/x86_64/cm/6.2.0/ gpgkey = http://ro-bucharest-repo.bigstepcloud.com/cloudera-repos/cm6/redhat/7/x86_64/cm/RPM-GPG-KEY-cloudera gpgcheck = 1 EOF
仓库准备:本地仓库
第三方仓库与本地仓库,选择一种就可以。使用本地仓库的目录是为了提高安装速度。 ```shell yum -y install httpdCreate directory
mkdir -p /var/www/html/cloudera-reposDownload CM, KEY and change permission mode
-r:—recursive -np:—no-parent -nH:—no-host-directories
wget -r -np -nH https://ro-bucharest-repo.bigstepcloud.com/cloudera-repos/cm6/redhat/7/x86_64/cm/6.2.0/ -P /var/www/html wget https://ro-bucharest-repo.bigstepcloud.com/cloudera-repos/cm6/redhat/7/x86_64/cm/RPM-GPG-KEY-cloudera -P /var/www/html/cloudera-repos/cm6/redhat/7/x86_64/cm chmod -R ugo+rX /var/www/html/cloudera-repos/cm6
Download CDH and change permission mode
wget -r -np -nH https://ro-bucharest-repo.bigstepcloud.com/cloudera-repos/cdh6/redhat/7/x86_64/cdh/6.2.0/ -P /var/www/html chmod -R ugo+rX /var/www/html/cloudera-repos/cdh6
Download pacels and change permission mode
wget -r -np -nH https://ro-bucharest-repo.bigstepcloud.com/cloudera-repos/cdh6/parcels/ -P /var/www/html chmod -R ugo+rX /var/www/html/cloudera-repos/parcels
cat > /etc/yum.repos.d/cloudera.repo << EOF [cloudera-cm] name=cloudera-repo baseurl=http://node01/cloudera-repos/cm6/redhat/7/x86_64/cm/6.2.0/ enabled=1 gpgcheck=0 [cloudera-cdh] name=cloudera-repo baseurl=http://node01/cloudera-repos/cdh6/redhat/7/x86_64/cdh/6.2.0/ enabled=1 gpgcheck=0 EOF
如果要安装其他版本,修改对应的版本号即可。
编辑Apache HTTP Server 配置文件/etc/httpd/conf/httpd.conf ,在<IfModule mime_module> 模块中添加下面内容:
```shell
AddType application/x-gzip .gz .tgz .parcel
在AddType application/x-gzip
后面追加 .parcel
即可。
启动httpd:systemctl start httpd
打开 http://node01/cloudera-repos/ 测试是否能够看到文件。
parcels准备,参考这个,不过依然不成功!
https://blog.csdn.net/qq_37056683/article/details/109197534
mkdir -p /opt/cloudera/parcel-repo/
cd /opt/cloudera/parcel-repo/
wget http://192.168.56.1/cloudera-repos/cdh6/parcels/6.2.0/CDH-6.2.0-1.cdh6.2.0.p0.967373-el7.parcel
wget http://192.168.56.1/cloudera-repos/cdh6/parcels/6.2.0/CDH-6.2.0-1.cdh6.2.0.p0.967373-el7.parcel.sha256
wget http://192.168.56.1/cloudera-repos/cdh6/parcels/6.2.0/manifest.json
useradd --system --home=/opt/cloudera --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
#修改用户组
chown -R cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo/
#校验parcel文件,与对应.sha256文件对比,不一致则替换
sha256sum CDH-6.2.0-1.cdh6.2.0.p0.967373-el7.parcel
cloudera manager 安装
# 主节点安装
yum install -y cloudera-manager-daemons cloudera-manager-agent cloudera-manager-server
# 从节点安装
yum install -y cloudera-manager-daemons cloudera-manager-agent
初始化数据库(主节点)
# /opt/cloudera/cm/schema/scm_prepare_database.sh 数据库类型 数据库名 用户名 密码
$ /opt/cloudera/cm/schema/scm_prepare_database.sh mysql scm "root" "Rooot#132"
cdh-master
sed -i 's/^server_host=/server_host=node01/' /etc/cloudera-scm-agent/config.ini
# 出现 All done, your SCM database is configured correctly!表示成功。
# 必须加这个,否则启动不起来,以为cm默认jdk目录为 /usr/java/default
echo "export JAVA_HOME=/opt/hdata/jdk" >> /etc/default/cloudera-scm-server
启动
#启动server
systemctl start cloudera-scm-server
systemctl enable cloudera-scm-server
#启动agent(所有节点)
systemctl start cloudera-scm-agent
systemctl enable cloudera-scm-agent
如果驱动失败可以 journelctl -xe
查看日志
访问页面 http://node01:7180/cmf/login admin/admin
- /etc/cloudera-scm-server :数据库与日志配置文件目录
- /var/log/cloudera-scm-server :日志目录
初始化配置
安装parcels无法进行,后续在研究,或者换ambari