日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

CDH集群搭建(CDH 6.0.1)

發(fā)布時間:2024/3/13 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CDH集群搭建(CDH 6.0.1) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

CDH集群安裝步驟

  • 參考文章
  • 安裝前準(zhǔn)備
    • 配置網(wǎng)絡(luò)名稱
    • 禁用防火墻
    • 設(shè)置SELinux模式
    • 啟用NTP服務(wù)
    • 配置集群ssh免密登錄
  • 安裝
    • 安裝jdk
    • 安裝服務(wù)和配置TLS
      • 安裝服務(wù)
      • 配置TLS
    • 安裝并配置MySQL
      • 安裝MySQL
      • 配置MySQL
    • 初始化數(shù)據(jù)庫,啟動服務(wù)
      • 初始化數(shù)據(jù)庫
      • 啟動服務(wù)

主要記錄CDH安裝過程,以及遇到的問題和解決方案。 未完待續(xù)

參考文章

官網(wǎng):https://docs.cloudera.com/documentation/enterprise/6/latest/topics/introduction.html
他人博客:
https://blog.csdn.net/u010003835/article/details/85007946

安裝前準(zhǔn)備

配置網(wǎng)絡(luò)名稱

配置集群中每臺主機(jī)(節(jié)點(diǎn))的網(wǎng)絡(luò)名稱

hostnamectl set-hostname ***.***.com

然后在 /etc/hosts 文件中配置相關(guān)機(jī)器的域名 和 域名簡寫

x.x.x.x cdhNode1.example.com cdhnode1 x.x.x.x cdhNode2.example.com cdhnode2 x.x.x.x cdhNode3.example.com cdhnode3

我的配置如下:

并且測試各個主機(jī)之間能夠互通
配置 /etc/sysconfig/network

HOSTNAME=cdhNode1.example.com

驗(yàn)證配置
uname -a 需要和 hostname 得到一致的域名

禁用防火墻

防火墻規(guī)則保存

iptables-save > /root/firewall.rule

禁用防火墻命令

查看防火墻狀態(tài) firewall-cmd --state 停止防火墻 systemctl stop firewalld.service 禁止防火墻開機(jī)啟動 systemctl disable firewalld.service 開啟防火墻開機(jī)啟動 systemctl enable firewalld.service

設(shè)置SELinux模式

集群中每臺主機(jī)都要設(shè)置
1、查看SELinux狀態(tài)

getenforce

2、編輯 /etc / selinux / config 文件,將SELINUX=enforcing改為SELINUX=disabled或者SELINUX=permissive

vi /etc / selinux / config

3、立即禁用SELinux

setenforce 0

啟用NTP服務(wù)

參考:https://blog.csdn.net/u010003835/article/details/84962098

配置集群ssh免密登錄

參考:https://blog.csdn.net/u010003835/article/details/85006786
(暫時未做)

安裝

安裝jdk

參考:https://blog.csdn.net/weixin_42266606/article/details/80863781
說明:在CDH集群中的每臺主機(jī)上操作此過程
注意:CDH官方推薦:使用JDK1.8u181
我采用的是手動安裝方式:
我一開始安裝的時JDK1.8u241,在啟動時,會報一下錯誤


官網(wǎng)說明:

重新安裝CDH官網(wǎng)推薦的jdk版本:https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html

另外,jdk解壓路徑要在**/usr/java/**中,如果沒有java目錄,則新建一個Java目錄。

l## 配置Repo
Cloudera已為用戶準(zhǔn)備了專用的程序倉庫,需要將其下載下來
step1:

sudo wget https://archive.cloudera.com/cm6/6.0.1/redhat7/yum/cloudera-manager.repo -P /etc/yum.repos.d/

step2:
Import the repository signing GPG key:

sudo rpm --import https://archive.cloudera.com/cm6/6.0.1/redhat7/yum/RPM-GPG-KEY-cloudera

說明:在CDH集群中的每臺主機(jī)上操作此過程

安裝服務(wù)和配置TLS

安裝服務(wù)

在集群中安裝cloudera-manager-daemon、cloudera-manager-agent和cloudera-manager-server服務(wù);
其中cloudera-manager-daemon、cloudera-manager-agent需要在每臺主機(jī)上安裝,cloudera-manager-server只需要在集群中作為管理節(jié)點(diǎn)的機(jī)器上安裝。
采用yum方式安裝:
安裝命令:

先查看能否找到這些包: yum search cloudera-manager-daemons cloudera-manager-agent cloudera-manager-server主節(jié)點(diǎn): yum install cloudera-manager-daemons cloudera-manager-agent cloudera-manager-server其他節(jié)點(diǎn): yum install cloudera-manager-daemons cloudera-manager-agent

設(shè)置服務(wù)開機(jī)自啟

主節(jié)點(diǎn): sudo systemctl enable cloudera-scm-agent sudo systemctl enable cloudera-scm-server其他節(jié)點(diǎn): sudo systemctl enable cloudera-scm-agent啟動服務(wù) systemctl start cloudera-scm-agent systemctl start cloudera-scm-server關(guān)閉服務(wù) systemctl stop cloudera-scm-agent systemctl stop cloudera-scm-server查看服務(wù)狀態(tài) systemctl status cloudera-scm-agent systemctl status cloudera-scm-server

注:一定要在網(wǎng)絡(luò)好的地方下載!!!!
官網(wǎng)說明,若要使用oracle數(shù)據(jù)庫,需要修改**/etc/default/cloudera-scm-serverexport CMF_JAVA_OPTS**開頭行中的-Xmx2G改為-Xmx4G

