微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

2021-05-19

备用:

2. 配置本地源。通过比赛平台提供源文件下载路径,将本地源文件下载到 /etc/yum.repos.d/ 目录下(三台机器都执行)。 ⚫ 发信号给 yum 进程: pkill -9 yum ⚫ 进入 yum 源配置文件: cd /etc/yum.repos.d ⚫ 删除所有文件: rm -rf * ⚫ 下载 yum 源: wget http://10.10.30.2:8000/bigdata/repofile/bigdata.repo ⚫ 清除 YUM 缓存: yum clean all

 

 

主机登录

三台主机ssh登录

       登录三台主机,用后面的ip

1.   ssh root@39.101.172.45    然后黏贴密码登录

关闭防火墙

          三台都得关闭

2 . systemctl stop firewalld        systemctl disable firewalld    用bash刷新一下

3.  修改主机名字    hostnamectl set-hostname master      三台都得修改  bash刷新看一下

4 . 修改host    vim /etc/hosts   

        前面的ip   主机名    三台机器都修改

5..    ssh免密登录

                      

先   ssh-keygen -t rsa     再把公钥写进authorized里               cat     id_rsa.pub > authorized_keys  

然后写    chmod 600 authorized_keys        重启ssh协议    systemctl restart sshd

     分发密码    给slave1,slave2

 

ssh-copy-id root@slave1    ssh-copy-id root@slave2  

 

下载ntp服务   

      

      

命令:  wget htto://172.16.47.240/bigdata/repofile/bigdata.repo

先到/etc/yum/repos.d 目录下,再用命令。

然后分发给slave1,slave2  

命令:  scp bigdata.repo root@slave1:/etc/yum.repos.d/     scp bigdata.repo root@slave2:/etc/yum.repos.d/   

三台服务器:安装ntp    命令: yum install ntp -y  (备:yum install -y ntp)

在master下设置时间:

     

命令:  tzselect  

 

三台主机都配置  vim /etc/ntp.conf

三台主机都再重启: systemctl restart ntpd

检查下:

 

  master中操作:

下载jdk: 在bigdata  tar  里有jdk

找到jdk复制下路径

创建:cd /usr/    mkdir java   

进入:cd java/    wget http://172.16.47.240/bigdata/bigdata_tar/jdk-8u171-linux-x64.tar.gz

解压jdk: tar j 

进入jdk:pwd 获取路径

配置环境变量: vim /etc/profile

# set java home

export JAVA_HOME=/usr/java/jdk1.8.0_171

export PATH=$PATH:$JAVA_HOME/bin

export CLAsspATH=$JAVA_HOME/lib/export

export PATH JAVA_HOME CLAsspATH

保存完后生效  : source /etc/profile

检查:  java -version

master弄好后,分发jdk给slave1,slave2  命令: scp -r /usr/java/ root@slave1:/usr/     scp -r /usr/java/ root@slave2:/usr/ 

分发环境变量: scp /etc/profile root@slave1:/etc/  scp /etc/profile root@slave2:/etc/两台机器

另两台都生效下:  source /etc/profile

检查: java -version

 

集群搭建:

 

创建,进入,下载,zookeeper解压包在bigdata  tar里

cd /usr    mkdir zookeeper   cd zookeeper    wget http://172.16.47.240/bigdata/bigdata_tar/zookeeper-3.4.10.tar.gz

⚫ mkdir zkdatalog mkdir zkdata

解压: tar -xzvf z

配置环境变量:  vim /etc/profile

# set zh home

export ZOOKEEPER_HOME=/usr/zookeeper/zookeeper-3.4.10

export PATH=$PATH:$ZOOKEEPER_HOME/bin

