<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          學(xué)習(xí)大數(shù)據(jù)從安裝Hadoop開始(單機(jī)版)

          共 4096字,需瀏覽 9分鐘

           ·

          2021-12-27 14:36

          文章已收錄到我的Github精選,歡迎Star:https://github.com/yehongzhi/learningSummary

          前言

          最近上手學(xué)習(xí)大數(shù)據(jù),大數(shù)據(jù)當(dāng)然離不開核心的Hadoop,所以首先要搭建一個(gè)Hadoop環(huán)境。我本機(jī)電腦配置不太高,又是學(xué)習(xí)階段,所以就整個(gè)單機(jī)版的玩玩,下面記錄一下步驟,希望對(duì)大家有所幫助。

          前期準(zhǔn)備

          名稱版本來源
          虛擬機(jī)CentOSCentOS 7
          JDK1.8Oracle官網(wǎng)
          hadoop3.2.2hadoop官網(wǎng)

          虛擬機(jī)安裝,和JDK安裝就不多說了,對(duì)于做Java開發(fā)的來說都是小菜一碟。

          關(guān)閉防火墻

          要關(guān)閉防火墻首先得看開沒開,查看防火墻狀態(tài),使用命令systemctl status firewalld.service。

          得先用su root,切換到root,然后使用關(guān)閉防火墻命令systemctl status firewalld.service。關(guān)了之后在查看狀態(tài),如圖所示已經(jīng)關(guān)閉了。

          但是如果重新開機(jī)還是會(huì)自動(dòng)啟動(dòng),所以要設(shè)置開機(jī)禁止防火墻。使用命令systemctl disable firewalld.service。相反,開機(jī)啟動(dòng)防火墻就是systemctl enable firewalld.service。

          設(shè)置靜態(tài)IP

          為什么要設(shè)置靜態(tài)IP呢,因?yàn)橛袝r(shí)候虛擬機(jī)設(shè)置的網(wǎng)絡(luò)IP地址是自動(dòng)分配的,自動(dòng)分配的IP問題就出在每次啟動(dòng)虛擬機(jī)的時(shí)候會(huì)隨機(jī)分配一個(gè)IP,這個(gè)IP是不固定的,那么當(dāng)我們用遠(yuǎn)程工具連接的時(shí)候就很不方便,每次都得先使用命令ip addr查詢虛擬機(jī)的IP地址。

          廢話不多說,打開vim /etc/sysconfig/network-scripts/ifcfg-enp0s3文件編輯。

          上面這個(gè)就是自動(dòng)獲取IP地址的配置,怎么改成靜態(tài)IP呢?很簡單,看下面配置。

          1)BOOTPROTO="static"

          2)ONBOOT="yes"

          3)配置IPADDR、NETMASK、GATEWAY、DNS1、DNS2。

          TYPE="Ethernet"
          PROXY_METHOD="none"
          BROWSER_ONLY="no"
          BOOTPROTO="static"
          DEFROUTE="yes"
          IPV4_FAILURE_FATAL="no"
          IPV6INIT="yes"
          IPV6_AUTOCONF="yes"
          IPV6_DEFROUTE="yes"
          IPV6_FAILURE_FATAL="no"
          IPV6_ADDR_GEN_MODE="stable-privacy"
          NAME="enp0s3"
          UUID="57b0050a-6c8c-4b6f-be68-3810f8ab9b5d"
          DEVICE="enp0s3"
          ONBOOT="yes"
          IPADDR=192.168.1.4
          NETMASK=255.255.255.0
          GATEWAY=192.168.1.1
          DNS1=119.29.29.29
          DNS2=8.8.8.8

          接著重新加載systemctl restart network。

          然后驗(yàn)證的話,可以輸入ip addr命令查看一下IP地址。最后ping一下百度,看網(wǎng)絡(luò)是否通暢。

          關(guān)閉selinux服務(wù)

          打開vim /etc/selinux/config編輯文件,修改如下配置:

          SELINUX=disabled

          重啟服務(wù)器生效,命令為reboot。

          修改主機(jī)名

          修改主機(jī)名+域名映射,在訪問的時(shí)候就可以不用IP地址而用域名,方便很多。

          使用命令vim /ect/hostname,修改主機(jī)名為hadooptest100。

          域名映射,使用命令vim /ect/hosts,修改以下配置:

          192.168.1.4?hadooptest100

          接著重啟服務(wù)器生效。

          設(shè)置SSH免密登錄

          執(zhí)行以下命令。

          ssh-keygen?-t?rsa
          cat?/home/hadoop/.ssh/id_rsa.pub?>>?/home/hadoop/.ssh/authorized_keys
          chmod?700?/home/hadoop/.ssh
          chmod?600?/home/hadoop/.ssh/authorized_keys

          使用ssh localhost驗(yàn)證,如果不需要密碼即可登錄則表示設(shè)置成功。使用exit命令退出登錄。

          安裝Hadoop

          首先把壓縮包放在usr/local/目錄下,然后解壓tar -zxvf /usr/local/hadoop-3.2.2。

          配置環(huán)境變量

          使用命令vim /etc/profile編輯,在末尾加上:

          export?JAVA_HOME=/usr/local/jdk1.8.0_161
          export?PATH=$JAVA_HOME/bin:$PATH
          export?HADOOP_HOME=/usr/local/hadoop-3.2.2
          export?HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
          export?HADOOP_OPTS=-Djava.library.path=$HADOOP_HOME/lib
          export?PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

          wq保存退出之后,使用命令source /etc/profile重新加載配置。最后我們使用hadoop version驗(yàn)證。

          核心文件設(shè)置

          進(jìn)入到hadoop安裝目錄的${HADOOP_HOME}/etc/hadoop/目錄,設(shè)置core-site.xml文件:

          <configuration>
          ????<property>
          ????????<name>hadoop.tmp.dirname>
          ????????<value>/hadoop/data/tmpvalue>
          ????????<description>hadoop?tmp?dirdescription>
          ????property>
          ????<property>
          ????????<name>fs.default.namename>
          ????????<value>hdfs://hadooptest100:9000value>
          ????property>
          configuration>

          設(shè)置hdfs-site.xml文件:

          <configuration>
          <property>
          ????<name>dfs.replicationname>
          ????<value>1value>
          ????<description>設(shè)置副本數(shù)description>
          property>

          <property>
          ???<name>dfs.namenode.name.dirname>
          ???<value>file:///hadoop/data/dfs/namevalue>
          ???<description>nameNodedescription>
          property>

          <property>
          ???<name>dfs.datanode.data.dirname>
          ???<value>file:///hadoop/data/dfs/datavalue>
          ??<description>dataNodedescription>
          property>

          <property>
          ????<name>dfs.permissionsname>
          ????<value>falsevalue>
          ????<description>permissiondescription>
          property>

          <property>
          ????<name>dfs.secondary.http.addressname>
          ????<value>hadooptest100:50070value>
          ?<description>SNN?pathdescription>
          property>
          configuration>

          設(shè)置mapred-site.xml文件:

          <configuration>
          ????<property>
          ???????????<name>mapreduce.framework.namename>
          ???????????<value>yarnvalue>
          ????property>
          configuration>

          設(shè)置yarn-site.xml文件:

          <configuration>
          ????
          ????<property>
          ????????<name>yarn.resourcemanager.hostnamename>
          ????????<value>hosttest100value>
          ????property>
          ????
          ????<property>
          ????????<name>yarn.nodemanager.aux-servicesname>
          ????????<value>mapreduce_shufflevalue>
          ????property>
          configuration>

          設(shè)置hadoop_evn.sh文件:

          export?HDFS_DATANODE_USER=root
          export?HDFS_DATANODE_SECURE_USER=root
          export?HDFS_NAMENODE_USER=root
          export?HDFS_SECONDARYNAMENODE_USER=root
          export?YARN_RESOURCEMANAGER_USER=root
          export?YARN_NODEMANAGER_USER=root
          export?JAVA_HOME=/usr/local/jdk1.8.0_161
          export?HADOOP_HOME=/usr/local/hadoop-3.2.2

          cd到sbin目錄下,設(shè)置start-dfs.sh、stop-dfs.sh文件,在前面加上:

          HDFS_DATANODE_USER=root
          HDFS_DATANODE_SECURE_USER=hdfs
          HDFS_NAMENODE_USER=root
          HDFS_SECONDARYNAMENODE_USER=root

          設(shè)置start-yarn.sh、stop-yarn.sh文件,在前面加上:

          YARN_RESOURCEMANAGER_USER=root
          HDFS_DATANODE_SECURE_USER=yarn
          YARN_NODEMANAGER_USER=root

          啟動(dòng)hadoop

          首先需要格式化,切換到bin目錄下,使用以下命令。

          hdfs?namenode?-format

          接著就cd到sbin目錄下,使用命令./start-all.sh一鍵啟動(dòng)hadoop。

          然后使用jps命令查看java進(jìn)程。

          [root@hadooptest100?sbin]#?jps
          24530?NameNode
          24738?DataNode
          25198?SecondaryNameNode
          26110?NodeManager
          1918?Jps

          最后可以在瀏覽器輸入hadoop服務(wù)器的ip加上9870端口號(hào),訪問hadoop的管理界面。

          總結(jié)

          這里需要說明的是,我是為了方便才使用root用戶部署hadoop,在生產(chǎn)環(huán)境切記不可使用root用戶。所謂萬事開頭難,部署完hadoop環(huán)境之后,下一步我們就可以學(xué)習(xí)MapReduce了。感謝大家的閱讀,希望能對(duì)你有所幫助。

          覺得有用就點(diǎn)個(gè)贊吧,你的點(diǎn)贊是我創(chuàng)作的最大動(dòng)力~

          我是一個(gè)努力讓大家記住的程序員。我們下期再見!??!

          能力有限,如果有什么錯(cuò)誤或者不當(dāng)之處,請(qǐng)大家批評(píng)指正,一起學(xué)習(xí)交流!

          瀏覽 43
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  AV天堂资源网站 | 色欲久久久 | 国产免费观看高清完整版亚洲日本 | 免费网站观看www在线观看 | 台湾午夜成人免费影院在线看 |