配置TLS

暫時未配置
參考官網(wǎng):https://docs.cloudera.com/documentation/enterprise/6/latest/topics/install_cm_server.html

安裝并配置MySQL

只需要在主節(jié)點(diǎn)安裝(NameNode所在節(jié)點(diǎn))、

安裝MySQL

安裝命令:

wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpmsudo rpm -ivh mysql-community-release-el7-5.noarch.rpmsudo yum update 該步驟耗時較長 20-30 min,并不必要sudo yum install mysql-serversudo systemctl start mysqld

配置MySQL

1、如果MySQL服務(wù)啟動了,先關(guān)閉服務(wù)

sudo systemctl stop mysqld

2、將/var/lib/mysql目錄下的ib_logfile0和ib_logfile1文件移出到/var/lib/mysql之外的備份位置,我是備份到了/var/lib/mysql-back/目錄下(自己新建目錄)。

3、修改/etc/my.cnf文件
這里采用了官網(wǎng)推薦的設(shè)置,修改前記得先備份。

[mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock transaction-isolation = READ-COMMITTED # Disabling symbolic-links is recommended to prevent assorted security risks; # to do so, uncomment this line: symbolic-links = 0key_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 = 1max_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#In later versions of MySQL, if you enable the binary log and do not set #a server_id, MySQL will not start. The server_id must be unique within #the replicating group. server_id=1binlog_format = mixedread_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.pidsql_mode=STRICT_ALL_TABLES

4、設(shè)置MySQL服務(wù)開機(jī)自啟動

sudo systemctl enable mysqld

5、開啟MySQL服務(wù)

sudo systemctl start mysqld

6、設(shè)置MySQLroot密碼和其他安全性設(shè)置
我給root設(shè)置的密碼為:123456

sudo /usr/bin/mysql_secure_installation

剛安裝的MySQL,root密碼為空,所以系統(tǒng)提示輸入密碼時,直接按Enter鍵,剩下的按下面輸入操作。

[...] Enter current password for root (enter for none): OK, successfully used password, moving on... [...] Set root password? [Y/n] Y New password: Re-enter new password: Remove anonymous users? [Y/n] Y [...] Disallow root login remotely? [Y/n] N [...] Remove test database and access to it [Y/n] Y [...] Reload privilege tables now? [Y/n] Y All done!

7、配置集群中部署的每個服務(wù)創(chuàng)建數(shù)據(jù)庫
給 mysql 增加必要的用戶,用于其他組件 將 mysql 作為源數(shù)據(jù)庫。

給每個數(shù)據(jù)庫設(shè)置密碼:123456,并使用utf8字符集

以root用戶登錄MySQL mysql -u root -p建立數(shù)據(jù)庫腳本 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 CHARSET utf8 COLLATE utf8_general_ci;GRANT ALL ON scm.* TO 'scm'@'%' IDENTIFIED BY '123456'; GRANT ALL ON amon.* TO 'amon'@'%' IDENTIFIED BY '123456'; GRANT ALL ON rman.* TO 'rman'@'%' IDENTIFIED BY '123456'; GRANT ALL ON hue.* TO 'hue'@'%' IDENTIFIED BY '123456'; GRANT ALL ON metastore.* TO 'metastore'@'%' IDENTIFIED BY '123456'; GRANT ALL ON sentry.* TO 'sentry'@'%' IDENTIFIED BY '123456'; GRANT ALL ON nav.* TO 'nav'@'%' IDENTIFIED BY '123456'; GRANT ALL ON navms.* TO 'navms'@'%' IDENTIFIED BY '123456'; GRANT ALL ON oozie.* TO 'oozie'@'%' IDENTIFIED BY '123456'; GRANT ALL ON hive .* TO 'hive '@'%' IDENTIFIED BY '123456';

8、安裝MySQL JDBC驅(qū)動程序

下載:mysql-connector-java-8.0.18.tar

將mysql-connector-java-8.0.18.tar解壓到

tar zxvf mysql-connector-java-5.1.46.tar.gz

將JDBC驅(qū)動復(fù)制到**/usr/share/java/**目錄下,沒有該目錄,需先新建

sudo mkdir -p /usr/share/java/ cd mysql-connector-java-5.1.46 sudo cp mysql-connector-java-5.1.46-bin.jar /usr/share/java/mysql-connector-java.jar

這一步遇到的問題:

官網(wǎng)推薦版本為:mysql-connector-java-5.1.46.tar.gz
我第一次安裝了mysql-connector-java-5.1.46版本,導(dǎo)致在執(zhí)行初始化數(shù)據(jù)庫并啟動數(shù)據(jù)庫命令時,報一下錯誤:

[root@master01 ~]# /usr/share/cmf/schema/scm_prepare_database.sh -h xxx.xxx.xxx.xxx mysql cm cm root123 JAVA_HOME=/usr/java/jdk1.8.0_171-amd64 Verifying that we can write to /etc/cloudera-scm-server Creating SCM configuration file in /etc/cloudera-scm-server Executing: /usr/java/jdk1.8.0_171-amd64/bin/java -cp /usr/share/java/mysql-connector-java.jar:/usr/share/java/oracle-connector-java.jar:/usr/share/java/postgresql-connector-java.jar:/usr/share/cmf/schema/../lib/* com.cloudera.enterprise.dbutil.DbCommandExecutor /etc/cloudera-scm-server/db.properties com.cloudera.cmf.db. [ main] DbCommandExecutor INFO Unable to find JDBC driver for database type: MySQL [ main] DbCommandExecutor ERROR JDBC Driver com.mysql.jdbc.Driver not found. [ main] DbCommandExecutor ERROR Exiting with exit code 3 --> Error 3, giving up (use --force if you wish to ignore the error)

解決方案一:
? ? ? ? 對mysql-connector-java.jar文件賦予777權(quán)限,–無效。

解決方案二:
? ? ? ? 將mysql-connector-java-5.1.46源文件復(fù)制到mysql-connector-java.jar同目錄下(/usr/share/java/)并賦予777權(quán)限。 --無效.。

解決方案三:
? ? ? ? 在jdk配置文件中增加mysql-connector-java.jar所在路徑。–無效。
解決方案四:導(dǎo)入與MySQL版本對應(yīng)的JDBC驅(qū)動包。
MySQL官網(wǎng)給的對應(yīng)關(guān)系,具體參考官網(wǎng)文檔說明。

我安裝的MySQL版本為:

根據(jù)上方的對應(yīng)表,mysql-connector-java-5.1.46應(yīng)該支持MySQL 5.6版本,理應(yīng)沒有問題。但是實(shí)際中還是報錯。
于是我就換成mysql-connector-java-8.0.18版本,解決問題。

CDH官網(wǎng)給的說明是:
MySQL 5.6需要5.1驅(qū)動程序版本5.1.26或更高版本。但實(shí)際中,5.1.26版本不可行,所以建議直接用最新版本。

初始化數(shù)據(jù)庫,啟動服務(wù)

初始化數(shù)據(jù)庫

sudo /opt/cloudera/cm/schema/scm_prepare_database.sh mysql scm scm或sudo /opt/cloudera/cm/schema/scm_prepare_database.sh mysql -h db01.example.com --scm-host cm01.example.com scm scm

啟動服務(wù)

啟動服務(wù): sudo systemctl start cloudera-scm-server重置啟動失敗的服務(wù) systemctl reset-failed cloudera-scm-server.service查看服務(wù)啟動日志: sudo tail -f /var/log/cloudera-scm-server/cloudera-scm-server.log

1、啟動完成,訪問服務(wù),ip為主節(jié)點(diǎn)ip,http://192.168.2.2:7180/

2、登錄到Cloudera Manager管理控制臺,默認(rèn)用戶名和密碼為admin
? ? ? ? 首先是接受協(xié)議和選擇版本頁面

? ? ? ? 完成上面步驟之后,進(jìn)入到安裝向?qū)Ы缑妗?br />

總結(jié)

以上是生活随笔為你收集整理的CDH集群搭建(CDH 6.0.1)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。