中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

Hadoop集群怎么搭建及如何進(jìn)行Python操作

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)Hadoop集群怎么搭建及如何進(jìn)行Python操作,文章內(nèi)容豐富且以專(zhuān)業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

察哈爾右翼后網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)公司!從網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、APP開(kāi)發(fā)、響應(yīng)式網(wǎng)站設(shè)計(jì)等網(wǎng)站項(xiàng)目制作,到程序開(kāi)發(fā),運(yùn)營(yíng)維護(hù)。成都創(chuàng)新互聯(lián)公司自2013年創(chuàng)立以來(lái)到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來(lái)保證我們的工作的順利進(jìn)行。專(zhuān)注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)公司。

最近項(xiàng)目中在做千億大數(shù)據(jù)存儲(chǔ)檢索需求,要把10T的文本數(shù)據(jù)進(jìn)行解析處理存入數(shù)據(jù)庫(kù)進(jìn)行實(shí)時(shí)檢索,文件的存儲(chǔ)成為一個(gè)首要處理的問(wèn)題,使用了多種存儲(chǔ)方式,都不是很滿(mǎn)足要求,最后使用  HDFS 分布式文件存儲(chǔ)系統(tǒng)發(fā)現(xiàn)效率、管理等各方面都挺不錯(cuò),就研究了一下搭建使用方式,特此記錄文檔

環(huán)境

Hadoop集群怎么搭建及如何進(jìn)行Python操作

修改主機(jī)名

# 按照上面環(huán)境配置修改每個(gè)機(jī)器的hostname vi /etc/hostname  # 使用hostname命令使其生效,就不用重啟了 hostname xxxx

修改hosts文件

vi /etc/hosts  192.168.143.130 master 192.168.143.131 slave1 192.168.143.132 slave2 192.168.143.133 slave3 192.168.143.134 slave4

配置免密登錄

ssh-keygen -t rsa  ssh-copy-id -i ~/.ssh/id_rsa.pub master ssh-copy-id -i ~/.ssh/id_rsa.pub slave1 ssh-copy-id -i ~/.ssh/id_rsa.pub slave2 ssh-copy-id -i ~/.ssh/id_rsa.pub slave3 ssh-copy-id -i ~/.ssh/id_rsa.pub slave4

安裝JDK(每臺(tái)機(jī)器)

apt-get install -y openjdk-8-jre-headless openjdk-8-jdk

配置環(huán)境變量

在/etc/profile文件最后添加如下內(nèi)容:

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools/jar export HADOOP_HOME=/usr/hadoop-3.3.0/ export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop export HADOOP_COMMON_HOME=$HADOOP_HOME export HADOOP_HDFS_HOME=$HADOOP_HOME export HADOOP_MAPRED_HOME=$HADOOP_HOME export HADOOP_YARN_HOME=$HADOOP_HOME export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native" export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native

使環(huán)境變量生效

source /etc/profile

創(chuàng)建目錄(每天機(jī)器)

創(chuàng)建目錄的時(shí)候要注意,先通過(guò)df  -h命令查看本機(jī)上的磁盤(pán)空間,確定好數(shù)據(jù)存儲(chǔ)的磁盤(pán),然后創(chuàng)建以下三個(gè)目錄,在下面的配置文件hdfs-site.xml中修改對(duì)應(yīng)的目錄配置即可

mkdir -p /home/hadoop/dfs/name mkdir -p /home/hadoop/dfs/data mkdir -p /home/hadoop/temp

安裝配置Hadoop

下載Hadoop安裝包

http://archive.apache.org/dist/hadoop/core/stable/hadoop-3.3.0.tar.gz

# 解壓后拷貝到/usr目錄下 tar -xzvf hadoop-3.3.0.tar.gz mv hadoop-3.3.0 /usr

配置Hadoop

配置文件在

/usr/hadoop-3.3.0/etc/hadoop目錄下

hadoop-env.sh

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 export HDFS_NAMENODE_USER=root export HDFS_DATANODE_USER=root export HDFS_SECONDARYNAMENODE_USER=root export YARN_RESOURCEMANAGER_USER=root export YARN_NODEMANAGER_USER=root

core-site.xml

<configuration>   <property>     <name>fs.defaultFS</name>     <value>hdfs://master:9000</value>   </property>   <property>     <name>hadoop.http.staticuser.user</name>     <value>root</value>   </property>   <property>     <name>dfs.permissions.enabled</name>     <value>false</value>   </property> </configuration>

hdfs-site.xml配置多個(gè)文件存儲(chǔ)目錄,使用逗號(hào)隔開(kāi)即可

<configuration>   <property>     <name>dfs.namenode.name.dir</name>     <value>/home/hadoop/dfs/name</value>   </property>   <property>     <name>dfs.dataname.data.dir</name>     <value>/home/hadoop/dfs/data,/usr1/hadoop/dfs/data</value>   </property>   <property>     <name>dfs.replication</name>     <value>2</value>   </property> </configuration>

mapred-site.xml

<configuration>   <property>     <name>mapreduce.framework.name</name>     <value>yarn</value>   </property> </configuration>

yarn-site.xml

