标签:sch 浏览器 yar 产生 random 开关 理解 cal chown
一、软件介绍CDH(Cloudera Distribution of Apache Hadoop) 是 Apache Hadoop 和相关项目中最完整、经过测试和流行的发行版。CDH 提供 Hadoop 的核心元素,可伸缩存储和可扩展分布式计算,以及基于 web 的用户界面和关键的企业功能。CDH 是 apache 授权的开放源码,是惟一提供统一批处理、交互式 SQL 和交互式搜索以及基于角色的访问控制的 Hadoop 解决方案。
关于更多 CDH 的介绍,请参见官方文档:
Cloudera Manager 是用于管理 CDH 集群的端到端应用程序。Cloudera Manager 为企业部署设定了标准,为 CDH 集群的每个部分提供粒度可见性和控制权,授权运营商提高性能、提高服务质量、增加遵从性和降低管理成本。使用 Cloudera Manager,您可以轻松地部署和集中操作完整的 CDH 堆栈和其他托管服务。应用程序使安装过程自动化,将部署时间从几周减少到几分钟; 为您提供集群范围内运行的主机和服务的实时视图; 提供一个单一的中央控制台,用于跨集群执行配置更改; 并整合了各种报告和诊断工具,以帮助您优化性能和利用率。
要有效地使用 Cloudera Manager,您应该首先理解其术语。这些术语之间的关系如下所示,其定义如下:
如下图所示,Cloudera Manager 的核心是 Cloudera Manager Server。Server 托管管理控制台 Web 服务器和应用程序逻辑,并负责安装软件、配置、启动和停止服务,以及管理服务运行所在的集群。
Cloudera Manager Server 与其他几个组件一起工作:
Cloudera Manager 的主要功能是安装和升级 CDH 和其他托管服务。Cloudera Manager 支持两种软件发布格式:package 和 parcel。
package 是一种二进制分发格式,其中包含已编译的代码和元信息,如包描述、版本和依赖关系。包管理系统评估这些元信息,以允许包搜索、升级到更新的版本,并确保包的所有依赖关系都得到满足。Cloudera Manager 为每个受支持的操作系统使用本地系统包管理器。
Parcel 是包含程序文件以及 Cloudera Manager 使用的附加元数据的二进制发布格式。
关于 Cloudera Manager 更多功能,请查看官方文档:
https://docs.cloudera.com/documentation/enterprise/latest/topics/cm_intro_primer.html
类目 | 版本 | 下载地址 |
---|---|---|
操作系统 | CentOS Linux release 7.8.2003 (Core) | 阿里云镜像 |
数据库 | MYSQL 5.7 | 现有数据库 |
JDK | jdk-8u181-linux-x64.rpm | Oracle 官网下载 |
Cloudera Manager | Cloudera Manager 6.3.1 | 官方仓库 |
CDH | CDH 6.3.2 | parcels安装 |
四台机器我是在腾讯云创建的,当然你也可以使用自己的虚拟机。
名称 | IP | CM管理软件 |
---|---|---|
namenode01.wzlinux.com | 172.17.16.5 | Cloudera Manager Server & Agent |
datanode01.wzlinux.com | 172.17.16.6 | Cloudera Manager Agent |
datanode02.wzlinux.com | 172.17.16.10 | Cloudera Manager Agent |
datanode03.wzlinux.com | 172.17.16.12 | Cloudera Manager Agent |
因为 Cloudera Manager 会产生较多的监控数据和日志,需要给予系统盘充足的空间,存储的位置主要有以下:
/var/lib/cloudera-scm-server/
/var/lib/cloudera-service-monitor/
/var/lib/cloudera-host-monitor/
/var/lib/cloudera-scm-eventserver/
/var/lib/cloudera-scm-headlamp/
使用下面命令修改/etc/hostname
的主机名,重新连接一下机器就可以生效了。
sudo hostnamectl set-hostname namenode01.wzlinux.com
编辑 /etc/hosts
,增加如下:
172.17.16.5 namenode01.wzlinux.com namenode01
172.17.16.6 datanode01.wzlinux.com datanode01
172.17.16.10 datanode02.wzlinux.com datanode02
172.17.16.12 datanode03.wzlinux.com datanode03
sudo iptables-save > ~/firewall.rules
sudo systemctl disable firewalld
sudo systemctl stop firewalld
sed -i ‘s#SELINUX=enforcing#SELINUX=disabled#g‘ /etc/selinux/config
setenforce 0
我使用的云服务,时间基本已经很准了。
echo "$((RANDOM%60)) $((RANDOM%24)) * * * /usr/sbin/ntpdate time1.aliyun.com" >> /var/spool/cron/root
这里使用 Cloudera 来维护的仓库,当然你也可以创建本地仓库。我们使用 Cloudera Manager 6.3.1。
wget https://archive.cloudera.com/cm6/6.3.1/redhat7/yum/cloudera-manager.repo -P /etc/yum.repos.d/
rpm --import https://archive.cloudera.com/cm6/6.3.1/redhat7/yum/RPM-GPG-KEY-cloudera
对于 JDK,您可以使用 Cloudera Manager 安装由 Cloudera 提供的 Oracle JDK 版本,也可以直接从 Oracle 安装不同的 Oracle JDK,或者直接安装 OpenJDK。
/usr/java/JDK-version
。如果使用 Cloudera Manager 提供的 JDK,可以直接执行下面的命令。
sudo yum install oracle-j2sdk1.8
因为在线安装会比较慢,在这里,我们使用 Oracle 维护的 JDK,可以去 Oracle 官网进行下载。
rpm -ivh jdk-8u181-linux-x64.rpm
使用仓库安装会比较慢,建议先把需要的 rpm下载下来,进行离线安装或者建私有仓库,主要下面的三个软件包:
cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm
cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm
cloudera-manager-server-6.3.1-1466458.el7.x86_64.rpm
cloudera-manager-daemons
是 server
和 agent
必须安装的。
建议离线安装,把 rpm 包下载到服务器上面,传到其他节点一份,再本地安装,速度会快很多。
yum localinstall cloudera-manager-*.rpm -y
yum localinstall cloudera-manager-daemons-*.rpm cloudera-manager-agent-*.rpm -y
Cloudera Manager 使用各种数据库和数据存储来存储关于 Cloudera Manager 配置的信息,以及诸如系统健康状况或任务进度等信息。
Cloudera 建议在不同的主机上安装数据库,而不是在服务上。将数据库与服务分离有助于将潜在影响与这两者中的故障或资源争用隔离开来。它还可以简化具有专用数据库管理员的组织的管理。
您可以使用您自己的 PostgreSQL、 MariaDB、 MySQL 或 Oracle 数据库来访问 Cloudera Manager Server 和其他使用数据库的服务。
以下组件都需要数据库: Cloudera Manager Server,Oozie Server,Sqoop Server,Activity Monitor,Reports Manager,Hive metabstore Server,Hue Server,Sentry Server,Cloudera Navigator Audit Server,and Cloudera Navigator Metadata Server。
我这里使用已经创建好的数据库 MySQL 5.7,有关数据库的安装,可以参加官方文档:
https://docs.cloudera.com/documentation/enterprise/latest/topics/cm_ig_mysql.html#cmig_topic_5_5
我们需要为主机安装 MySQL JDBC Driver,Cloudera 建议将所有需要数据库的角色合并到有限的主机上,并在这些主机上安装驱动程序。建议在相同的主机上查找所有这些角色,但不是必需的。确保在每个运行访问数据库角色的主机上安装 JDBC 驱动程序。为了简便,我们再所有节点上面安装 MySQL JDBC Driver。
wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.46.tar.gz
tar xf mysql-connector-java-5.1.46.tar.gz
mkdir -p /usr/share/java/
cd mysql-connector-java-5.1.46
cp mysql-connector-java-5.1.46-bin.jar /usr/share/java/mysql-connector-java.jar
使用root登陆数据库,创建以下数据库和账号。
Service | Database | User |
---|---|---|
Cloudera Manager Server | scm | scm |
Activity Monitor | amon | amon |
Reports Manager | rman | rman |
Hue | hue | hue |
Hive Metastore Server | metastore | hive |
Sentry Server | sentry | sentry |
Cloudera Navigator Audit Server | nav | nav |
Cloudera Navigator Metadata Server | navms | navms |
Oozie | oozie | oozie |
使用下面的模板语句创建各个数据库。
CREATE DATABASE <database> DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON <database>.* TO ‘<user>‘@‘%‘ IDENTIFIED BY ‘<password>‘;
我写下我这里的建库语句,仅供参考:
CREATE DATABASE scm DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON scm.* TO ‘scm‘@‘%‘ IDENTIFIED BY ‘wzlinux‘;
CREATE DATABASE amon DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON amon.* TO ‘amon‘@‘%‘ IDENTIFIED BY ‘wzlinux‘;
CREATE DATABASE rman DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON rman.* TO ‘rman‘@‘%‘ IDENTIFIED BY ‘wzlinux‘;
CREATE DATABASE hue DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON hue.* TO ‘hue‘@‘%‘ IDENTIFIED BY ‘wzlinux‘;
CREATE DATABASE metastore DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON metastore.* TO ‘hive‘@‘%‘ IDENTIFIED BY ‘wzlinux‘;
CREATE DATABASE sentry DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON sentry.* TO ‘sentry‘@‘%‘ IDENTIFIED BY ‘wzlinux‘;
CREATE DATABASE nav DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON nav.* TO ‘nav‘@‘%‘ IDENTIFIED BY ‘wzlinux‘;
CREATE DATABASE navms DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON navms.* TO ‘navms‘@‘%‘ IDENTIFIED BY ‘wzlinux‘;
CREATE DATABASE oozie DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON oozie.* TO ‘oozie‘@‘%‘ IDENTIFIED BY ‘wzlinux‘;
Cloudera Manager Server 包含一个脚本,可以为自己创建和配置数据库。该脚本可以:
数据库的地址为db01.wzlinux.com
,如果是本机可以取消。Cloudera Manager Server 主机地址为namenode01.wzlinux.com
。
sudo /opt/cloudera/cm/schema/scm_prepare_database.sh mysql -h db01.wzlinux.com --scm-host namenode01.wzlinux.com scm scm
输入数据库密码就创建好了。
Enter SCM password:
JAVA_HOME=/usr/java/jdk1.8.0_181-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_181-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:/opt/cloudera/cm/schema/../lib/* com.cloudera.enterprise.dbutil.DbCommandExecutor /etc/cloudera-scm-server/db.properties com.cloudera.cmf.db.
[ main] DbCommandExecutor INFO Successfully connected to database.
All done, your SCM database is configured correctly!
设置好 Cloudera Manager 数据库后,启动 Cloudera Manager Server,并登录到 Cloudera Manager 管理控制台。
sudo systemctl start cloudera-scm-server
如果启动中有什么问题,可以查看日志。
sudo tail -f /var/log/cloudera-scm-server/cloudera-scm-server.log
当您看到此日志条目时,Cloudera Manager 管理控制台就绪。
INFO WebServerImpl:com.cloudera.server.cmf.WebServerImpl: Started Jetty server.
CM 安装成功之后,接下来我们就可以通过 CM 安装 CDH 的方式构建企业大数据平台。所以首先需要把 CDH 的 parcels 包下载到 CM 主服务器上。
同样为了加速我们的安装,我们可以把需要下载的软件包提前下载下来,也可以创建CDH私有仓库。
[root@namenode01 ~]# cd /opt/cloudera/parcel-repo
wget https://archive.cloudera.com/cdh6/6.3.2/parcels/CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel
为我们下载的文件创建一个 SHA1 hash 文件。
sha1sum CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel | awk ‘{ print $1 }‘ > CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel.sha
修改属主属组。
sudo chown -R cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo/*
打开浏览器,输入 namenode 的公网 IP:7180
,用户名和密码默认都是admin
。
欢迎页面提供了 Cloudera Manager 的简要概述,以及正在安装的版本的发行说明的链接。单击“继续”继续安装。
接受许可证页面提供了最终用户许可证条款和条件。阅读许可协议并单击标记为 Yes 的复选框,如果您接受许可协议的条款和条件,我将接受最终用户许可条款和条件。单击“继续”继续。
在 Select Edition 页面上,您可以选择要安装的 Cloudera Manager 版本,还可以选择安装许可证:
Add Cluster-Installation 向导的欢迎页面提供了安装和配置过程的简要概述,以及到相关文档的一些链接。单击“继续”继续安装。
Cluster Basics 页面允许您指定 Cluster Name 并选择 Cluster Type:
选择运行 CDH 和其他托管服务的主机。
Select Repository 页面允许您为 Cloudera Manager Agent 和 CDH 以及其他软件指定存储库。
CDH parcel 之前我们已经在 CM Server 节点配置好了,版本也一样。
不进行勾选,选择我们自己安装的 JDK。
提供 SSH 登录凭据。
安装 Agents,因为之前我们已经通过 yum 本地安装包安装了,所以这里速度会很快。
安装选定的 Parcel,之前我们已经下载好,并配置好放在的 CM Server 节点的/opt/cloudera/parcel-repo
。
Inspect 集群页面提供了检查网络性能的工具,以及用于搜索常见配置问题的 Host Inspector。
Select Services 页允许您选择要安装和配置的服务。确保您拥有要使用的服务的适当的许可证密钥。
Assign Roles 页建议为集群中的主机分配角色。您可以单击角色的主机名来选择不同的主机。还可以单击 View By Host 按钮查看分配给主机的所有角色。下面是官方的一个推荐。
在数据库设置页上,选择之前创建的数据库主机、名称、用户名和密码。对于支持它的服务,可以使用 JDBC URL 覆盖添加细粒度的自定义。
Review Changes 页面列出了几个配置参数的默认设置和建议设置,包括数据目录。
Command Details 页面列出了 First Run 命令的详细信息。您可以展开正在运行的命令,以查看任何步骤的详细信息,包括日志文件和命令输出。可以通过选择“显示所有步骤”、“仅显示失败的步骤”或“仅显示正在运行的步骤”筛选视图。
Summary 页报告安装向导的成功或失败。单击“完成”以完成向导。安装完成。
Cloudera 建议您通过单击主屏幕右上角的登录用户名并单击“更改密码” ,尽快更改默认密码。
Cloudera Manager 是用于管理 CDH 集群的端到端应用程序。Cloudera Manager 提供 CDH 集群每个部分的细粒度可见性和控制权,授权运营商提高性能、提高服务质量、增强遵从性和降低管理成本。使用 Cloudera Manager,您可以轻松地部署和集中操作完整的 CDH 堆栈和其他托管服务。应用程序自动化了安装过程,将部署时间从几周减少到几分钟; 提供了集群范围内的主机和服务运行的实时视图; 提供了一个单一的中央控制台,用于跨集群执行配置更改; 并整合了全套报告和诊断工具,以帮助优化性能和利用率。Cloudera Manager 还提供了一个可用于自动化集群操作的 API。
HDFS
HIVE
SPARK
CentOS 7 下 Cloudera 6.3.1 安装 Hadoop 集群
标签:sch 浏览器 yar 产生 random 开关 理解 cal chown
原文地址:https://blog.51cto.com/wzlinux/2529226