最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

搭建:離線部署 CDH 5.12.1 及部署 Hadoop 集群服務(wù)

2023-08-06 17:08 作者:good7ob  | 我要投稿

第一章 - 引言


CDH(Cloudera's Distribution Including Apache Hadoop)是一套基于 Apache Hadoop 的大數(shù)據(jù)解決方案,提供了分布式存儲和計算能力。在本文中,我們將詳細介紹如何離線部署 CDH 5.12.1,并搭建一個 Hadoop 集群服務(wù),幫助你快速搭建大數(shù)據(jù)處理平臺。


第一節(jié) - 準備工作


步驟一:下載 CDH 5.12.1 安裝包


首先,你需要從 Cloudera 官方網(wǎng)站(https://www.cloudera.com/)下載 CDH 5.12.1 的離線安裝包。


步驟二:準備服務(wù)器


在搭建 Hadoop 集群之前,你需要準備一組服務(wù)器。確保這些服務(wù)器能夠相互通信,并且滿足 Hadoop 的硬件和操作系統(tǒng)要求。


第二節(jié) - 離線部署 CDH 5.12.1


步驟一:上傳安裝包


將下載的 CDH 5.12.1 安裝包上傳到所有服務(wù)器的相同目錄下。


步驟二:解壓安裝包


在所有服務(wù)器上執(zhí)行以下命令,解壓 CDH 5.12.1 安裝包:


$ tar?-xzvf?CDH-5.12.1.tar.gz



步驟三:安裝依賴包


在所有服務(wù)器上執(zhí)行以下命令,安裝 CDH 5.12.1 所需的依賴包:


$ sudo?yum install?-y?java-1.8.0-openjdk-devel

$ sudo?yum install?-y?mysql-connector-java


步驟四:配置主機名


在所有服務(wù)器上執(zhí)行以下命令,配置主機名:


$ sudo?hostnamectl set-hostname <hostname>



其中 <hostname> 是服務(wù)器的主機名。


步驟五:設(shè)置 hosts 文件


在所有服務(wù)器上執(zhí)行以下命令,編輯 /etc/hosts 文件:


$ sudo?vi?/etc/hosts


添加所有服務(wù)器的 IP 地址和主機名:


<server1_IP> <server1_hostname>

<server2_IP> <server2_hostname>

...


保存并退出文件。


第三節(jié) - 部署 Hadoop 集群服務(wù)


步驟一:配置 SSH 免密登錄


在其中一臺服務(wù)器上執(zhí)行以下命令,生成 SSH 密鑰并將其分發(fā)到其他服務(wù)器上:


$ ssh-keygen?-t?rsa

$ ssh-copy-id?<server2>

$ ssh-copy-id?<server3>

...



其中 <server2><server3> 等是其他服務(wù)器的主機名。


步驟二:配置 Hadoop 集群


在其中一臺服務(wù)器上執(zhí)行以下命令,配置 Hadoop 集群的相關(guān)文件:


步驟一:編輯 core-site.xml 文件


在其中一臺服務(wù)器上,編輯 core-site.xml 文件:


$ cd?/path/to/hadoop/conf

$ sudo?vi?core-site.xml


將以下配置添加到文件中:


<configuration>

<property>

?<name>fs.defaultFS</name>

?<value>hdfs://<namenode>:8020</value>

</property>

</configuration>


其中 <namenode> 是你選擇作為 NameNode 的服務(wù)器的主機名。


步驟二:編輯 hdfs-site.xml 文件


在同一臺服務(wù)器上,編輯 hdfs-site.xml 文件:


$ sudo?vi?hdfs-site.xml



將以下配置添加到文件中:


<configuration>

<property>

?<name>dfs.replication</name>

?<value>3</value>

</property>

</configuration>


這將設(shè)置副本數(shù)量為 3,即每個數(shù)據(jù)塊將在集群中的 3 個節(jié)點上進行復制。


步驟三:編輯 yarn-site.xml 文件


在同一臺服務(wù)器上,編輯 yarn-site.xml 文件:


$ sudo?vi?yarn-site.xml




將以下配置添加到文件中:


<configuration>

<property>

?<name>yarn.resourcemanager.hostname</name>

?<value><resourcemanager></value>

</property>

<property>

?<name>yarn.nodemanager.aux-services</name>

?<value>mapreduce_shuffle</value>

</property>

</configuration>


其中 <resourcemanager> 是你選擇作為 ResourceManager 的服務(wù)器的主機名。


步驟四:編輯 mapred-site.xml 文件


在同一臺服務(wù)器上,編輯 mapred-site.xml 文件:


$ sudo?vi?mapred-site.xml


將以下配置添加到文件中:


<configuration>

<property>

?<name>mapreduce.framework.name</name>

?<value>yarn</value>

</property>

</configuration>



步驟五:分發(fā)配置文件


在同一臺服務(wù)器上,執(zhí)行以下命令,將配置文件分發(fā)到其他服務(wù)器上:


$ scp?core-site.xml hdfs-site.xml yarn-site.xml mapred-site.xml <server2>:<hadoop_path>/conf

$ scp?core-site.xml hdfs-site.xml yarn-site.xml mapred-site.xml <server3>:<hadoop_path>/conf

...



其中 <server2><server3> 等是其他服務(wù)器的主機名,<hadoop_path> 是 Hadoop 安裝目錄的路徑。


步驟六:格式化 HDFS


在其中一臺服務(wù)器上,執(zhí)行以下命令,格式化 HDFS:


$ hdfs?namenode?-format


步驟七:啟動 Hadoop 服務(wù)


在其中一臺服務(wù)器上,執(zhí)行以下命令,啟動 Hadoop 服務(wù):


$ start-dfs.sh

$ start-yarn.sh


步驟八:驗證 Hadoop 集群


在瀏覽器中訪問其中一臺服務(wù)器的主機名和端口號 50070(如 http://<nam enode>:50070)來訪問 Hadoop 的 Web UI,確保集群已成功部署并運行。


第四節(jié) - 案例:使用 Hadoop 集群進行數(shù)據(jù)處理


現(xiàn)在,你已經(jīng)成功搭建了 CDH 5.12.1 的離線部署和 Hadoop 集群服務(wù)。接下來,我們將演示如何使用 Hadoop 集群進行數(shù)據(jù)處理。


案例:WordCount


我們將使用經(jīng)典的 WordCount 作為案例來演示 Hadoop 集群的使用。以下是一個簡單的 Java 代碼示例:


import?org.apache.hadoop.conf.Configuration;

import?org.apache.hadoop.fs.Path;

import?org.apache.hadoop.io.IntWritable;

import?org.apache.hadoop.io.Text;

import?org.apache.hadoop.mapreduce.Job;

import?org.apache.hadoop.mapreduce.Mapper;

import?org.apache.hadoop.mapreduce.Reducer;

import?org.apache.hadoop.mapreduce.lib.input.FileInputFormat;

import?org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;



import?java.io.IOException;

import?java.util.StringTokenizer;



public?class?WordCount?{

public?static?class?TokenizerMapper?extends?Mapper<Object,?Text,?Text,?IntWritable>?{

?private?final?static?IntWritable?one?=?new?IntWritable(1);

?private?Text?word?=?new?Text();



?public?void?map(Object?key,?Text?value,?Context?context)?throws?IOException,?InterruptedException?{

??StringTokenizer?itr?=?new?StringTokenizer(value.toString());

??while?(itr.hasMoreTokens()) {

??? ?word.set(itr.nextToken());

??? ?context.write(word,?one);

? }

}

}



public?static?class?IntSumReducer?extends?Reducer<Text,?IntWritable,?Text,?IntWritable>?{

?private?IntWritable?result?=?new?IntWritable();



?public?void?reduce(Text?key,?Iterable<IntWritable>?values,?Context?context)?throws?IOException,?InterruptedException?{

??int?sum?=?0;

??for?(IntWritable?val?:?values) {

??? ?sum?+=?val.get();

? }

??result.set(sum);

??context.write(key,?result);

}

}



public?static?void?main(String[]?args)?throws?Exception?{

?Configuration?conf?=?new?Configuration();

?Job?job?=?Job.getInstance(conf,?"word count");

?job.setJarByClass(WordCount.class);

?job.setMapperClass(TokenizerMapper.class);

?job.setCombinerClass(IntSumReducer.class);

?job.setReducerClass(IntSumReducer.class);

?job.setOutputKeyClass(Text.class);

?job.setOutputValueClass(IntWritable.class);

?FileInputFormat.addInputPath(job,?new?Path(args[0]));

?FileOutputFormat.setOutputPath(job,?new?Path(args[1]));

?System.exit(job.waitForCompletion(true)???0?:?1);

}

}



使用上述代碼編譯并打包為 WordCount.jar。


在集群的其中一臺服務(wù)器上,執(zhí)行以下命令運行 WordCount 作業(yè):


$ hadoop?jar WordCount.jar WordCount <input_path> <output_path>


其中 <input_path> 是輸入文件的路徑,<output_path> 是輸出結(jié)果的路徑。


第五節(jié) - 結(jié)語


通過本文的介紹,你已經(jīng)學習了如何離線部署 CDH 5.12.1 和搭建 Hadoop 集群服務(wù)。你還了解了如何使用 Hadoop 集群進行數(shù)據(jù)處理,并通過一個簡單的 WordCount 案例進行了演示。


希望本文能夠幫助你快速搭建起一個可靠的大數(shù)據(jù)處理平臺,并了解了如何使用 Hadoop 集群進行數(shù)據(jù)處理。


CDH 提供了強大的分布式存儲和計算能力,可以滿足大規(guī)模數(shù)據(jù)處理的需求。通過搭建 Hadoop 集群,你可以充分利用集群的計算資源,實現(xiàn)高效的數(shù)據(jù)處理和分析。


希望本文對你理解和使用 CDH 5.12.1 及 Hadoop 集群服務(wù)有所幫助。愿你在大數(shù)據(jù)處理的道路上取得更大的成功!


搭建:離線部署 CDH 5.12.1 及部署 Hadoop 集群服務(wù)的評論 (共 條)

分享到微博請遵守國家法律
兴安县| 浦城县| 浦县| 阿拉尔市| 新巴尔虎左旗| 咸宁市| 嫩江县| 会理县| 博罗县| 铜川市| 万州区| 濮阳县| 海门市| 宝兴县| 剑河县| 蒙阴县| 汉川市| 扬中市| 阿坝| 邻水| 海宁市| 温宿县| 应城市| 南木林县| 锦屏县| 泰州市| 夏邑县| 方正县| 剑河县| 莎车县| 丰城市| 杨浦区| 鱼台县| 金秀| 太康县| 西青区| 泰安市| 鄂州市| 故城县| 崇义县| 钟山县|