资讯专栏INFORMATION COLUMN

cdh5.8.0+mysql5.7.17完全离线安装

DandJ / 2115人阅读

摘要:一前期准备操作系统版本前期软件准备版本下载地址版本下载地址所有版本的下载地址版本下载地址所有版本的下载地址包版本下载地址注意因为操作版本是所以选择的和包的版本都是对应版本,如果

一、前期准备

1.操作系统版本

# cat /etc/redhat-release 

CentOS release 6.5 (Final)

# uname –a

Linux enc-bigdata05 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

2.前期软件准备
2-1. jdk版本: jdk-7u80-linux-x64.tar.gz

jdk1.7.80下载地址

2-2. mysql版本: mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz

mysql-5.7.17-x86_64下载地址
mysql所有版本的下载地址

2-3. cloudera manager版本: cloudera-manager-el6-cm5.8.0_x86_64.tar.gz

cloudera-manager-el6-cm5.8.0_x86_64.tar.gz下载地址
cloudera-manager5所有版本的下载地址

2-4. parecel包版本:

 CDH-5.8.0-1.cdh5.8.0.p0.42-el6.parcel
 CDH-5.8.0-1.cdh5.8.0.p0.42-el6.parcel.sha1
 manifest.json

CDH-5.8.0-1.cdh5.8.0.p0.42-el6.parcel下载地址

注意: 因为linux操作版本是centos6.5 x64,所以选择的cloudera manager和parecel包的版本都是对应el6版本,如果您的linux系统版本是centos7、ubuntu等等其他版本,更下载对应的cloudera manager和parecel版本进行安装;

cloudera官网关于CM5.8.0的安装说明


二、cm5.8.0安装前环境的配置

1.修改集群主机名hostname

# vim /etc/sysconfig/network

:HOSTNAME=enc-bigdata05
重启服务器shutdown -r now,是配置文件network生效
剩下的主机依次修改hostname, enc-bigdata0[1-6]


修改系统ip和hostname的映射: /etc/hosts

2-1.修改映射关系

# vim /etc/hosts  

2-2.将文件hosts复制发送到集群的每一个节点

# for a in {1..6} ; do scp /etc/hosts enc-bigdata0$a:/etc/hosts ; done

注意: 将localhost的本地映射关系删除,或者放在文件最后面
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

2-3. 检查是否集群每一个节点的hosts都已经修改过来了

# for a in {1..6} ; do ssh enc-bigdata0$a cat /etc/hosts ; done

3.设置ssh免密码登入,打通集群的每一个节点

3-1.创建公钥和私钥

# ssh-keygen -t rsa -P ""

注意: 在集群的每一台节点上运行上述命令,创建当前用户的公钥和私钥;
每一个用户都可以创建自己的ssh公钥和私钥,打通每一个节点,可以用其它用户(非root用户)来安装CDH5.8.0;

3-2.将每一个节点的公钥id_rsa.pub放入到认证文件中authorized_keys;

# for a in {1..6}; do ssh enc-bigdata0$a cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys; done

3-3.将认证文件authorized_keys复制发送到每一个节点上去: /root/.ssh/authorized_keys

# for a in {1..6}; do scp /root/.ssh/authorized_keys enc-bigdata0$a:/root/.ssh/authorized_keys ; done

4.安装jdk1.7.0_80

4-1.解压jdk到指定路径下

# tar -zxvf jdk-7u80-linux-x64.tar.gz -C  /usr/local/

4-2.将解压后的jdk1.7.0_80目录发送到每一台节点的指定目录下

# for a in {1..6}; scp -r /usr/local/jdk1.7.0_80/ enc-bigdata0$a:/usr/local/; done

4-3.修改配置文件 /etc/profile

# vim /etc/profile

#install jdk-7u80-linux-x64
export JAVA_HOME=/usr/local/jdk1.7.0_80
export JAVA_BIN=$JAVA_HOME/bin
export JAVA_LIB=$JAVA_HOME/lib
export CLASSPATH=.:$JAVA_LIB/tools.jar:$JAVA_LIB/dt.jar
export PATH=$JAVA_BIN:$PATH

