**CDH下载地址:**http://archive.cloudera.com/cdh5/parcels/
**Cloudera Manage下载:**http://archive.cloudera.com/cm5/cm/5/
由于我们的操作系统为CentOS6.5,对应的版本是:
CDH-5.7.1-1.cdh5.7.1.p0.11-el6.parcel
CDH-5.7.1-1.cdh5.7.1.p0.11-el6.parcel.sha1
manifest.json
MySqlJDBC:https://dev.mysql.com/downloads/connector/j/
为避免权限问题所有操作在root用户下进行
[centos@localhost sysconfig]$ su root
Password:
[root@localhost sysconfig]#
2.1 需改主机名
[root@localhost sysconfig]# vim /etc/sysconfig/network
修改HOSTNAME的值
NETWORKING=yes
HOSTNAME=centos_master
目前修改机器名没有生效,需要重启机器来生效
[centos@localhost ~]$ hostname
localhost.localdomain
[centos@localhost ~]$ reboot
修改IP与主机对应的关系[root@centos_master centos]# vim /etc/hosts
192.168.91.128 centos_master
192.168.91.129 centos_salve1
192.168.91.130 centos_salve2
2.2打通SSH,设置ssh无密码登陆
执行一下命令,全部回车,生成无密码的密钥对:
[root@centos_master centos]# ssh-keygen -t rsa
将公钥添加到认证文件中:
[root@centos_master centos]# cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
修改~/.ssh/authorized_keys问文件的访问权限:
[root@centos_master ~]# chmod 600 ~/.ssh/authorized_keys
此时其他两节点的~/.ssh文件夹是空的,通过scp命令将改节点的认证文件拷贝到所有其他节点使得各节点能够相互访问。
如果scp 时输入密码后出现一下错误:
Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).
修改sshd_config[root@centos_master .ssh]# vim /etc/ssh/sshd_config
如果前面有# 号,将#号去掉,之后将yes修改为no。修改之后为:
PermitRootLogin no
UsePAM no
PasswordAuthentication no
权限设为yes:
RSAAuthentication yes
PubkeyAuthentication yes
修改之后重启sshd:[root@centos_master ~]# /usr/sbin/sshd
·
还有一种问题SELINUX的原因,修改SELINUX值为disabled
[root@centos_master sbin]# vi /etc/selinux/config
2.3 所有节点配置NTP服务
集群中所有主机必须保持时间同步,如果时间相差较大会引起各种问题。
用date查看三台机器的时间,如果一样,可以跳过此步。
Mysql安装包下载:https://dev.mysql.com/downloads/mysql/
找到与操作系统对应的32位或64位包下载。(一定对应上,否则后面处理还挺麻烦)
1.上传后解压
[centos@centos_master mysql]$ tar xzvf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz
将解压后的文件重命名为mysql,并移动到/usr/local/下(因为MySQL初始化文件中的路径写的是/usr/local/,这是它的默认路径)
2.添加用户和用户组
用切换到root用户,创建新的用户组和用户权限:
[root@centos_master local]# groupadd mysql
[root@centos_master local]# useradd -g mysql mysql
3.修改解压后文件的用户和所属组为mysql
[root@centos_master local]# chown -R mysql:mysql mysql-5.7.25-linux-glibc2.12-x86_64/
4 新建data目录
在mysql的安装目录下新建mysql_data目录。
[root@centos_master mysq]# ls
bin COPYING docs include lib man mysql_data README share support-files
[root@centos_master mysql]#
mysql目录下除了mysql_data文件,其余目录的所有者是root,只有mysql_data文件是mysql
5 初始化mysql
运行/usr/local/mysql/bin/mysql_install_db
[root@centos_master bin]# ./mysql_install_db
[WARNING] mysql_install_db is deprecated. Please consider switching to
mysqld --initialize
显示mysql_install_db已被废弃,要用 mysqld --initialize
[root@centos_master bin]# ./mysqld --initialize --datadir=mysql_data
会生成一个临时密码,至此数据库安装完毕
6.添加mysql服务和开机启动服务
把启动脚本放到开机初始化目录,添加开机启动:执行命令cp support-files/mysql.server /etc/init.d/mysql
修改启动脚本: /etc/init.d/mysql
修改项:
basedir=/usr/local/mysql/ datadir=/usr/local/mysql/mysql_data
启动mysql服务:service mysql start
[root@centos_master mysql]# service mysql start
Starting MySQL. SUCCESS!
[root@centos_master mysql]#
7.添加MySQL环境变量
[root@centos_master init.d]# vi /etc/profile
增加内容: export MYSQL_HOME=/usr/local/mysql/bin export
PATH= P A T H : PATH: PATH:MYSQL_HOME
生效环境变量:
[root@centos_master init.d]# source /etc/profile
8.修改MySQL的root用户密码
1.跳过MySQL的密码认证过程,方法如下,在/etc/my.cnf中
找到[mysqlid]后面添加一行“skip-grant-tables”用来跳过密码验证的过程
[mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock
user=mysql
skip-grant-tables
保存并退出
2.重启mysql
[root@centos_master init.d]# service mysql stop
Shutting down MySQL.. SUCCESS!
[root@centos_master init.d]# service mysql start
Starting MySQL.. SUCCESS!
[root@centos_master init.d]#
3.mysql命令进入mysql
[root@centos_master init.d]# mysql
4.用sql修改root密码
5.7版本的mysql user表中将password字段替换成authentication_string字段了。
mysql> update mysql.user set authentication_string='root' where user='root';
mysql> flush privileges; #立即生效
Query OK, 0 rows affected (0.00 sec)
mysql> quit;
将/etc/my.cnf中添加的东西删掉,然后重启Mysql。
1.创建安装目录:[centos@centos_master software]$ mkdir CDH
2.上传cloudera-manager-el6-cm5.3.3_x86_64.tar.gz到CDH,然后解压:
[centos@centos_master CDH]$ tar xzvf cloudera-manager-el6-cm5.3.3_x86_64.tar.gz
解压后得到两个文件夹cloudera 和 cm-5.3.3。
3.为Cloudera Manager5建立数据库:
上传mysqlJDBC并解压:
[centos@centos_master CDH]$ unzip mysql-connector-java-5.1.47.zip
将mysql-connector-java-5.1.47-bin.jar复制到 CDH/cm-5.3.3/share/cmf/lib/下:
[centos@centos_master mysql-connector-java-5.1.47]$ cp mysql-connector-java-5.1.47-bin.jar /home/centos/software/CDH/cm-5.3.3/share/cmf/lib/
4.主节点初始化CM5的数据库:
5.配置Agent
修改CDH/cm-5.3.3/etc/cloudera-scm-agent/config.ini的server_host为主节点的主机名。
[centos@centos_master CDH]vim cm-5.3.3/etc/cloudera-scm-agent/config.ini
同步Agent到其他节点,用scp复制cm-5.3.3文件夹到其他节点
[centos@centos_master CDH]$ scp -r cm-5.3.3 [email protected]:/home/centos/software/CDH_Agent
1.在CDH/cloudera下创建parcel-repo文件夹,然后上传将CDH5相关的Parcel包:
CDH-5.3.3-1.cdh5.3.3.p0.5-el6.parcel
CDH-5.3.3-1.cdh5.3.3.p0.5-el6.parcel.sha1 manifest.json
[centos@centos_master parcel-repo]$ ls
CDH-5.3.3-1.cdh5.3.3.p0.5-el6.parcel manifest.json
CDH-5.3.3-1.cdh5.3.3.p0.5-el6.parcel.sha1
[centos@centos_master parcel-repo]$
2.重命名CDH-5.3.3-1.cdh5.3.3.p0.5-el6.parcel.sha1为CDH-5.3.3-1.cdh5.3.3.p0.5-el6.parcel.sha,否则,系统会重新下载CDH-5.3.3-1.cdh5.3.3.p0.5-el6.parcel.sha1
[centos@centos_master parcel-repo]$ mv CDH-5.3.3-1.cdh5.3.3.p0.5-el6.parcel.sha1 CDH-5.3.3-1.cdh5.3.3.p0.5-el6.parcel.sha
[centos@centos_master parcel-repo]$
3.启动
启动服务端:CDH/cm-5.3.3/etc/init.d
[centos@centos_master init.d]$ ./cloudera-scm-server start
Starting cloudera-scm-server: [ OK ]
[centos@centos_master init.d]$
启动Agent服务:CDH//cm-5.3.3/etc/init.d/cloudera-scm-agent start