Hadoop环境搭建

一、节点详情

服务器 配置 组件
hadoop101 8核/16.0GB QuorumPeerMain,PrestoServer,Kafka,DataNode,NodeMananger,worker(spark)
hadoop102 8核/16.0GB QuorumPeerMain,PrestoServer(coordernary),Kafka,SecondaryNameNode,DataNode,NodeMananger,worker(spark)
hadoop103 8核/16.0GB QuorumPeerMain,PrestoServer,Kafka,DataNode,NodeMananger,worker(spark)
hadoop104 8核/16.0GB PrestoServer,DataNode,NodeMananger,worker(spark),HistoryServer,JobHistory
hadoop105 8核/16.0GB NameNode,ResourceManager,NodeMananger,Master(spark),PrestoServer,Metastore,HiveServer2

二、大数据集群环境准备

1.在所有机器下创建hadoop用户,并将其添加至sudoers中

useradd hadoop   #添加用户
passwd  hadoop   #更改用户密码 bigdata@123

设置hadoop用户具有root权限

vim /etc/sudoers

在 root ALL =(ALL) ALL 下添加一行

hadoop ALL = (ALL) ALL

2.关闭防火墙(所有机器)

CentOS 7.0 默认使用firewall作为防火墙

查看防火墙状态

firewall-cmd --state

停止防火墙

systemctl stop firewalld.service

禁止防火墙开机启动

systemctl disable firewalld.service

3.关闭selinux(所有机器)

vim /etc/selinux/config

#SELINUX=enforceing #注释掉

#SELINUXTYPE=targeted #注释掉

SELINUX=disabled #增加

4.做主机名与ip地址的映射(所有机器)

vim /etc/hosts

在最下面插入:

​ 192.177.10.101 hadoop101

​ 192.177.10.102 hadoop102

​ 192.177.10.103 hadoop103

​ 192.177.10.104 hadoop104

​ 192.177.10.105 hadoop105

​ 保存退出,每台机器同样的操作

5.重启系统

reboot

6. 5台机器配置免密码登录

第一步:使用hadoop用户在主节点(hadoop101)机器生成公钥和私钥

su hadoop
ssh-keygen -t rsa

执行该命令之后,按三下回车即可

由此生成一个公钥和私钥,存储在/home/hadoop/.ssh/下

第二步:将本机公钥传递给其他机器

ssh-copy-id hadoop@hadoop102
ssh-copy-id hadoop@hadoop103
ssh-copy-id hadoop@hadoop104
ssh-copy-id hadoop@hadoop105

第三步:测试免密码登录

在hadoop101节点上

ssh hadoop102

不需要输入密码时就表示配置成功.

第四步:第二台机器配置免密登录(hadoop105)

ssh-keygen -t rsa

执行该命令之后,按三下回车即可

第五步:将本机公钥传递给其他机器

scp id_rsa.pub hadoop101:$PWD
scp id_rsa.pub hadoop102:$PWD
scp id_rsa.pub hadoop103:$PWD
scp id_rsa.pub hadoop104:$PWD

第六步:将公钥追加到各机器的authorized_keys上

在其他机器上执行以下命令(使用hadoop用户)

cd /home/hadoop/.ssh
cat id_rsa.pub >> authorized_keys

7.JDK安装配置

第一步:卸载自带java

1、rpm查询java安装包名称

rpm -qa | grep java

2、删除

rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.232.b09-0.el7_7.x86_64
rpm -e --nodeps python-javapackages-3.4.1-11.el7.noarch
rpm -e --nodeps tzdata-java-2019c-1.el7.noarch
rpm -e --nodeps javapackages-tools-3.4.1-11.el7.noarch
rpm -e --nodeps java-1.8.0-openjdk-1.8.0.232.b09-0.el7_7.x86_64

第一步:解压jdk包

tar -zxvf jdk-8u11-linux-x64.tar.gz -C /app/

第二步:配置java环境变量

使用root用户

vim /etc/profile

在最下面插入