4-4.将配置文件复制发送到每一个节点下

# for a in {1..6}; scp -r /etc/profile enc-bigdata0$a:/etc/profile; done
# source /etc/profile 
# for a in {1..6}; do ssh enc-bigdata0$a /usr/local/jdk1.7.0_80/bin/java -version ; done

5.修改系统参数

5-1.关闭防火墙

# service iptables status/stop
# for a in {1..6}; do ssh enc-bigdata0$a /etc/init.d/iptables status; done
# for a in {1..6}; do ssh enc-bigdata0$a /etc/init.d/iptables stop; done
# for a in {1..6}; do ssh enc-bigdata0$a chkconfig iptables off; done
# for a in {1..6}; do ssh enc-bigdata0$a chkconfig iptables --list; done

5-2.关闭SELINUX

# setenforce 0 (临时生效)
# vim /etc/selinux/config (永久生效)

: SELINUX=disabled

# for a in {1..6}; scp /etc/selinux/config enc-bigdata0$a: /etc/selinux/config; done

5-3.修改swappiness

# echo "vm.swappiness=0" >> /etc/sysctl.conf (永久生效)
# echo 0 > /proc/sys/vm/swappiness (临时生效)
# for a in {1..6}; do ssh enc-bigdata0$a echo "vm.swappiness=0" >> /etc/sysctl.conf; done

5-4.编辑/etc/security/limits.conf

# vim /etc/security/limits.conf

soft nofile 65535

hard nofile 65535

# for a in {1..6}; scp /etc/security/limits.conf enc-bigdata0$a: /etc/security/limits.conf; done

5-5.修改/etc/rc.local (开机运行的命令)

#vim /etc/rc.local (永久生效)

echo never > /sys/kernel/mm/transparent_hugepage/defrag
临时生效

# for a in {1..6}; do ssh enc-bigdata0$a echo never > /sys/kernel/mm/transparent_hugepage/defrag ; done
三、安装mysql5.7.17

检查之前是否安装过mysql,删除之前安装的mysql

# rpm -qa | grep mysql

mysql-libs-5.1.71-1.el6.x86_64

# rpm -e mysql-libs-5.1.71-1.el6.x86_64 --nodeps
# find / -name mysql
# rm -rf …

注意:卸载不了就强制卸载,--nodeps --force

新增用户,指定家目录,指定登陆级别

# usedel mysql
# groupdel mysql
# mkdir /usr/local/mysql
# useradd -d /usr/local/mysql/ -s /sbin/nologin -m mysql 
# chown -R mysql:mysql /usr/local/mysql
# chmod 755 /usr/local/mysql

解压到制定路径下: /usr/local/mysql

# tar -zxvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz -C /tmp/
# mv /tmp/mysql-5.7.17-linux-glibc2.5-x86_64/* /usr/local/mysql/  

说明:将解压后的安装包里的文件拷贝到mysql中

# mkdir /usr/local/mysql/data  

说明:创建数据存放路径

# chown -R mysql:mysql /usr/local/mysql/

4.安装和初始化

# /usr/local/mysql/bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/

# cp -a /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
# cp -a /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
# /usr/local/mysql/bin/mysqld_safe --user=mysql &  

5.启动mysqld

# /etc/init.d/mysqld status 
# /etc/init.d/mysqld restart
# chkconfig mysqld on  
# chkconfig mysqld --list

添加快捷方式:ln -s /usr/local/mysql/bin/mysql /usr/bin/

6.初始密码
mysql5.7会在root用户家目录下生成一个初始化密码。

# cat /root/.mysql_secret   

Password set for user "root@localhost" at 2016-06-01 15:23:25 FhCmc,k50X/y

# mysql -uroot -p  (输入初始化密码)

//修改密码

mysql> SET PASSWORD = PASSWORD("123qwe");  
mysql> flush privileges;  

添加远程访问
第一种方法: 改表

mysql> use mysql;   
mysql> update user set host = "%" where user = "root";  