<configuration>   <property>     <name>yarn.resourcemanager.hostname</name>     <value>master</value>   </property>   <property>     <name>yarn.resourcemanager.webapp.address</name>     <value>master:8088</value>   </property>   <property>     <name>yarn.nodemanager.aux-services</name>     <value>mapreduce_shuffle</value>   </property> </configuration>

workers

這里配置的就是DataNode的存儲(chǔ)機(jī)器,不建議用master作為存儲(chǔ),如果存滿(mǎn)了集群就不能用了

slave1 slave2 slave3 slave4

將master上的/usr/hadoop-3.3.9拷貝到其他機(jī)器即可

scp /usr/hadoop-3.3.0 slave1:/usr scp /usr/hadoop-3.3.0 slave2:/usr scp /usr/hadoop-3.3.0 slave3:/usr scp /usr/hadoop-3.3.0 slave4:/usr

格式化HDFS目錄(在master機(jī)器)

hdfs namenode-format

啟動(dòng)Hadoop

在master機(jī)器上執(zhí)行就可以了,執(zhí)行完以后可以使用jps命令在所有機(jī)器上查看進(jìn)程狀態(tài)

cd /usr/hadoop-3.3.0/sbin ./start-all.sh

查看進(jìn)程狀態(tài)

在master和slave上分別執(zhí)行jps命令

查看是否成功

在瀏覽器上打開(kāi)下面的網(wǎng)頁(yè),看能否正常訪問(wèn)

# Hadoop集群信息 http://192.168.143.130:8088/cluster  # HDFS地址 http://192.168.143.130:9870/dfshealth.html  # DataNode地址 http://192.168.143.130:9864/datanode.html  # NodeManager地址 http://192.168.143.130:8042/node  # SecondaryNameNode http://192.168.143.130:9868/status.html

測(cè)試文件上傳(master)

hdfs dfs -mkdir /test hdfs dfs -put start-dfs.sh /test

HDFS操作命令

創(chuàng)建文件夾

hdfs dfs -mkdir /myTask

創(chuàng)建多層文件

hdfs dfs -mkdir -p /myTask/input

上傳文件

hdfs dfs -put /opt/wordcount.txt /myTask

查看總目錄下的文件和文件夾

hdfs dfs -ls /

查看myTask目錄下的wordcount.txt文件內(nèi)容

hdfs dfs -cat /myTask/wordcount.txt

刪除文件或文件夾

hdfs dfs -rm -r /myTask/wordcount.txt

下載文件到本地

hdfs dfs -get /myTask/wordcount.txt /opt

Python操作hdfs

python操作hdfs時(shí),如果要進(jìn)行上傳下載文件,必須在執(zhí)行代碼的機(jī)器上配置hosts文件,原因是hdfs的namenode和datanode注冊(cè)后是以hostname進(jìn)行記錄的,如果不配置直接進(jìn)行上傳下載操作,那么將會(huì)采用hostname進(jìn)行操作,因此需要在本機(jī)上配置hdfs集群機(jī)器IP和hostname的對(duì)應(yīng)配置。例如我在本機(jī)上進(jìn)行操作,必須配置如下:

C:\Windows\System32\drivers\etc\hosts  192.168.143.130 master 192.168.143.131 slave1 192.168.143.132 slave2 192.168.143.133 slave3 192.168.143.134 slave4

安裝庫(kù)

pip install hdfs

操作

連接

from hdfs.client import Client client = Client("http://192.168.143.130:9870")

創(chuàng)建目錄

client.makedirs(hdfs_path)

刪除文件

client.delete(hdfs_path)

上傳文件

client.download(hdfs_path, local_path)

獲取目錄下文件列表

client.list(hdfs_path)

HDFS 文件存儲(chǔ)集群的優(yōu)點(diǎn)是:配置要求低、易于擴(kuò)展、效率比較高、非常適合大批量文件存儲(chǔ),而且可以提供 web 管理頁(yè)面,提供非常好的第三方庫(kù)。在進(jìn)行  web 開(kāi)發(fā)時(shí),作為文件和圖片存儲(chǔ)庫(kù)也是非常好的選擇。

上述就是小編為大家分享的Hadoop集群怎么搭建及如何進(jìn)行Python操作了,如果剛好有類(lèi)似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

網(wǎng)站名稱(chēng):Hadoop集群怎么搭建及如何進(jìn)行Python操作
轉(zhuǎn)載源于:http://www.rwnh.cn/article6/ippcog.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供關(guān)鍵詞優(yōu)化、定制開(kāi)發(fā)、Google網(wǎng)站制作、域名注冊(cè)、網(wǎng)站設(shè)計(jì)公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

搜索引擎優(yōu)化
万载县| 开化县| 池州市| 广饶县| 印江| 广昌县| 和平县| 兴安盟| 陇川县| 南岸区| 彭阳县| 乐安县| 抚松县| 防城港市| 双辽市| 漠河县| 开江县| 瑞昌市| 凤庆县| 定南县| 南昌市| 水富县| 庆元县| 乐亭县| 四平市| 资兴市| 内江市| 龙陵县| 高邑县| 萍乡市| 枞阳县| 东宁县| 镇坪县| 南通市| 平南县| 云安县| 平乡县| 汾阳市| 奈曼旗| 崇仁县| 恩施市|