export JAVA_HOME=/app/jdk-1.8.0export PATH=$JAVA_HOME/bin:$PATH

第三步:使变量生效

source /etc/profile

第四步:测试

java -version

8.修改/etc/profile

在每台机器上使用root用户

vim /etc/profile

在最下面插入

export JAVA_HOME=/app/java-1.8.0
export SCALA_HOME=/app/scala-2.11.12
export HADOOP_HOME=/app/hadoop-3.1.2
export HIVE_HOME=/app/hive
export SPARK_HOME=/app/spark-2.4.3-bin-hadoop2.7
export PATH=$HIVE_HOME/bin:$JAVA_HOME/bin:$SCALA_HOME/bin:$HADOOP_HOME/sbin:$HADOOP_HOME/bin:$SPARK_HOME/bin:/app/hbase/bin:$PATH

使变量生效

source /etc/profile

以下安装过程,无特殊说明,均使用hadoop用户操作。

二、zookeeper安装

安装节点:hadoop101 (follower) ,hadoop102 (leader), hadoop103(follower)

使用hadoop用户

su hadoop

第一步:解压(hadoop101 )

cd /app
tar -zxvf apache-zookeeper-3.5.5-bin.tar.gz -C ./

第二步:修改配置文件

在hadoop101修改配置文件

cd /app/apache-zookeeper-3.5.5-bin/conf
cp zoo_sample.cfg zoo.cfg
mkdir -p /app/apache-zookeeper-3.5.5-bin/zkdatas/
vim zoo.cfg
dataDir=/app/apache-zookeeper-3.5.5-bin/zkdatas
autopurge.snapRetainCount=3
autopurge.purgeInterval=1
server.1=hadoop101:2888:3888
server.2=hadoop102:2888:3888
server.3=hadoop103:2888:3888

第三步:添加myid配置

在hadoop101执行以下命令

echo 1 > /app/apache-zookeeper-3.5.5-bin/zkdatas/myid

第四步:分发到其他机器并修改myid的值

在hadoop101执行以下命令

scp -r /app/apache-zookeeper-3.5.5-bin hadoop102:/app/scp -r /app/apache-zookeeper-3.5.5-bin hadoop103:/app/

在hadoop102执行以下命令

echo 2 > /app/apache-zookeeper-3.5.5-bin/zkdatas/myid

在hadoop103执行以下命令

echo 3 > /app/apache-zookeeper-3.5.5-bin/zkdatas/myid

第五步:三台机器启动zookeeper服务

在三台机器上分别执行以下命令

/app/apache-zookeeper-3.5.5-bin/bin/zkServer.sh start

查看启动状态

/app/apache-zookeeper-3.5.5-bin/bin/zkServer.sh status

三、hadoop安装

在hadoop105机器上操作

使用hadoop用户

su hadoop

第一步:解压

cd /app
tar -zxvf hadoop-3.1.2.tar.gz -C ./

第二步:修改6个配置文件

cd /app/hadoop-3.1.2/etc/hadoop
  1. 修改hadoop-env.sh
vi hadoop-env.sh

在最下面添加以下内容

export JAVA_HOME=/data/java-1.8.0
export HDFS_NAMENODE_USER="hadoop"
export HDFS_DATANODE_USER="hadoop"
export HDFS_SECONDARYNAMENODE_USER="hadoop"
  1. 修改core-site.xml
vi core-site.xml
<configuration><property><name>fs.defaultFS</name><value>hdfs://hadoop105:9000</value></property><property><name>hadoop.tmp.dir</name><value>file:/app/hadoop-3.1.2/tmp</value></property><property><name>hadoop.proxyuser.hadoop.hosts</name><value>*</value></property><property><name>hadoop.proxyuser.hadoop.groups</name><value>*</value></property><property><name>hadoop.http.staticuser.user</name><value>hadoop</value></property>
</configuration>
  1. 修改配置文件 hdfs-site.xml