删除一个文件: rm -fr ./*.cmd

生效: source /etc/profile

先改名字,再配置:

cp zoo_sample.cfg zoo.cfg

vim zoo.cfg   配置存储路径   集群地址  

  

tickTime=2000 initLimit=10 synclimit=5 dataDir=/usr/zookeeper/zookeeper-3.4.10/zkdata clientPort=2181 dataLogDir=/usr/zookeeper/zookeeper-3.4.10/zkdatalog server.1=master:2888:3888 server.2=slave1:2888:3888 server.3=slave2:2888:3888  

 

 

然后:三台主机

在每个zookeeper的 zkdata 目录下创建一个 myid 文件内容分别是1、2、3 

分发两台:

  scp -r /usr/zookeeper root@slave1:/usr/ ⚫ scp -r /usr/zookeeper root@slave2:/usr/  

别忘了: 修改myid slave1 - 2   slave2  - 3

开启服务: bin/zkServer.sh start 查看状态: bin/zkServer.sh status     4. hadoop集群搭建:   4.1 解压安装包,配置环境变量 1. 创建工作路径 /usr/hadoop ,下载相应软件,解压至工作路径。 2. 添加 hadoop 环境变量(三台机器执行)   vim /etc/profile 添加: # # #HADOOP export HADOOP_HOME=/usr/hadoop/hadoop-2.7.3 export CLAsspATH=$CLAsspATH:$HADOOP_HOME/lib export PATH=$PATH:$HADOOP_HOME/bin

生效:  

source /etc/profile 4.2 配置 hadoop 各组件

  cd $HADOOP_HOME/etc/hadoop   vim hadoop-env.sh   输入以下内容修改 java 环境变量: export JAVA_HOME=/usr/java/jdk1.8.0_171  

  2. 编辑 core-site.xml 文件   vim core-site.xml 添加: <property> <name>fs.default.name</name> <value>hdfs://master:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/usr/hadoop/hadoop-2.7.3/hdfs/tmp</value> <description>A base for other temporary directories.</description> </property> <property> <name>io.file.buffer.size</name> <value>131072</value> </property> <property> <name>fs.checkpoint.period</name> <value>60</value> </property> <property> <name>fs.checkpoint.size</name> <value>67108864</value> </property>

 

3. 编辑 mapred-site.xml   hadoop 是没有这个文件的,需要将 mapred-site.xml.template 样本文件复制为 mapred-site.xml ,对其进行编辑: ⚫ cp mapred-site.xml.template mapred-site.xml ⚫ vim mapred-site.xml   在 <configuration></configuration> 中加入以下代码: <property> <!--指定 Mapreduce 运行在 yarn 上--> <name>mapreduce.framework.name</name> <value>yarn</value> </property> 注意保存退出。   4. 修改 yarn-site.xml vim yarn-site.xml 在 <configuration></configuration> 中加入以下代码: <!-- 指定 ResourceManager 的地址 --> <property> <name>yarn.resourcemanager.address</name> <value>master:18040</value> </property> <property> <name>yarn.resourcemanager.scheduler.address</name> <value>master:18030</value> </property> <property> <name>yarn.resourcemanager.webapp.address</name> <value>master:18088</value> </property> <property> <name>yarn.resourcemanager.resource-tracker.address</name> <value>master:18025</value> </property> <property> <name>yarn.resourcemanager.admin.address</name> <value>master:18141</value> </property> <!-- 指定 reducer 获取数据的方式--> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.nodemanager.auxservices.mapreduce.shuffle.class</name> <value>org.apache.hadoop.mapred.ShuffleHandler</value> </property>     5. 编辑 hdfs-site.xml 配置文件 vim hdfs-site.xml 在 <configuration></configuration> 中加入以下代码:   <property> <name>dfs.replication</name> <value>2</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>file:/usr/hadoop/hadoop-2.7.3/hdfs/name</value> <final>true</final> </property> <property> <name>dfs.datanode.data.dir</name> <value>file:/usr/hadoop/hadoop-2.7.3/hdfs/data</value> <final>true</final> </property> <property> <name>dfs.namenode.secondary.http-address</name> <value>master:9001</value> </property> <property> <name>dfs.webhdfs.enabled</name> <value>true</value> </property> <property> <name>dfs.permissions</name> <value>false</value> </property>   6. 编写 slaves 和 master 文件 编写 slaves 文件添加子节点 slave1 和 slave2 ; 编写 master 文件添加主节点 master 。   7. 分发 hadoop 文件到 slave1 、 slave2 两个子节点 ⚫ scp -r /usr/hadoop root@slave1:/usr/ ⚫ scp -r /usr/hadoop root@slave2:/usr/   注意: slave 各节点上还需要配置环境变量, cd $HADOOP_HOME/etc/hadoop ⚫ vim hadoop-env.sh   export JAVA_HOME=/usr/java/jdk1.8.0_171

    8. 格式化 hadoop ( 仅在 master 中进行操作 ) ⚫ 格式化 namenode : hadoop namenode -format  

  9. 开启 hadoop 集群 仅在 master 主机上开启操作命令。它会带起从节点的启动。 (仅在 master 中进行操作) ⚫ 回到 hadoop 目录: cd /usr/hadoop/hadoop-2.7.3 ⚫ 主节点开启服务: sbin/start-all.sh

  11. 使用 hadoop 命令“ hadoop fs ”进行相关操作。     5 、安装 hbase   1. 创建工作路径 /usr/hbase ,下载相应软件,解压至工作路径。 2. 进入 hbase 配置目录 conf ,修改配置文件 hbase-env.sh ,添加配置变量。 cd /usr/hbase/hbase-1.2.4/conf ⚫ vim hbase-env.sh 添加: export HBASE_MANAGES_ZK=false export JAVA_HOME=/usr/java/jdk1.8.0_171 export HBASE_CLAsspATH=/usr/hadoop/hadoop-2.7.3/etc/hadoop   3. 配置 conf/hbase-site.xml 文件 vim base-site.xml <property> <name>hbase.rootdir</name> <value>hdfs://master:9000/hbase</value> </property> <property> <name>hbase.cluster.distributed</name> <value>true</value> </property> <property> <name>hbase.master</name> <value>hdfs://master:6000</value> </property> <property> <name>hbase.zookeeper.quorum</name> <value>master,slave1,slave2</value> </property> <property> <name>hbase.zookeeper.property.dataDir</name> <value>/usr/zookeeper/zookeeper-3.4.10</value> </property>   解释: hbase.cluster.distributed : Hbase 的运行模式。 false 是单机模式, true 是分布式模式。若 24 2019 年第二届全国大学生大数据技能竞赛 25 为 false,Hbase 和 Zookeeper 会运行在同一个 JVM 里面。在 hbase-site.xml 配置 zookeeper ,当 Hbase 管理 zookeeper 的时候,你可以通过修改 zoo.cfg 来配置 zookeeper ,对于 zookeepr 的配 置,你至少要在 hbase-site.xml 中列出 zookeepr 的 ensemble servers ,具体的字段是 hbase.zookeeper.quorum. 在这里列出 Zookeeper 集群的地址列表,用逗号分割。 hbase.zookeeper.property.clientPort : ZooKeeper 的 zoo.conf 中的配置 , 客户端连接的端口。 hbase.zookeeper.property.dataDir : ZooKeeper 的 zoo.conf 中的配置。对于独立的 Zookeeper , 要指明 Zookeeper 的 host 和端口。需要在 hbase-site.xml 中设置。     4. 配置 conf/regionservers ,添加子节点 vim conf/regionservers 添加: slave1  slave2    在这里列出了希望运行的全部 HRegionServer ,一行写一个 host ( 就 Hadoop 里面的 slaver 一样 ) 。列在这里的 server 会随着集群的启动而启动,集群的停止而停止。 5.hadoop 配置文件拷入 hbase 的目录下 ( 当前目录为 /usr/hbase/hbase-1.2.4/conf) ⚫ cp /usr/hadoop/hadoop-2.7.3/etc/hadoop/hdfs-site.xml     usr/hbase/ ⚫ cp /usr/hadoop/hadoop-2.7.3/etc/hadoop/core-site.xml      usr/hbase/      6. 分发 hbase 到子节点 ⚫ scp -r /usr/hbase root@slave1:/usr/ ⚫ scp -r /usr/hbase root@slave2:/usr/   7. 配置环境变量(三台机器) ⚫ vim /etc/profile 配置环境变量 Hbase # set hbase environment export HBASE_HOME=/usr/hbase/hbase-1.2.4 export PATH=$PATH:$HBASE_HOME/bin ⚫ 生效环境变量: source /etc/profile 9. 运行和测试, master 上执行 ( 保证 hadoop zookeeper 已开启 ) ⚫ jps

      6 、安装 hive 实验中我们选用 hive 的远程模式, slave2 安装 MysqL server 用于存放元数据, slave1 作为 hive server 作为 thrift 服务器, master 作为 client 客户端进行操作。     6.1slave2 上安装 MysqL server 1. 配置过本地源了,安装 MysqL Server ⚫ 安装 MysqL : yum -y install MysqL-community-server

2. 启动服务 ⚫ 重载所有修改过的配置文件: systemctl daemon-reload ⚫ 开启服务: systemctl start MysqLd ⚫ 开机自启: systemctl enable MysqLd  

  3. 登陆 MysqL 安装完毕后, MysqL 会在 /var/log/MysqLd.log 这个文件中会自动生成一个随机的密码, 获取得这个随机密码,以用于登录 MysqL 数据库: ⚫ 获取初密码: grep "temporary password" /var/log/MysqLd.log ⚫ 登陆 MysqLMysqL -uroot -p(注意中英文 )  

  4.MysqL 密码安全策略设置 设置密码强度为低级: set global validate_password_policy=0; ⚫ 设置密码长度: set global validate_password_length=4; ⚫ 修改本地密码: alter user 'root'@'localhost' identified by '123456' ; ⚫ 退出: \q

  密码强度分级如下: ⚫ 0 为 low 级别,只检查长度; ⚫ 1 为 medium 级别(认),符合长度为 8 ,且必须含有数字,大小写,特殊字符 ; ⚫ 2 为 strong 级别,密码难度更大一些,需要包括字典文件。 ⚫ 密码长度最低长为 4 ,当设置长度为 1 、 2 、 3 时,其长度依然为 4   5. 设置远程登录 ⚫ 以新密码登陆 MysqLMysqL -uroot -p123456 ⚫ 创建用户: create user 'root'@'%' identified by '123456' ; ⚫ 允许远程连接: grant all privileges on *.* to 'root'@'%' with grant option ⚫ 刷新权限: flush privileges

  6. 创建数据库 test   create database if not exists test  ( hive>create database hive_db ;)   6.2 创建工作路径,解压安装包 创建工作路径 /usr/hive ,下载相应软件,解压至工作路径。 mkdir /usr/hive    下载:   wget http://172.16.47.240/bigdata /bigdata_tar/apache-hive-2.1.1-bin 解压:  tar -zxvf  环境中 master 作为客户端, slave1 作为服务器端,因此都需要使用到 hive 。因为 hive 相 关安装包存放在 master 中,因此我们先在 master 中对 hive 进行解压,然后将其复制到 slave1 中。   6.3 slave1 中建立文件 同样 slave1 上建立文件夹 /usr/hive ,然后 master 中将安装包远程复制到 slave1 。 ⚫ mkdir -p /usr/hive master 中将 hive 文件复制到 slave1 : ⚫ scp -r /usr/hive/apache-hive-2.1.1-bin root@slave1:/usr/hive/  

  修改 /etc/profile 文件设置 hive 环境变量。( master 和 slave1 都执行) ⚫ vim /etc/profile #set hive export HIVE_HOME=/usr/hive/apache-hive-2.1.1-bin export PATH=$PATH:$HIVE_HOME/bin  

  生效环境变量: source /etc/profile   6.4 解决版本冲突和 jar 包依赖问题 由于客户端需要和 hadoop 通信,所以需要更改 Hadoop 中 jline 的版本。即保留一个高版 本的 jline jar 包,从 hive 的 lib 包中拷贝到 Hadoop 中 lib 位置为 /usr/hadoop/hadoop-2.7.3/share/hadoop/yarn/lib 。 master 中执行)   cp /usr/hive/apache-hive-2.1.1-bin/lib/jline-2.12.jar  /usr/hadoop/hadoop-2.7.3/share/hadoop/yarn/lib/   因为服务端需要和 MysqL 通信,所以服务端需要将 MysqL 的依赖包放在 Hive 的 lib 目录 下。 slave1 中进行) ⚫ cd /usr/hive/apache-hive-2.1.1-bin/lib ⚫注意地址: wget http://10.10.30.2:8000 http://172.16.47.240 /bigdata/bigdata_tar/mysql-connector-java-5.1.47-bin.jar   6.5 Slave1 作为服务器端配置 hive 回到 slave1 ,修改 hive-env.sh 文件中 HADOOP_HOME 环境变量。进入 hive 配置目录, 因为 hive 中已经给出配置文件的范本 hive-env.sh.template ,直接将其复制一个进行修改即可: ⚫ cd $HIVE_HOME/conf ⚫ ls ⚫ cp hive-env.sh.template hive-env.sh ⚫ vim hive-env.sh  

  hive-env.sh 文件修改 HADOOP_HOME 环境变量。 HADOOP_HOME=/usr/hadoop/hadoop-2.7.3   3. 修改 hive-site.xml 文件

  vim hive-site.xml   <configuration> <!-- Hive 产生的元数据存放位置 --> <property> <name>hive.metastore.warehouse.dir</name> <value>/user/hive_remote/warehouse</value> </property> <!-- 数据库连接 JDBC 的 URL 地址 --> <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:MysqL://slave2:3306/hive?createDatabaseIfNotExist=true</value> </property> <!-- 数据库连接 driver ,即 MysqL 驱动 --> <property> <name>javax.jdo.option.ConnectionDriverName</name> <value>com.MysqL.jdbc.Driver</value> </property> <!-- MysqL 数据库用户名 --> <property> <name>javax.jdo.option.ConnectionUserName</name> <value>root</value> </property> <!-- MysqL 数据库密码 --> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>123456</value> </property> <property> <name>hive.metastore.schema.verification</name> <value>false</value> </property> <property> <name>datanucleus.schema.autocreateAll</name> <value>true</value> </property> </configuration>     6.6Master 作为客户端配置 hive 和 slave1 中配置方式类似,直接进入 1. 修改 hive-site.xml vim hive-site.xml   <configuration> 重复的: <!-- Hive 产生的元数据存放位置 --> <property> <name>hive.metastore.warehouse.dir</name> <value>/user/hive_remote/warehouse</value> </property> 添加的: <!--- 使用本地服务连接 Hive, 认为 true--> <property> <name>hive.metastore.local</name> <value>false</value> </property> <!-- 连接服务器 --> <property> <name>hive.metastore.uris</name> <value>thrift://slave1:9083</value> </property> </configuration>

 

2. 修改 hive-env.sh 中 HADOOP_HOME 环境变量:在conf下 vim  hive-env.sh HADOOP_HOME=/usr/hadoop/hadoop-2.7.3   6.7 成功启动 Hive 1. 启动 hive server 服务( slave1 上) ⚫ bin/hive --service metastore (注意空格)

  2. 启动 hive client(master 上 ) ⚫ bin/hive 测试 hive 是否启动成功 ⚫ hive>show databases;  

  创建数据库 hive_db ⚫ hive>create database hive_db;           7 、 Spark 安装   7.1 安装 scala 环境 任务要求如下:(三台机器) 1. 从本地源下载相应安装包,创建对应工作目录 /usr/scala ,并将工具解压至工作目录。   创建目录:  cd /usr   mkdir scala 下载:   wget  http://172.16.47.240/      (自己找一下在哪)类似    scala-2.12.2.tgz 解压:  tar  -zxvf  s   2. 配置 scala 的环境变量并生效: vim /etc/profile export SCALA_HOME=/usr/scala   (注意) export PATH=$PATH:$SCALA_HOME/bin   生效:  source /etc/profile   3. 查看 scala 是否安装成功:scala        类似

    7.2 安装 Spark 任务要求如下: 1. 从本地源下载相应安装包,创建对应工作目录 /usr/spark ,将工具解压至工作目录; 创建,进入  :  cd /usr   mkdir spark 下载: wget  http://172.16.47.240/    需要寻找下   2. 配置 conf/spark-env.sh 文件,设置要求如下; cd spark/conf  设置 master 为 SPARK 主节点 IP ( SPARK_MASTER_IP )   vim spark-env.sh   添加: export SPARK_MASTER_IP= master   设置 SCALA_HOME 、 JAVA_HOME 、 HADOOP_HOME export SCALA_HOME=/usr/scala export JAVA_HOME=/usr/java/jdk1.8.0_171 export HADOOP_HOME=/usr/hadoop/hadoop-2.7.3     设置 Hadoop 配置目录路径( HADOOP_CONF_DIR ) export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-"/etc/hadoop"}

  设置 spark 工作内存为 8G ( SPARK_WORKER_MEMORY )   export SPARK_WORKER_MEMORY=8g   3. 配置 spark 从节点,修改 slaves 文件; slave1 slave2 提示:注意 slaves 节点中只包含节点信息,其他注释不需要。 4. 向所有子节点发送 spark 配置好的安装包; 提示:即要求三台节点 spark 配置一致即可。   scp -r /usr/spark root@slave1:/usr/ scp -r /usr/spark root@slave2:/usr/ 5.三台机器都需要 设置 SPARK_HOME 环境变量,将 $SPARK_HOME/bin 加入到 PATH ; vim /etc/profile #set spark enviroment export $SPARK_HOME=/usr/spark export PATH=$PATH:$SPARK_HOME/bin 生效:  source /usr/spark    6. 开启 spark 服务; 提示:主节点执行   ./start-all.sh 类似:

  ./spark-shell 类似:

              爬虫:   bs4  + requests

      lxml  

                                 

 

 

 

 

 

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