Cloudera Manager安装教程
本人使用的是目前最新版的cdh-5.13,之前参考的网上的离线安装踩了不少坑还是没有跳出来。果断放弃,最后使用的是官方的Path B方法,中间也有不少坑,谢天谢地终于搞定了。
Path B方法主要参考了官网,有一些特别的问题本文不会描述,请大家自己去官网上去浏览。
安装环境说明
本人是在学校实验室自己搭的三台机器上进行安装,使用的ubuntu 14.04,内存 8g . hostname分别为ubuntu2,ubuntu4,ubuntu5, cloudera manager 安装在ubuntu5。 少说废话,直接开始!
ntp安装
集群环境使用ubuntu5的时间作为server时间
1 ntp server 安装
- ubuntu5机器上在线安装
sudo apt-get install ntp
修改ntp配置文件
sudo vim /etc/ntp.conf
,如下:driftfile /var/lib/ntp/ntp.drift server 127.127.1.0 fudge 127.127.1.0 stratum 10 broadcastdelay 0.08 restrict -4 default kod notrap nomodify nopeer noquery restrict -6 default kod notrap nomodify nopeer noquery restrict 127.0.0.1 restrict ::1 restrict default nomodify notrap includefile /etc/ntp/crypto/pw keys /etc/ntp/keys
重启ntp服务器
sudo /etc/init.d/ntp restart
查看ntp运行状态
ntpq -p
- ubuntu5机器上在线安装
2 ntp client 安装
- ubuntu2和ubuntu4在线安装
sudo apt-get install ntp
修改ntp配置文件
sudo vim /etc/ntp.conf
,如下:driftfile /var/lib/ntp/ntp.drift server ubuntu5 restrict -4 default kod notrap nomodify nopeer noquery restrict -6 default kod notrap nomodify nopeer noquery restrict 127.0.0.1 restrict ::1
重启ntp服务器
sudo /etc/init.d/ntp restart
查看ntp运行状态
ntpq -p
- ubuntu2和ubuntu4在线安装
mysql安装
- 1 ubuntu5上安装mysql数据库
sudo apt-get install mysql-server
2 更改mysql配置文件,cloudera manager需要使用innodb引擎
- 关闭刚刚安装好的mysql
sudo service mysql stop
- 将
/var/lib/mysql/ib_logfile0 和 /var/lib/mysql/ib_logfile1
这两个文件删除 修改 my.cnf文件,由于是使用sudo apt-get方式安装,所以目录为
/etc/mysql/my.cnf
,修改内容如下:[mysqld] transaction-isolation = READ-COMMITTED # Disabling symbolic-links is recommended to prevent assorted security risks; # to do so, uncomment this line: # symbolic-links = 0 key_buffer_size = 32M max_allowed_packet = 32M thread_stack = 256K thread_cache_size = 64 query_cache_limit = 8M query_cache_size = 64M query_cache_type = 1 max_connections = 550 #expire_logs_days = 10 #max_binlog_size = 100M #log_bin should be on a disk with enough free space. Replace '/var/lib/mysql/mysql_binary_log' with an appropriate path for your system #and chown the specified folder to the mysql user. log_bin=/var/lib/mysql/mysql_binary_log # For MySQL version 5.1.8 or later. For older versions, reference MySQL documentation for configuration help. binlog_format = mixed read_buffer_size = 2M read_rnd_buffer_size = 16M sort_buffer_size = 8M join_buffer_size = 8M # InnoDB settings innodb_file_per_table = 1 innodb_flush_log_at_trx_commit = 2 innodb_log_buffer_size = 64M innodb_buffer_pool_size = 4G innodb_thread_concurrency = 8 innodb_flush_method = O_DIRECT innodb_log_file_size = 512M [mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid sql_mode=STRICT_ALL_TABLES
重启mysql
sudo service mysql start
- 关闭刚刚安装好的mysql
3 安装 MySQL JDBC驱动
sudo apt-get install libmysql-java
4 创建cloudera manager需要的数据库,如activity monitor, Reports Manager
- 先进入mysql,
mysql -u root -p ubuntu
创建cloudera manager需要的数据库
create database database DEFAULT CHARACTER SET utf8;
grant all on database.* TO 'user'@'%' IDENTIFIED BY 'password';
Role Database User Password Activity Monitor amon root ubuntu Reports Manager rman root ubuntu Hive hive root ubuntu
- 先进入mysql,
cloudera manager server 安装
1 在ubuntu5新建 cloudera-manager.list文件到目录
/etc/apt/sources.list.d/
,文件内容如下:deb [arch=amd64] http://archive.cloudera.com/cm5/ubuntu/trusty/amd64/cm trusty-cm5 contrib deb-src http://archive.cloudera.com/cm5/ubuntu/trusty/amd64/cm trusty-cm5 contrib
2 更新ubuntu系统package索引
sudo apt-get update
3 安装cloudera manager server包
sudo apt-get install cloudera-manager-daemons cloudera-manager-server
4 在主节点即ubuntu5上初始化cloudera manager数据库,注意下面localhost与在界面连接数据库时有关,数据库主机名即代替localhost中的内容。
/usr/share/cmf/schema/scm_prepare_database.sh mysql cm -h**localhost** -uroot -pubuntu --scm-host localhost scm scm scm
5 所有节点创建cloudera-scm用户(cloudera manager自己生成的默认用户)
useradd --system --home=/run/cloudera-scm-server/ --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
6 准备parcels包,安装CDH。包放在/opt/cloudera/parcel-repo/目录中
- 相关文件如下:
- CDH-5.13.0-1.cdh5.13.0.p0.29-trusty.parcel
- CDH-5.13.0-1.cdh5.13.0.p0.29-trusty.parcel.sha1 (下载之后改名为CDH-5.13.0-1.cdh5.13.0.p0.29-trusty.parcel.sha)
- manifest.json
- 相关文件如下:
7 在ubuntu2和ubuntu4上clouderas-scm-agent启动之后再在主节点启动cloudera-scm-server,缓慢等待2-3分钟左右后打开
http:ubuntu5:7180
sudo service cloudera-scm-server start
接下来是服务器检查,可能会遇到以下问题:
Cloudera 建议将 /proc/sys/vm/swappiness 设置为 0。当前设置为 60。使用 sysctl 命令在运行时更改该设置并编辑 /etc/sysctl.conf 以在重启后保存该设置。您可以继续进行安装,但可能会遇到问题,Cloudera Manager 报告您的主机由于交换运行状况不佳。以下主机受到影响:
通过root用户输入命令 echo 0 > /proc/sys/vm/swappiness
即可解决。
web安装hive时需要拷贝mysql的jdbc
cp /share/cmf/lib/mysql-connector-java-5.1.44-bin.jar /opt/cloudera/parcels/CDH-5.13.0-1.cdh5.13.0.p0.29/lib/hive/lib/
出现在Web UI已分配卡死状况
- parcel-repo 的权限为 cloudera-scm和cloudera-scm
- parcels 的权限为root和root
cloudera manager client 安装
1 在ubuntu2和ubuntu4上新建 cloudera-manager.list文件到目录
/etc/apt/sources.list.d/
,文件内容如下:deb [arch=amd64] http://archive.cloudera.com/cm5/ubuntu/trusty/amd64/cm trusty-cm5 contrib deb-src http://archive.cloudera.com/cm5/ubuntu/trusty/amd64/cm trusty-cm5 contrib
2 更新ubuntu系统package索引
sudo apt-get update
3 安装cloudera manager client
sudo apt-get install cloudera-manager-agent cloudera-manager-daemons
4 修改client的配置文件,目录为
/etc/cloudera-scm-agent/config.ini
- 修改为
server_host=ubuntu5
- 修改为
5 启动cloudera-scm-agent
sudo service cloudera-scm-agent start
安装之后Test
sudo -u hdfs hadoop jar /opt/cloudera/parcels/CDH/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar pi 10 100
删除mysql
sudo apt-get autoremove --purge mysql-server
- 清理残留数据
dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P
卸载 cloudera manager
卸载cloudera manager server
停止 Cloudera Manager Server
sudo service cloudera-scm-server stop
卸载 Cloudera Manager Server
sudo apt-get remove cloudera-manager-server
卸载cloudera manager agent和相关管理软件
强制停止 Cloudera Manager client(和正常关闭相比,强制关闭强制关掉了surpervisord进程)
sudo /usr/sbin/service cloudera-scm-agent hard_stop
卸载 Cloudera Manager管理软件
sudo apt-get purge 'cloudera-manager-*'
运行
clean
命令udo apt-get clean
删除cloudera manager数据和用户数据(所有的agent主机)
Kill Cloudera Manager and Managed Processes(如上正常关机不需要此步)
for u in cloudera-scm flume hadoop hdfs hbase hive httpfs hue impala llama mapred oozie solr spark sqoop sqoop2 yarn zookeeper; do sudo kill $(ps -u $u -o pid=); done
Remove Cloudera Manager Data
sudo umount cm_processes sudo rm -Rf /usr/share/cmf /var/lib/cloudera* /var/cache/yum/cloudera* /var/log/cloudera* /var/run/cloudera*
Remove the Cloudera Manager Lock File
sudo rm /tmp/.scm_prepare_node.lock
Remove User Data
sudo rm -Rf /var/lib/flume-ng /var/lib/hadoop* /var/lib/hue /var/lib/navigator /var/lib/oozie /var/lib/solr /var/lib/sqoop* /var/lib/zookeeper sudo rm -Rf data_drive_path/dfs data_drive_path/mapred data_drive_path/yarn
卸载CDH相关组件
自己下载了什么就删除什么,详见官网步骤