vi hdfs-site.xml
<configuration><property><name>dfs.replication</name><value>2</value></property><property><name>dfs.namenode.secondary.http-address</name><value>hadoop102:9868</value>    </property><property><name>dfs.name.dir</name><value>/data/dfs/name</value></property><property><name>dfs.data.dir</name><value>/data/dfs/data</value></property><property><name>dfs.webhdfs.enabled</name><value>true</value></property></configuration>
  1. 修改配置文件 mapred-site.xml
vi mapred-site.xml
<configuration><property><name>mapreduce.framework.name</name><value>yarn</value></property><property><name>yarn.app.mapreduce.am.env</name><value>HADOOP_MAPRED_HOME=$HADOOP_HOME</value></property><property><name>mapreduce.map.env</name><value>HADOOP_MAPRED_HOME=$HADOOP_HOME</value></property><property><name>mapreduce.reduce.env</name><value>HADOOP_MAPRED_HOME=$HADOOP_HOME</value></property><property><name>mapreduce.map.memory.mb</name><value>2048</value></property><property>  <name>mapreduce.jobhistory.address</name>  <value>hadoop104:10020</value>  </property>  <property>  <name>mapreduce.jobhistory.webapp.address</name>  <value>hadoop104:19888</value>  </property></configuration>
  1. 修改配置文件yarn-site.xml
vi yarn-site.xml
-+<configuration><!-- Site specific YARN configuration properties --><property><name>yarn.resourcemanager.hostname</name><value>hadoop105</value></property><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property><property><name>yarn.nodemanager.vmem-check-enabled</name><value>false</value></property><property><name>yarn.nodemanager.vmem-pmem-ratio</name><value>5</value></property><property><name>yarn.nodemanager.localizer.cache.cleanup.interval-ms</name><value>600000</value></property><property><name>yarn.log-aggregation.retain-seconds</name><value>604800</value></property><property><name>yarn.log.server.url</name><value>http://hadoop104:19888/jobhistory/logs/</value></property><property><name>yarn.log-aggregation-enable</name><value>true</value></property>
</configuration>
  1. 修改workers
vi workers
hadoop101
hadoop102
hadoop103
hadoop104

第三步:分发到其他机器上

scp -r /app/hadoop-3.1.2 hadoop101:/app/
scp -r /app/hadoop-3.1.2 hadoop102:/app/
scp -r /app/hadoop-3.1.2 hadoop103:/app/
scp -r /app/hadoop-3.1.2 hadoop104:/app/

第四步:启动hadoop

  1. 对hadoop进行初始化
cd /app/hadoop-3.1.2/bin
hdfs namenode -format  #只在第一次启动时执行一次
  1. 启动
cd /app/hadoop-3.1.2/sbin
start-all.sh./yarn-daemon.sh start nodemanager在hadoop104机器上
cd /app/hadoop-3.1.2/sbin
./mr-jobhistory-daemon.sh start historyserver 手动启动jobhistory

第五步:验证

在浏览器输入:hadoop105:9870

在浏览器输入:hadoop105:8088

四、mysql安装(hadoop用户)

使用hadoop用户

su hadoop

第一步:解压(hadoop105)

cd /app
tar -zxvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz -C ./
#改名
mv mysql-5.7.26-linux-glibc2.12-x86_64 mysql

第二步:编辑my.cnf配置文件,配置文件路径/app/mysql/my.cnf 。

cd /app/mysql
vi my.cnf
[client]
port=3336
socket=/app/mysql/mysql.sock  [mysqld]
port=3336
basedir=/app/mysql
datadir=/app/mysql/data
pid-file=/app/mysql/mysql.pid
socket=/app/mysql/mysql.sock
log_error=/app/mysql/error.log
lower_case_table_names=1server-id=100

第三步:修改/etc/my.cnf

sudo vi /etc/my.cnf
[mysqld]
datadir=/app/mysql
socket=/app/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
lower_case_table_names=1
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd[mysqld_safe]
log-error=/app/mysql/error.log
pid-file=/app/mysql/mysql.pid#
# include all files from the config directory
#
!includedir /etc/my.cnf.d