第二种方法: 授权

mysql>GRANT ALL PRIVILEGES ON *.* TO "root"@"%";
mysql>FLUSH PRIVILEGES 

问题: 忘记初始化密码

# service mysqld stop  
# vim /etc/my.cnf 在末尾添加 skip-grant-tables
# service mysqld start
# mysql -uroot -p (可以免密码登入)
mysql> set password for "root"@"localhost"=password("new password");
mysql>flush privileges;

配置/etc/my.cnf

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8 

[mysqld]

#设置3306端口

port = 3306

# 设置mysql的安装目录

basedir=/usr/local/mysql

# 设置mysql数据库的数据的存放目录

datadir=/usr/local/mysql/data
tmpdir=/usr/local/mysql/tmp

# 允许最大连接数

max_connections=2000

#服务端使用的字符集默认为8比特编码的latin1字符集

character-set-server=utf8

# 创建新表时将使用的默认存储引擎

default-storage-engine=INNODB

#设置不区分大小写(0:大小写敏感;1:大小写不敏感)

lower_case_table_names=1

#安装模式:update mysql.user set authentication_string=password("123qwe") where user="root";
#skip-grant-tables #忘记初始化密码

创建数据库

mysql>create database amon default charset utf8 collate utf8_general_ci; #activity monitor 

mysql>create database hive default charset utf8 collate utf8_general_ci;  #hive

mysql>create database oozie default charset utf8 collate utf8_general_ci; #oozie

mysql>create database hue default charset utf8 collate utf8_general_ci;  #hue 

新建用户(也可以延用root用户)

mysql>create user "admin"@"%"identified by "Admin@123";

mysql>grant all privileges on *.* to "admin"@"%";

mysql>flush privileges;


四、安装cloudera manager

1.解压cloudera-manager-el6-cm5.8.0_x86_64.tar.gz到指定路径:/opt

# tar -zxvf cloudera-manager-el6-cm5.8.0_x86_64.tar.gz -C /opt/

# for a in {1..6}; do scp -r /opt/cm-5.8.0/ enc-bigdata0$a:/opt/;done

2.修改配置文件

# vim /opt/cm-5.8.0/etc/cloudera-scm-agent/config.ini

server_host=enc-bigdata05

# for a in {1..6}; do scp -r /opt/cm-5.8.0/etc/cloudera-scm-agent/config.ini enc-bigdata0$a:/opt/cm-5.8.0/etc/cloudera-scm-agent/config.ini ; done

3.创建CDH内置数据库scm

# mv mysql-connector-java-5.1.40-bin.jar /opt/cm-5.7.0/share/cmf/lib
# /opt/cm-5.7.1/share/cmf/schemascm_prepare_database.sh mysql -hlocalhost -uroot –pAdmin@123 --scm-host localhost scm scm scm

scm_prepare_database.sh 数据库类型 服务器ip username password -scm-host [cloudera manager server所在服务器] scm scm scm;

4.将parecel包复制到cdh-server的指定目录下,修改CDH-5.8.0-1.cdh5.8.0.p0.42-el6.parcel.sha1文件名

# cp CDH-5.8.0-1.cdh5.8.0.p0.42-el6.parcel /opt/cloudera/parcel-repo/
# cp CDH-5.8.0-1.cdh5.8.0.p0.42-el6.parcel.sha1 /opt/cloudera/parcel-repo/
# cp manifest.json/opt/cloudera/parcel-repo/
# mv /opt/cloudera/parcel-repo/CDH-5.8.0-1.cdh5.8.0.p0.42-el6.parcel.sha1 /opt/cloudera/parcel-repo/CDH-5.8.0-1.cdh5.8.0.p0.42-el6.parcel.sha

4.启动cloudera-scm-server

# /opt/cm-5.8.0/etc/init.d/cloudera-scm-server start/status/stop

5.启动cloudera-scm-agent

# for a in {1..6}; do ssh enc-bigdata0$a /opt/cm-5.8.0/etc/init.d/cloudera-scm-agent start; done

