资源合集地址:
安装jdk
rpm -ivh jdk-8u321-linux-x64.rpm
echo -e "# JAVA_HOME \nexport JAVA_HOME=/usr/java/jdk1.8.0_321-amd64 \nexport PATH=$PATH:$JAVA_HOME/bin" >> /etc/profile
安装mysql
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql57-community-release-el7-10.noarch.rpm
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
yum -y install mysql-community-server
service mysqld start
systemctl enable mysqld
获取mysql临时密码
grep 'temporary password' /var/log/mysqld.log
登录mysql
mysql -uroot -p
修改密码策略
set global validate_password_policy=0;
set global validate_password_length=1;
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
create database scm default character set utf8 default collate utf8_general_ci;
create database hive default character set utf8 default collate utf8_general_ci;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY '123456' WITH GRANT OPTION;
FLUSH PRIVILEGES;
使用ntp同步时间,服务端
yum install -y ntpdate ntp
vi /etc/ntp.conf
最下面添加
restrict 192.168.5.0 mask 255.255.255.0 nomodify #运行哪个子网时间同步
server 127.127.1.0
fudge 127.127.1.0 stratun 10
注释掉这些
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
保存退出
systemctl start ntpd
systemctl enable ntpd
其他客户端
yum install -y ntpdate ntp
vi /etc/ntp.conf
最下面添加
server master#填写服务器ip或者地址
注释掉这些
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
保存退出
crontab -e
添加
*/2 * * * * sudo ntpdate master
保存退出
先初始化服务器然后修改hosts文件,每个服务器上都要配置
vim /etc/hosts
127.0.0.1 localhost
192.168.5.10 master
192.168.5.11 node1
192.168.5.12 node2
Linux服务器免密登录
ssh-keygen -t rsa
cd /root/.ssh/
ssh-copy-id master
输入 yes然后输入服务器密码
ssh-copy-id node1(同上)
ssh-copy-id node2(同上)
yum -y install httpd createrepo
systemctl start httpd
systemctl enable httpd
createrepo .命令是将当前目录rpm添加到仓库,可以使用yum install 安装
创建目录
上传资源包到任意目录
mkdir -p /var/www/html/cloudera-repos
unzip -d /var/www/html/cloudera-repos cm6.3.1.zip
chmod 777 -R /var/www/html/cloudera-repos/
createrepo /var/www/html/cloudera-repos/cm6.3.1
创建yum源
cd /etc/yum.repos.d
vim cloudera-manager.repo
内容如下
[cloudera-manager]
name=Cloudera Manager 6.3.1
baseurl=http://master/cloudera-repos/cm6.3.1
gpgcheck=0
enabled=1
将 /etc/yum.repos.d/cloudera-manager.repo复制到其他节点上
yum clean all && yum makecache
yum install -y cloudera-manager-daemons cloudera-manager-agent cloudera-manager-server
正常情况,主节点安装,然后使用cm安装,其他节点会自动安装,如果无法自动安装,需要手动在其他从节点安装agent
mkdir -p /opt/cloudera
unzip -d /opt/cloudera/ parcel-repo.zip
chown -R cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo
把下图需要的文件移进来
上传到mysql-connector-java.jar /usr/share/java/;mysql驱动名必须改成mysql-connector-java.jar
mkdir -p /usr/share/java/
mv mysql-connector-java.jar /usr/share/java/
创建所有需要的数据库(如果报密码策略问题,需要进入mysql后,执行sql语句创建库表)
mysql -uroot -p123456 -e "set global validate_password_policy=0;
set global validate_password_length=1;
CREATE DATABASE if not exists scm DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON scm.* TO 'scm'@'%' IDENTIFIED BY 'scm';
GRANT ALL ON scm.* TO 'scm'@'localhost' IDENTIFIED BY 'scm';
CREATE DATABASE if not exists amon DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON amon.* TO 'amon'@'%' IDENTIFIED BY 'amon';
GRANT ALL ON amon.* TO 'amon'@'localhost' IDENTIFIED BY 'amon';
CREATE DATABASE if not exists rman DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON rman.* TO 'rman'@'%' IDENTIFIED BY 'rman';
GRANT ALL ON amon.* TO 'amon'@'localhost' IDENTIFIED BY 'amon';
CREATE DATABASE if not exists hue DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON hue.* TO 'hue'@'%' IDENTIFIED BY 'hue';
GRANT ALL ON hue.* TO 'hue'@'localhost' IDENTIFIED BY 'hue';
CREATE DATABASE if not exists metastore DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON metastore.* TO 'hive'@'%' IDENTIFIED BY 'hive';
GRANT ALL ON metastore.* TO 'hive'@'localhost' IDENTIFIED BY 'hive';
CREATE DATABASE if not exists sentry DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON sentry.* TO 'sentry'@'%' IDENTIFIED BY 'sentry';
GRANT ALL ON sentry.* TO 'sentry'@'localhost' IDENTIFIED BY 'sentry';
CREATE DATABASE if not exists nav DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON nav.* TO 'nav'@'%' IDENTIFIED BY 'nav';
GRANT ALL ON nav.* TO 'nav'@'localhost' IDENTIFIED BY 'nav';
CREATE DATABASE if not exists navms DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON navms.* TO 'navms'@'%' IDENTIFIED BY 'navms';
GRANT ALL ON navms.* TO 'navms'@'localhost' IDENTIFIED BY 'navms';
CREATE DATABASE if not exists oozie DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON oozie.* TO 'oozie'@'%' IDENTIFIED BY 'oozie';
GRANT ALL ON oozie.* TO 'oozie'@'localhost' IDENTIFIED BY 'oozie';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY '123456' WITH GRANT OPTION;
FLUSH PRIVILEGES;"
修改hive编码支持中文
#修改字段注释字符集
alter table COLUMNS_V2 modify column COMMENT varchar(256) character set utf8;
#修改表注释字符集
alter table TABLE_PARAMS modify column PARAM_VALUE varchar(20000) character set utf8;
#修改分区参数,支持分区建用中文表示
alter table PARTITION_PARAMS modify column PARAM_VALUE varchar(20000) character set utf8;
alter table PARTITION_KEYS modify column PKEY_COMMENT varchar(20000) character set utf8;
#修改索引名注释,支持中文表示
alter table INDEX_PARAMS modify column PARAM_VALUE varchar(4000) character set utf8;
#修改视图,支持视图中文
ALTER TABLE TBLS modify COLUMN VIEW_EXPANDED_TEXT mediumtext CHARACTER SET utf8;
ALTER TABLE TBLS modify COLUMN VIEW_ORIGINAL_TEXT mediumtext CHARACTER SET utf8;
mysql数据库与CM Server是同一台主机
/opt/cloudera/cm/schema/scm_prepare_database.sh mysql scm root 123456
(执行报错ssl问题,需关闭mysql ssl)
echo -e "# disable_ssl\nskip_ssl\n" >> /etc/my.cnf
service mysqld restart
mysql数据库与CM Server不在同一台主机上
/opt/cloudera/cm/schema/scm_prepare_database.sh mysql scm root 123456 --scm-host master scm scm scm
启动服务
systemctl start cloudera-scm-server
日志
tail -f /var/log/cloudera-scm-server/cloudera-scm-server.log
启动报错解决办法
安装CDH后启动cloudera-scm-server遇到问题_lvtula的博客-CSDN博客
访问http:192.168.5.10/7180 admin/admin
自定义存储库地址
http://master/cloudera-repos/cm6.3.1
检查服务问题
解决方法每个节点都加
sysctl vm.swappiness=10
cat /proc/sys/vm/swappiness
echo 'vm.swappiness=10'>> /etc/sysctl.conf
echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled
vi /etc/rc.local
最后一行后面添加
echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled
Root无hdfs权限问题
1、在Linux执行如下命令增加supergroup
groupadd supergroup
2、如将用户root增加到supergroup中
usermod -a -G supergroup root
3、同步系统的权限信息到HDFS文件系统
sudo -u hdfs hdfs dfsadmin -refreshUserToGroupsMappings
4、查看属于supergroup用户组的用户
grep 'supergroup:' /etc/group
hive解决中文乱码
在hive表初始化后,修改表编码
#修改字段注释字符集
alter table COLUMNS_V2 modify column COMMENT varchar(256) character set utf8;
#修改表注释字符集
alter table TABLE_PARAMS modify column PARAM_VALUE varchar(20000) character set utf8;
#修改分区参数,支持分区建用中文表示
alter table PARTITION_PARAMS modify column PARAM_VALUE varchar(20000) character set utf8;
alter table PARTITION_KEYS modify column PKEY_COMMENT varchar(20000) character set utf8;
#修改索引名注释,支持中文表示
alter table INDEX_PARAMS modify column PARAM_VALUE varchar(4000) character set utf8;
#修改视图,支持视图中文
ALTER TABLE TBLS modify COLUMN VIEW_EXPANDED_TEXT mediumtext CHARACTER SET utf8;
ALTER TABLE TBLS modify COLUMN VIEW_ORIGINAL_TEXT mediumtext CHARACTER SET utf8;
一键卸载脚本
#!/bin/bash
# 停止CM服务
service cloudera-scm-server stop
service cloudera-scm-agent stop
# 卸载CM软件包
yum -y remove cloudera-manager-daemons cloudera-manager-agent cloudera-manager-server
# 卸载装载点,执行一遍好像不生效
umount cm_processes
umount cm_processes
umount cm_processes
# 删除文件
rm -rf /var/log/*
#如果想完全卸载,可以打开注释,只是重装,不需要删除
#rm -rf /opt/cloudera*
rm -rf /etc/systemd/system/multi-user.target.wants/cloudera*
rm -rf /etc/default/cloudera*
rm -rf /etc/cloudera*
rm -rf /var/lib/cloudera*
rm -rf /var/log/cloudera*
rm -rf /usr/lib/systemd/system/cloudera*
rm -rf /run/cloudera*
rm -rf /sys/fs/cgroup/systemd/system.slice/cloudera*
rm -rf /etc/security/limits.d/cloudera*
rm -rf /var/lib/yum/repos/x86_64/7/cloudera*
rm -rf /var/cache/yum/x86_64/7/cloudera*
rm -rf /tmp/*
rm -rf /var/lib/hadoop-*
rm -rf /var/lib/impala
rm -rf /var/lib/solr
rm -rf /var/lib/zookeeper
rm -rf /var/lib/hue
rm -rf /var/lib/oozie
rm -rf /var/lib/pgsql
rm -rf /var/lib/sqoop2
rm -rf /data/dfs/
rm -rf /data/impala/
rm -rf /data/yarn/
rm -rf /dfs/
rm -rf /impala/
rm -rf /yarn/
rm -rf /var/run/hadoop-*/
rm -rf /var/run/hdfs-*/
rm -rf /usr/bin/hadoop*
rm -rf /usr/bin/zookeeper*
rm -rf /usr/bin/hbase*
rm -rf /usr/bin/hive*
rm -rf /usr/bin/hdfs
rm -rf /usr/bin/mapred
rm -rf /usr/bin/yarn
rm -rf /usr/bin/sqoop*
rm -rf /usr/bin/oozie
rm -rf /etc/hadoop*
rm -rf /etc/zookeeper*
rm -rf /etc/hive*
rm -rf /etc/hue
rm -rf /etc/impala
rm -rf /etc/sqoop*
rm -rf /etc/oozie
rm -rf /etc/hbase*
rm -rf /etc/hcatalog
rm -rf /var/lib/alternatives/impala-conf
rm -rf /var/lib/alternatives/impalad
rm -rf /var/lib/alternatives/impala-collect-diagnostics
rm -rf /var/lib/alternatives/impala-shell
rm -rf /var/lib/alternatives/impala-collect-minidumps
rm -rf /etc/alternatives/impala-shell
rm -rf /etc/alternatives/impalad
rm -rf /etc/alternatives/impala-collect-diagnostics
rm -rf /etc/alternatives/impala-conf
rm -rf /etc/alternatives/impala-collect-minidumps
rm -rf /var/log/impala*
rm -rf /var/lib/alternatives/zookeeper-client
rm -rf /var/lib/alternatives/zookeeper-server
rm -rf /var/lib/alternatives/zookeeper-conf
rm -rf /var/lib/alternatives/zookeeper-server-initialize
rm -rf /var/lib/alternatives/zookeeper-server-cleanup
rm -rf /var/lib/alternatives/zookeeper-security-migration
rm -rf /etc/alternatives/zookeeper-conf
rm -rf /etc/alternatives/zookeeper-server
rm -rf /etc/alternatives/zookeeper-server-cleanup
rm -rf /etc/alternatives/zookeeper-server-initialize
rm -rf /etc/alternatives/zookeeper-security-migration
rm -rf /etc/alternatives/zookeeper-client
rm -rf /var/log/zookeeper
# 重建数据库
mysql -uroot -p123456 -e "drop database if exists scm;drop database if exists hive;drop database if exists oozie;drop database if exists hue;create database scm DEFAULT CHARACTER SET utf8;create database hive DEFAULT CHARACTER SET utf8;create database oozie DEFAULT CHARACTER SET utf8;create database hue DEFAULT CHARACTER SET utf8;"
# 删除用户和组
userdel -r cloudera-scm
userdel -r ambari-qa
userdel -r appmon
userdel -r falcon
userdel -r gpadmin
userdel -r hcat
userdel -r hive
userdel -r kafka
userdel -r mapred
userdel -r spark
userdel -r tez
userdel -r yarn
userdel -r zookeeper
userdel -r ams
userdel -r atlas
userdel -r flume
userdel -r hbase
userdel -r hdfs
userdel -r infra-solr
userdel -r livy
userdel -r mongodb
userdel -r oozie
userdel -r sqoop
userdel -r zeppelin
userdel -r impala
userdel -r kudu
userdel -r hadoop
groupdel hadoop
groupdel cloudera-scm
groupdel ambari-qa
groupdel appmon
groupdel falcon
groupdel gpadmin
groupdel hcat
groupdel hive
groupdel kafka
groupdel mapred
groupdel spark
groupdel tez
groupdel yarn
groupdel zookeeper
groupdel ams
groupdel atlas
groupdel flume
groupdel hbase
groupdel hdfs
groupdel infra-solr
groupdel livy
groupdel mongodb
groupdel oozie
groupdel sqoop
groupdel zeppelin
groupdel impala
groupdel kudu