第四步:开始初始化mysql

bin/mysqld \
--defaults-file=/app/mysql/my.cnf \  #指定配置文件
--initialize \  #自动生成带随机密码的root用户
--user=hadoop \
--basedir=/app/mysql \
--datadir=/app/mysql/data

第五步:启动mysql

bin/mysqld_safe \
--defaults-file=/app/mysql/my.cnf \
--user=hadoop &

第六步:配置sock软连接

ln -s /app/mysql/mysql.sock /tmp/mysql.sock

第七步:在error.log文件中获取密码

[hadoop@SZD-L0303201 mysql]$ cat error.log | grep root@localhost
2018-04-06T16:58:03.281117Z 1 [Note] A temporary password is generated for root@localhost: rusp/wq+!0H- #这是临时密码

第八步:登录mysql

[hadoop@SZD-L0303201 mysql]$ bin/mysql -u root -p
mysql>
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');#修改密码
mysql>grant all privileges on *.* to root@'%' identified by "123456";
mysql> FLUSH PRIVILEGES;
mysql> create database hive;  #创建数据库hive
mysql> exit;

第九步:设置开机自启动

sudo  cp /app/mysql/support-files/mysql.server /etc/init.d/mysql
chkconfig --list mysql

四、mysql安装(root用户)

第一步:安装mysql相关包(hadoop105)

rpm -ivh mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql-community-server

第二步:启动mysql的服务

systemctl start mysqld
systemctl enable mysqld

第三步:获取临时密码

grep 'temporary password' /var/log/mysqld.log

第四步:进入mysql进行授权

mysql -uroot -p
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');#修改密码
mysql> grant all privileges on *.* to root@'%' identified by "123456";
mysql> FLUSH PRIVILEGES;
mysql> create database hive;  #创建数据库hive
mysql> exit;

五、hive安装

使用hadoop用户

su hadoop

第一步:解压(hadoop105)

cd /app
tar -zxvf apache-hive-3.1.1-bin.tar.gz -C ./
#改名
mv apache-hive-3.1.1-bin hive

第二步:修改配置文件

  1. 修改hive-site.xml
cd /app/hive/conf
vi hive-site.xml
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration><property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://hadoop105:3306/hive?useSSL=false&amp;createDatabaseIfNotExist=true&amp;useUnicode=true&amp;characterEncoding=UTF-8</value></property><property><name>javax.jdo.option.ConnectionDriverName</name><value>com.mysql.jdbc.Driver</value></property><property><name>javax.jdo.option.ConnectionUserName</name><value>root</value></property><property><name>javax.jdo.option.ConnectionPassword</name><value>123456</value></property><property><name>hive.cli.print.current.db</name><value>true</value></property><property><name>hive.cli.print.header</name><value>true</value></property><property><name>hive.metastore.uris</name><value>thrift://hadoop105:9083</value></property><property><name>datanucleus.schema.autoCreateAll</name><value>true</value></property><property><name>hive.exec.scratchdir</name><value>hdfs://hadoop105:9000/hive/temp</value></property><property><name>hive.metastore.warehouse.dir</name><value>hdfs://hadoop105:9000/hive/warehouse</value></property><property><name>hive.server2.support.dynamic.service.discovery</name><value>true</value></property><property><name>hive.server2.zookeeper.namespace</name><value>hiveserver2_zk</value></property><property><name>hive.zookeeper.quorum</name><value> hadoop101:2181,hadoop102:2181,hadoop103:2181</value></property><property><name>hive.zookeeper.client.port</name><value>2181</value></property><property><name>hive.server2.zookeeper.publish.configs</name><value>true</value></property>
</configuration>
  1. 修改hive-env.sh
cp hive-env.sh.template hive-env.sh
vim hive-env.sh

修改这两个配置

HADOOP_HOME=/app/hadoop-3.1.2export HIVE_CONF_DIR=/app/hive/conf
export HIVE_AUX_JARS_PATH=/app/hive/lib

第三步:上传mysql的lib驱动包