6.问题:cloudera-scm-agent 启动失败: Unable to create the pidfile

原因: 无法创建 /opt/cm-5.8.0/run/cloudera-scm-agent
解决办法:

     # mkdir /opt/cm-5.8.0/run/cloudera-scm-agent
     # chown -R cloudera-scm:cloudera-scm /opt/cm-5.8.0/run/cloudera-scm-agent

7.进入网址: http://IP:7180/ (配置CDH5.8.0)


enc-bigdata0[1-6].enc.cn ##点击模式

注意: 修改jdk主目录很重要,以防止集群主机无法检测到jdk;





注意: 要保证所有检查都成功,以防止后面报错


注意 : hive的元数据库如果是安装在mysql中的话,需要将相应数据库驱动拷贝到hive家目录下的lib;

# mv mysql-connector-java-5.1.40-bin.jar /opt/cloudera/parcels/CDH-5.6.0-1.cdh5.6.0.p0.45/lib/hive/lib

将相应的数据库驱动拷贝到对应的服务家目录下,以防止数据库连接失败;

## 五、问题 ##

关于namenode的内存问题,namenode的内存如果不够的话,会导致namenode服务进程死掉
问题描述:can"t open /opt/cm-5.7.0/run/cloudera-scm-agent/process/1033-hdfs-NAMENODE/supervisord.conf , Permission deny

解决办法:增加内存

无法检测到jdk存在
解决办法:设置JDK主目录

oozie web 页面不能显示
解决办法:上传ext-2.2.zip到指定路径:/var/lib/oozie

六、总结

本篇章仅供参考,具体的请以官方文档为准,谢谢!!

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/9893.html

相关文章

  • Windows之MySQL安装教程

    摘要:安装说明是一个关系型数据库管理系统,由瑞典公司开发,目前属于旗下产品。是最流行的关系型数据库管理系统之一,在应用方面,是最好的,关系数据库管理系统应用软件。安装教程打开安装包。 MySQL安装说明 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最...

    Nino 评论0 收藏0
  • mysql5.7主从配置

    摘要:安装在里下载下载后再安装源安装好后开始用安装修改默认密码修改,在小节下添加一行这一行配置让启动时不对密码进行验证重启服务使用用户登录到更新密码开启远程操作退出,编辑文件,删除的内容修改密码策略通过配置文件设置密码策略 安装mysql5.7.17在CentOS 7里下载 wget http://repo.mysql.com/mysql57... 下载后再安装源 rpm -ivh my...

    cucumber 评论0 收藏0
  • Windows Server 2016 + SQL Server 2012部署Testlink 1.

    摘要:关于的安装与部署网上有资料,这里主要是把部署过程中的几个问题汇总一下。 关于Testlink的安装与部署网上有资料,这里主要是把部署过程中的几个问题汇总一下。 版本信息 操作系统:Windows Server 2016(阿里云服务器); Testlink:1.9.16(点击下载,提取密码:12qt 官方下载); JDK:1.8.0_131(点击下载,提取密码:xnou); PHP 7...

    Tecode 评论0 收藏0
  • Phoenix部署Web项目在Tomcat上报错:jar not loaded.

    摘要:解决办法为将里的文件删除了两个。报错信息如下思路看到这个最多的说法就是包冲突,主要是看日志的,意思是令人厌恶的类,这里面提示什么,我们就在的包里删除了什么。原因应该是已经有这些文件。 解决办法为:将phoenix-4.8.0-cdh5.8.0-client.jar里的文件删除了两个。 showImg(https://segmentfault.com/img/bV3F8h?w=1335&...

    myeveryheart 评论0 收藏0
  • 如何入门 MySQL

    摘要:是最流行的关系型数据库管理系统之一,在应用方面,是最好的,关系数据库管理系统应用软件之一。是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。 前言: 关于如何入门MySQL,后台有好多同学咨询我,可能部分读者刚开始学习MySQL,我前面发的文章对部分同学来说暂时接触不到。原本写技术文章的目的是记录自己的工作...

    Rocture 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<