cd /app/hive/lib

将mysql-connector-java-5.1.47.jar上传到这个目录下

第四步:初始化hive

cd /app/hive/bin
schematool -dbType mysql -initSchema

初始化成功后,mysql的hive数据库中会自动创建表;

到mysql中查看,一共有74张表。

第五步:进入mysql中的hive库,执行5条sql语句

1.进入mysql中的hive库

mysql -u root -p 123456
use hive;

2.修改表字段注解和表注解

alter table COLUMNS_V2 modify column COMMENT varchar(256) character set utf8;
alter table TABLE_PARAMS modify column PARAM_VALUE varchar(4000) character set utf8;

3.修改分区字段注解

alter table PARTITION_PARAMS modify column PARAM_VALUE varchar(4000) character set utf8 ;
alter table PARTITION_KEYS modify column PKEY_COMMENT varchar(4000) character set utf8;

4.修改索引注解

alter table INDEX_PARAMS modify column PARAM_VALUE varchar(4000) character set utf8;

第六步:分发到其他机器

scp -r /app/hive hadoop104:/app/

第七步:启动metastore服务和hiveserver2服务

cd /app/hive/bin
nohup hive --service metastore &                (在hadoop105执行)
nohup  hive --service hiveserver2 &             (在hadoop105执行)
nohup  hive --service hiveserver2 &             (在hadoop104执行)

第八步:beeline连接hiveserver2

cd /app/hive/bin
./beelinebeeline>!connect jdbc:hive2://hadoop102:2181,hadoop101:2181,hadoop103:2181/;serviceDiscoveryMode=zooKeeper;zooKeeperNamespace=hiveserver2_zk?tez.queue.name=hive1&hive.server2.thrift.resultset.serialize.in.tasks=true hadoop "bigdata@123"

六、spark安装

使用hadoop用户

su hadoop

第一步:安装scala(hadoop105)

1、解压

cd /app
tar -zxvf scala-2.11.12.tgz -C ./

2、分发到其他机器

scp -r /app/scala-2.11.12 hadoop101:/app/
scp -r /app/scala-2.11.12 hadoop102:/app/
scp -r /app/scala-2.11.12 hadoop103:/app/
scp -r /app/scala-2.11.12 hadoop104:/app/

第一步:解压(hadoop105)

cd /app
tar -zxvf spark-2.4.3-bin-hadoop2.7.tgz -C ./

第二步:修改配置文件

  1. spark-env.sh
cd /app/spark-2.4.3-bin-hadoop2.7/conf
cp spark-env.sh.template spark-env.sh
vim spark-env.sh
export JAVA_HOME=/app/jdk-1.8.0
export SCALA_HOME=/app/scala-2.11.12
export HADOOP_HOME=/app/hadoop-3.1.2
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export SPARK_MASTER_IP=hadoop105
export SPARK_HISTORY_OPTS="-Dspark.history.ui.port=18080 -Dspark.history.retainedApplications=3 -Dspark.history.fs.logDirectory=hdfs://hadoop105:9000/history"
export SPARK_DIST_CLASSPATH=$(/app/hadoop-3.1.2/bin/hadoop classpath)
  1. slaves
cp slaves.template slaves
vim slaves

在最下面加入

hadoop104
hadoop103
hadoop102
hadoop101

3.hive-site.xml

将/app/hive/conf/hive-site.xml拷贝到spark的conf目录下

cp /app/hive/conf/hive-site.xml /app/spark-2.4.3-bin-hadoop2.7/conf/hive-site.xml

4.spark-defaults

cd /app/spark-2.4.3-bin-hadoop2.7/conf
cp spark-defaults.conf.template spark-defaults.conf
vi spark-defaults

在文件下面输入

spark.eventLog.enabled           true
spark.eventLog.dir               hdfs://hadoop105:9000/history
spark.eventLog.compress          true
spark.yarn.jars     hdfs://hadoop105:9000/spark-runtime/jars/*

在HDFS中建立存放目录

[hadoop@SZD-L0303201 conf]$ hadoop dfs -mkdir /history
[hadoop@SZD-L0303201 conf]$ hadoop dfs -mkdir /spark-runtime/

在浏览器输入:http://hadoop105:9870/explorer.html#/

第三步:上传mysql的lib驱动包

cd /app/spark-2.4.3-bin-hadoop2.7/jars

将mysql-connector-java-5.1.47.jar上传到这个目录下

上传jars包到hdfs目录下:

[hadoop@SZD-L0303201 conf]$ hadoop dfs -put /app/spark-2.4.3-bin-hadoop2.7/jars/ /spark-runtime/

第四步:分发到其他节点

scp -r /app/spark-2.4.3-bin-hadoop2.7 hadoop104:/app/
scp -r /app/spark-2.4.3-bin-hadoop2.7 hadoop103:/app/
scp -r /app/spark-2.4.3-bin-hadoop2.7 hadoop102:/app/
scp -r /app/spark-2.4.3-bin-hadoop2.7 hadoop101:/app/

第五步:启动spark

cd /app/spark-2.4.3-bin-hadoop2.7
./sbin/start-all.sh   (在hadoop105,一般不启动)
./sbin/start-history-server.sh      (在hadoop104)

第六步:验证

通过spark提供的web接口查看系统状态,各节点都可以:

hadoop105:8080

hadoop103:8081

hadoop104:8081

history:hadoop104:18080

七、Kafka安装(可选)

注:需安装启动zookeeper先,参考zookeeper安装

  1. hadoop用户登录 hadoop102 创建Kafka安装目录,上传安装包并解压

    使用hadoop用户

    su hadoop
    

    mkdir /app/kafka

    tar -xzvf kafka_2.11-2.3.0.tgz

  2. 修改配置文件

    vim /app/kafka/kafka_2.11-2.3.0/config/server.properties

    • 修改zk

      zookeeper.connect=hadoop102:2181,hadoop101:2181,hadoop103:2181

    • 修改broker.id

      broker.id=01

  3. 分发到其他节点

    scp -r /app/kafka/ hadoop@hadoop103:/app/kafka/

    scp -r /app/kafka/ hadoop@hadoop101:/app/kafka/

  4. 登录其他节点修改broker.id

    登录 hadoop101

    vim /app/kafka/kafka_2.11-2.3.0/config/server.properties

    broker.id=02

    登录 hadoop103

    vim /app/kafka/kafka_2.11-2.3.0/config/server.properties

    broker.id=03

  5. 启动

    分别进入kafka节点执行:

    nohup /app/kafka/kafka_2.11-2.3.0/bin/kafka-server-start.sh /app/kafka/kafka_2.11-2.3.0/config/server.properties &>>/app/kafka/kafka_2.11-2.3.0/kafka.log &
    
  6. 验证

    • 进入kafka目录

      cd /app/kafka/kafka_2.11-2.3.0/

    • 在master节点创建topic-test

      ./bin/kafka-topics.sh --create --zookeeper hadoop102:2181,hadoop101:2181,hadoop103:2181 --replication-factor 3 --partitions 3 --topic test

    • 在hadoop102、hadoop101、hadoop103节点上查看已创建的topic信息

      cd /app/kafka/kafka_2.11-2.3.0/

      ./bin/kafka-topics.sh --list --zookeeper hadoop102:2181,hadoop101:2181,hadoop103:2181

    • 在hadoop102节点上启动生产者

      ./bin/kafka-console-producer.sh --broker-list hadoop102:9092,hadoop101:9092,hadoop103:9092 --topic test

      输入:hello kafka!

    • 在hadoop101上启动控制台消费者

      ./bin/kafka-console-consumer.sh --bootstrap-server hadoop102:9092,hadoop101:9092,hadoop103:9092 --from-beginning --topic test

      能收到 hello kafka!

八、Presto安装

  1. hadoop用户登录 hadoop102 创建presto安装目录,上传安装包并解压

    su hadoop

    mkdir /app/presto

    tar -xzvf presto-server-0.220.tar.gz

  2. 进入presto安装目录,创建文件夹etc,并创建相关配置文件

    cd /app/presto/presto-server-0.220

    mkdir etc

    • vim etc/node.properties

      输入以下内容:

      node.environment=production
      node.id=presto001
      node.data-dir=/data/presto
      
    • vim etc/jvm.config

      输入以下内容:

      -server
      -Xmx16G
      -XX:+UseG1GC
      -XX:G1HeapRegionSize=32M
      -XX:+UseGCOverheadLimit
      -XX:+ExplicitGCInvokesConcurrent
      -XX:+HeapDumpOnOutOfMemoryError
      -XX:+ExitOnOutOfMemoryError
      
    • vim etc/config.properties

      输入以下内容:

      coordinator=true
      node-scheduler.include-coordinator=false
      http-server.http.port=8888
      query.max-memory=20GB
      query.max-memory-per-node=2GB
      query.max-total-memory-per-node=4GB
      discovery-server.enabled=true
      discovery.uri=http://hadoop102:8888
      
    • vim etc/log.properties

      输入以下内容:

      com.facebook.presto=INFO
      
    • mkdir etc/catalog

    • vim etc/catalog/mysql.properties

      输入以下内容:

    connector.name=mysql
    connection-url=jdbc:mysql://30.23.4.135:3306
    connection-user=admin
    connection-password=paic1234
    
    • vim etc/catalog/hive.properties

      输入以下内容:

      connector.name=hive-hadoop2
      hive.metastore.uri=thrift://hadoop105:9083
      
  3. 将presto文件拷贝至work节点

    scp -r /app/presto/ hadoop@hadoop101:/app/presto/

    scp -r /app/presto/ hadoop@hadoop105:/app/presto/

    scp -r /app/presto/ hadoop@hadoop103:/app/presto/

    scp -r /app/presto/ hadoop@hadoop104:/app/presto/

  4. 修改work节点配置文件

    分别登录work节点,执行:

    • vim /app/presto/presto-server-0.220/etc/node.properties

      修改node.id,保证唯一即可。本例按顺序依次修改为presto002-presto005

    • vim /app/presto/presto-server-0.220/etc/config.properties

      coordinator=false
      http-server.http.port=8888
      query.max-memory=20GB
      query.max-memory-per-node=2GB
      query.max-total-memory-per-node=4GB
      discovery.uri=http://hadoop102:8888
      
    • 启动服务(每个节点)
      cd /

      ./app/presto/presto-server-0.220/bin/launcher start

  5. coordinator节点配置presto-cli工具

    • hadoop用户上传presto-cli-0.200-executable.jar 至 hadoop102 : /app/presto/presto-server-0.220/bin/ 目录

    • 改名为presto-cli ,增加可执行权限

      mv /app/presto/presto-server-0.220/bin/presto-cli-0.200-executable.jar /app/presto/presto-server-0.220/bin/presto-cli

      chmod +x /app/presto/presto-server-0.220/bin/presto-cli

    • 验证presto-cli

      cd /

      ./app/presto/presto-server-0.220/bin/presto-cli --server hadoop102:8888 --catalog hive

      输入 show schemas;

      输入 exit; 退出

  6. 验证

    登录 http://hadoop102:8888 检查 ACTIVE WORKERS是否为4

大数据Hadoop平台搭建(Apache)相关推荐

  1. 【大数据】大数据 Hadoop 管理工具 Apache Ambari(HDP)

    文章目录 一.概述 二. Ambari 与 HDP 关系 三.Ambari 与 Cloudera manager 的对比 1)开源性 2)支持的发行版 3)用户界面 4)功能和扩展性 5)社区支持和生 ...

  2. 京东手机电商大数据统计平台搭建

    京东手机电商大数据统计平台搭建 一.虚拟机搭建 1.下载虚拟机 2.解压虚拟机 3.VMware扫描添加虚拟机 4.虚拟机网络说明 5.虚拟机已安装软件和框架说明 二.核心代码 三.数据展示环境搭建 ...

  3. 大数据基础平台搭建-(一)基础环境准备

    大数据基础平台搭建-(一)基础环境准备 大数据平台系列文章: 1.大数据基础平台搭建-(一)基础环境准备 2.大数据基础平台搭建-(二)Hadoop集群搭建 3.大数据基础平台搭建-(三)Hadoop ...

  4. PPT报告直接领,这份51页「大数据决策分析平台搭建方案」真的很值

    回复「大数据方案」,直接领取51页<大数据决策分析平台搭建方案>PPT. 对于国内企业而言,企业数据的常见问题至少包含以下几点: 数据分散,多套系统并行,数据孤岛问题严重 数据体量大,存储 ...

  5. 实训——基于大数据Hadoop平台的医疗平台项目实战

    文章目录 医疗平台项目描述 数据每列的含义 数据分析业务需求 架构图 成果图 环境搭建 医疗平台项目描述 本次项目实训的目的是创建一个基于医疗行业问诊的通用数据分析平台.该平台立足于医疗行业背景,以采 ...

  6. 【博学谷学习记录】超强总结,用心分享 | 狂野大数据Hadoop的搭建~个人学习复习记录~PART-01

    前提:Hadoop集群搭建方案,这里要搭建HDFS和Yarn集群 HDFS: NameNode:node1 SecondaryNameNode:node2 DataNode:node1.node2.n ...

  7. 图解大数据 | 分布式平台Hadoop与Map-Reduce详解

    作者:韩信子@ShowMeAI 教程地址:https://www.showmeai.tech/tutorials/84 本文地址:https://www.showmeai.tech/article-d ...

  8. 大数据多维分析平台的实践

    大数据多维分析平台的实践 一.  大数据多维分析平台搭建的初心 随着公司业务量的增长,基于传统关系型数据库搭建的各种报表查询分析系统,性能下降明显.同时由于大数据平台的的日趋完善,实时的核心业务数据逐 ...

  9. 拥有一亿会员的爱奇艺如何搭建大数据实时分析平台

    生活在信息爆炸时代的我们越来越清晰的认识到海量信息与数据分析的重要性,如提高数据挖掘能力.为运营决策提供关键数据.通过数据分析助力业务创新.在商业决策中的提供较有价值的信息等成为关键,于是大数据分析平 ...

最新文章

  1. Apache Commons-logging使用实例
  2. gdb调试android
  3. post 表单中常见的四种表单请求方式
  4. JavaScript 刷新当前页面
  5. c语言分治算法求最大值,分治法找最大值(C語言)
  6. 信号通讯编程,王明学learn
  7. [Java]进程与线程的区别(转)
  8. [线筛五连]线筛约数和
  9. 推荐几款好用的电脑定时执行软件 - 定时执行专家
  10. 得到知乎注册进行体验,谈谈感受
  11. Android 8.1user版本默认开启开发者模式
  12. 7.13 编程序,比较字符串大小。
  13. 第七天 位置参数 变量运算if case || find locate compress
  14. python使用moviepy对视频提取音频和增加音频
  15. 阿里巴巴国际站如何发布高质量的产品?
  16. 虚拟机防火墙以及端口操作
  17. 第三种是经典著作阅读法
  18. 批归一化作用_批归一化(Batch Normalization)
  19. Python 面向对象进阶
  20. 慕课-初识 学习ts笔记

热门文章

  1. 大数据和人工智能到来的问题,主要有哪些?
  2. GC8416/CS8416光纤同轴数字音频接收器 CS8416国产替代
  3. CAS 票根‘ST-xxxxx‘不符合目标服务问题解决
  4. php计算获取抖音签名
  5. 北京指标能单独继承吗?怎么继承?
  6. WMS仓库管理系统相关概念
  7. 基于K-means算法的客户分群知识
  8. 细节决定能全网PING通————网络实验记录
  9. 计算机网络——物理层(数字传输系统)
  10. debian 显示器使用自定义分辨率