澳门美高梅手机网站单机安装hadoop+hive+presto

卿的 物品DB 添加的传奇传送石  触发序号
与QFunction-0.txt中相应的@StdModeFuncX 不针对承诺  例如我之  比奇传送石
的触发脚本是 [@StdModeFunc17]  这自己DB中填入的触发序号就是17 下列是
我的QFunction-0.txt 触发脚本[@StdModeFunc前面的数字就是触发序号
与DB的Anicount值 对应!!

 

 

系环境

[@StdModeFunc17] 

当个体台式机上选用virtualbox虚拟机

#IF

os:centos -7.x86-64.everything.1611  ,内核 3.10.0-514.el7.x86_64

#ac

流动:同样好运用rhel7.3来设置。

tmapmove 0 327 272 

内存:2.5
g,推荐外存4g,否则
内存太少,运行得稍微慢。

 

安组件包括:

证实:@StdModeFunc17 数据库调用 17

hadoop-2.8.0

      tmapmove 0 327 272  表示执行地图0 前边是坐标、

apache-hive-2.1.1

presto-server-0.177

mysql-community-server-5.7.18-1.el7.x86_64

oracle jdk1.8.0_131

 

流动:
hadoop的下令,在2.8.0惨遭援引是以hadoop起先,而未是hdfs,后者是一个向下兼容的主意。

如hdfs dfs -mkdir /test 在2.8.0遭遇之写法就是

hadoop fs -mkdir /test

出于设置之当儿,使用的凡老的安装文档,所以依旧以hdfs。可是个人严重提出下hadoop命令。


首先步:创设用户与安排网络,并安排ssh连接,关闭不必要效能

1.0 关闭不必要功用

流淌:这仅是一个测试环境,正式环境或无克关闭防火墙和selinux

systemctl stop firewalld

systemctl disable firewalld    —禁止防火强被启动

setenforce 0    — 关闭selinux

修改/etc/selinux/config ,设定 SELINUX=disabled  –测底关闭selinux

 

1.1 创制用户

开创用户hadoop,并以/home/hadoop作为颇具组件的Home,java例外

 

1.2 修改网络布局

修改 /etc/hosts,内容如下:

127.0.0.1   localhost localhost.localdomain localhost4
localhost4.localdomain4
::1         localhost localhost.localdomain localhost6
localhost6.localdomain6
192.168.1.199 bigdata.lzf

 

1.3 配置ssh 连接

包是当/home/hadoop目下,执行以下命令

ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

chmod 0600 ~/.ssh/authorized_keys

确认ssh bigdata.lzf 不需要输入任何密码

注:有的人使用dsa,这个看具体系统。

 

第二步:安装jdk

动用root的地位解压jdk到 /usr/local/jdk1.8.0_131

 

第三步:安装mysql

3,.1 下载安装

其一是利用root账户来安装的,并且利用rpm包安装。

是因为是本默认已经设置了maridb,所以只好卸载默认安装的有零部件。

下一场启动mysql

systemctl start mysqld

 

3.2 修改密码

由于是比新的mysql版本,使用起来相比累。遵照以下步骤:

先是修改/etc/my.cnf ,添加: skip-grant-tables
mysql -u root
Use mysql;
update mysql.user set authentication_string=password(‘xxxxxx’) where
user=’root’;
commit;
flush privileges;
set password=password(‘xxxxxx’);

3.3 创立库并授权

下一场退出mysql,重新登录
mysql – u root -p

—以下几单步骤是为安Hive准备

create database metastore;
grant all on metastore.* to  ‘root’@’%’ identified by ‘xxxxxx’;
grant all on metastore.* to  ‘root’@’localhost’  identified by
‘xxxxxx’;
grant all on metastore.* to  ‘root’@’bigdata.lzf’  identified by
‘xxxxxx’;

 

第四步:安装hadoop

切换到hadoop用户。

解压hadoop包到/home/hadoop/hadoop-2.8.0

 

4.1
修改环境变量.bash_profile

export JAVA_HOME=/usr/local/jdk1.8.0_131
export HADOOP_HOME=/home/hadoop/hadoop-2.8.0
export HADOOP_CONF_DIR=/home/hadoop/hadoop-2.8.0/etc/hadoop
export HADOOP_YARN_HOME=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export
PATH=$PATH:$HOME/.local/bin:$HOME/bin:$JAVA_HOME/bin:$HADOOP_HOME/bin

保存后,执行source  .bash_profile

4.2 创制目录

mkdir  -p  /home/hadoop/hadoop/tmp
mkdir -p  /home/hadoop/hadoop/hdfs
mkdir -p  /home/hadoop/hadoop/hdfs/data
mkdir -p /home/hadoop/ hadoop/hdfs/name

进去目录 /home/hadoop/hadoop-2.8.0/etc/hadoop

若果无以下列出的文本,需要把.template的复制为没.template的文件

例如

cp mapred-site.xml.template  mapred-site.xml

 

4.3 配置
hadoop-env.sh,yarn-env.sh,mapred-env.sh

各自以文书前添加以下内容:

 export JAVA_HOME=/usr/local/jdk1.8.0_131

4.4 配置 core-site.xml

<property>
 <name>fs.defaultFS</name>
 <value>hdfs://bigdata.lzf:9001</value>
 <description>HDFS的URI,文件系统://namenode标识:端口号,默认是9000</description>
</property>
<property>
 <name>hadoop.tmp.dir</name>
 <value>/home/hadoop/data_hadoop/tmp</value>
 <description>namenode上地面的hadoop临时文件夹</description>
</property>
<property>
  <name>ipc.client.connect.max.retries</name>
  <value>100</value>
  <description>默认10涂鸦,现在布局100涂鸦</description>
</property>
<property>
  <name>ipc.client.connect.retry.interval</name>
  <value>10000</value>
  <description>连接间隔1分钟,默认是0.1秒</description>
</property>
  –为了权限,例如通过beeline之类的经走访,必须 参考
http://hadoop.apache.org/docs/r2.8.0/hadoop-project-dist/hadoop-common/Superusers.html
  长以下内容:
<property>
 <name>hadoop.proxyuser.hadoop.hosts</name>
 <value>*</value>
</property>
<property>
 <name>hadoop.proxyuser.hadoop.groups</name>
 <value>*</value>
</property>
#夫是报hadoop集群,用户hadoop和组hadoop可以擅自拜访

 

4.5 配置hdfs-site.xml

<property>
    <name> dfs.namenode.name.dir</name>
    <value>/home/hadoop/data_hadoop/hdfs/name</value>
    <description>namenode上囤积hdfs名字空间元数据
</description>
</property>
<property>
    <name> dfs.datanode.data.dir</name>
    <value>/home/hadoop/data_hadoop/hdfs/data</value>
   
<description>datanode上数据块的情理存储地点</description>
</property>
<property>
    <name>dfs.replication</name>
    <value>1</value>
   
<description>副本个数,配置默认是3,应低于datanode机器数量</description>
</property>
<property>
 <name>dfs.namenode.rpc-address</name>
 <value>bigdata.lzf:9001</value>
 <description>RPC address that handles all clients
requests。有人说要以及fs.defaultFS 一样捧口</description>
</property>

 

4.6 配置mapred-site.xml

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

 

4.7 配置yarn-site.xml

<configuration>
<property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
</property>
<property>
        <name>yarn.resourcemanager.webapp.address</name>
        <value>bigdata.lzf:8099</value>
        <description>用于管理集群的资源,可以经浏览器访问
</description>
</property>
<property>
        <name>yarn.nodemanager.webapp.address</name>
        <value>bigdata.lzf:8042</value>
        <description>用于管理节点,可以经过浏览器访问
</description>
</property>
</configuration>

 

4.8 修改slaves

加上以下内容

bigdata.lzf

 

4.9
修改日志文件log4j.properties

添加内容如下:

log4j.logger.org.apache.hadoop.util.NativeCodeLoader=DEBUG

 

4.10 启动并表明

$HADOOP_HOME/bin/hdfs namenode –format    –这多少个执行同一蹩脚即可。

$HADOOP_HOME/sbin/start-dfs.sh

$HADOOP_HOME/sbin/start-yarn.sh

施行jps,至少应当看到以下内容:

13664 ResourceManager

13511 SecondaryNameNode

12523 DataNode

12396 NameNode

13789 NodeManager

下一场下telnet查看有关的端口,这里是8042,8099,9001

个中8042,8099足以通过浏览器查看:

http://bigdata.lzf:8099

最后,可以使用部分普遍命令例如:

hdfs dfs -mkdir -p /tmp/imput

hdfs dfs -mkdir -p /tmp/output

注:/tmp/input 并非操作系统的途径,而是一个相对路径,相对于
dfs.datanode.data.dir 的路径,但连无得以向来翻。

hdfs dfs -ls /tmp     –查看路径/tmp

hdfs dfs -lsr /tmp  –查看路径/tmp下的 ,等同于 hdfs dfs -ls -R /tmp

 

第五步:安装hive2

presto需要以metastore,所以要装hive,这些起新型的合法组织图可以见到。

澳门美高梅手机网站 1

5.1 下充斥解压

解压到/home/hadoop/apache-hive-2.1.1-bin

5.2 准备hdfs路径

hdfs dfs -mkdir -p /warehouse
hdfs dfs -mkdir -p /tmp/hive
hdfs dfs -chmod 773 /warehouse
hdfs dfs -chmod 773 /tmp/hive

横流:目录给什么无所谓,看个人欣赏好。

5.3 配置环境变量

export HIVE_HOME=/home/hadoop/apache-hive-2.1.1-bin
export HIVE_CONF_DIR=/home/hadoop/apache-hive-2.1.1-bin/conf
export
HCAT_LOG_DIR=/home/hadoop/apache-hive-2.1.1-bin/hcatalog/sbin/logs

export
PATH=$PATH:$HOME/.local/bin:$HOME/bin:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HIVE_HOME/bin

然后 source .bash_profile

5.4 修改各类配置文件

cd $HIVE_HOME/conf


修改 hive-env.sh


# 下边是CLASSPATH貌似没有起及意向,不过未伤行使。

export
CLASSPATH=/home/hadoop/apache-hive-2.1.1-bin/lib/log4j-slf4j-impl-2.4.1.jar
export JAVA_HOME=/usr/local/jdk1.8.0_131
export HADOOP_HOME=/home/hadoop/hadoop-2.8.0
export HIVE_HOME=/home/hadoop/apache-hive-2.1.1-bin
# Hive Configuration Directory can be controlled by:
export HIVE_CONF_DIR=/home/hadoop/apache-hive-2.1.1-bin/conf


修改hive-site.xml


先复制hive-default.xml -> hive-site.xml文件

<property>
 <name>javax.jdo.option.ConnectionURL</name>
 <!–<value>jdbc:derby:;databaseName=metastore_db;create=true</value>–>
 <value>jdbc:mysql://bigdata.lzf:3306/metastore?=createDatabaseIfNotExist=true&useSSL=false</value>
 <description>JDBC connect string for a
JDBCmetastore</description>
</property>
<property>
 <name>javax.jdo.option.ConnectionDriverName</name>
 <!–<value>org.apache.derby.jdbc.EmbeddedDriver</value>–>
 <value>com.mysql.jdbc.Driver</value>
 <description>Driver class name for a
JDBCmetastore</description>
</property>
<property>
 <name>javax.jdo.option.ConnectionUserName</name>
 <value>root</value>
 <description>username to use against
metastoredatabase</description>
</property>
<property>
 <name>javax.jdo.option.ConnectionPassword</name>
 <value>Bigdata_Master21C</value>
 <description>连接my sql的用户的密码</description>
</property>
<property>
  <name>hive.server2.thrift.port</name>
  <value>10000</value>
</property>
<property>
  <name>hive.server2.thrift.bind.host</name>
  <value>bigdata.lzf</value>
 
<description>注意,那么些是主机名称,并非小文档误导的那么,前面还需同上hadoop(而是为有的人的主机带有大名称)</description>
</property>

<property>
  <name>hive.server2.authentication</name>
  <value>NONE</value>
  <description>
    Client authentication types.
       NONE: no authentication check
       LDAP: LDAP/AD based authentication
       KERBEROS: Kerberos/GSSAPI authentication
       CUSTOM: Custom authentication provider
               (Use with property
hive.server2.custom.authentication.class)
  </description>
</property>

<property>
  <name>hive.server2.enable.doAs</name>
  <value>true</value>
</property>

<property>
    <name>datanucleus.schema.autoCreateAll</name>
    <value>false</value>
   
<description>自动创设metastore,但是看起好像也有啊用</description>
</property>
<property>
   
<name>hive.server2.logging.operation.log.location</name>
   
<value>/home/hadoop/java_tmp/${user.name}/operation_logs</value>
    <description>操作日志路径</description>
</property>

<property>
  <name>hive.metastore.warehouse.dir</name>
  <value>/warehouse</value>
</property>
<property>
 <name>hive.exec.scratchdir</name>
 <value>/tmp/hive</value>
</property>
<property>
 <name>hive.querylog.location</name>
   
<!–<value>${system:java.io.tmpdir}/${system:user.name}</value>–>
 <value>/log</value>
    <description>有人这里用hdfs路径,而2.8.0底默认路径是
</description>
</property>

<property>
    <name>hive.metastore.uris</name>
    <value>thrift://bigdata.lzf:9083</value>
    <description>Thrift URI for the remote metastore. Used by
metastore client to connect to remote metastore.</description>
</property>

<property>
    <name>hive.server2.transport.mode</name>
    <value>binary</value>
    <description>
       当为binary的上,只是启动10000端口,反的启用10001端口。    
    </description>
</property>
最后,把 ${system:java.io.tmpdir}
替换为/home/hadoop/data_hive/java_io_temp (需要创设实际的目)
在替换 ${system 为${


修改hive-log4j2.properties


property.hive.log.dir =
/home/hadoop/data_hive/java_io_temp/${sys:user.name}

横流:已经提到到多${起先的变量,在事实上条件要小心配置。

5.5 初始化

$HIVE_HOME/bin/schematool -dbType mysql -initSchema

假定成功,请登录mysql,查看metastore 库下是否来表达,假如来就是是成功了。

(表太多,只突显有)

mysql> show tables;
+—————————+
| Tables_in_metastore       |
+—————————+
| AUX_TABLE                 |
| BUCKETING_COLS            |
| CDS                       |
| COLUMNS_V2                |
| COMPACTION_QUEUE          |
| COMPLETED_COMPACTIONS     |
| COMPLETED_TXN_COMPONENTS  |
| DATABASE_PARAMS           |
| DBS                       |
| DB_PRIVS                  |
| DELEGATION_TOKENS         |
| FUNCS                     |
| FUNC_RU                   |
| GLOBAL_PRIVS              |
| HIVE_LOCKS                |
| IDXS                      |
| INDEX_PARAMS              |
| KEY_CONSTRAINTS           |
| MASTER_KEYS               |
| NEXT_COMPACTION_QUEUE_ID  |
| NEXT_LOCK_ID              |
| NEXT_TXN_ID               |

5.6 验证

先启动

hive –service metastore

hive –service hiveserver2 
–假如是声明presto,这么些可不用,但那些是10002端口被之总得规范

telnet bigdata.lzf 10002 

http://bigdata.lzf:1002

hive  (执行后,自然就是可以执行各个hive命令)

啊堪下beeline

横流:无论是hive命令依旧beeline都会师唤醒无提出采纳,而是使spark,tez之类的。

第六步:安装presto

以下内容可以了参照

https://prestodb.io/docs/current/installation/deployment.html

6.1生充斥及安排环境

解压到 /home/hadoop/presto-server-0.177

修改.bash_profile

末之始末如下:

export JAVA_HOME=/usr/local/jdk1.8.0_131
export HADOOP_HOME=/home/hadoop/hadoop-2.8.0
export HADOOP_CONF_DIR=/home/hadoop/hadoop-2.8.0/etc/hadoop
export HADOOP_YARN_HOME=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HIVE_HOME=/home/hadoop/apache-hive-2.1.1-bin
export HIVE_CONF_DIR=/home/hadoop/apache-hive-2.1.1-bin/conf
export
HCAT_LOG_DIR=/home/hadoop/apache-hive-2.1.1-bin/hcatalog/sbin/logs
export PRESTO_HOME=/home/hadoop/presto-server-0.177
export
PATH=$PATH:$HOME/.local/bin:$HOME/bin:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HIVE_HOME/bin:$PRESTO_HOME/bin

然后 source .bash_profile

6.2 修改各样配置

成立目录

mkdir -p $PRESTO_HOME/etc/catalog

mkdir -p /home/hadoop/data_presto/data

改各类配置文件(那一个文件还需要协调通过vi/vim创立,和hadoop不同,presto没有模板)

node.properties

node.environment=prestoquery
node.id=presto-0001
node.data-dir=/home/hadoop/data_presto/data

jvm.config

-server
-Xmx16G
-XX:+UseG1GC
-XX:G1HeapRegionSize=32M
-XX:+UseGCOverheadLimit
-XX:+ExplicitGCInvokesConcurrent
-XX:+HeapDumpOnOutOfMemoryError
-XX:+ExitOnOutOfMemoryError
-DHADOOP_USER_NAME=hadoop

config.propertis

#若presto只是安装一玉机械及(既是coordinator又是worker),那么按照以下措施配置:
coordinator=true
node-scheduler.include-coordinator=true
#只顾端口不要同hadoop,hive的冲,配置在此之前好下netstat观望下
#以部署此前,至少应当出同一份文档列出机器,ip,端口等等信息,包括路径,系统版本
http-server.http.port=8080
query.max-memory=5GB
query.max-memory-per-node=1GB
discovery-server.enabled=true
discovery.uri=http://bigdata.lzf:8080

log.properties

#例行从此,可以将DEBUG设置为任何数值: DEBUG,INFO,WARN,ERROR
com.facebook.presto=DEBUG

hive.properties (catalog目录下)

connector.name=hive-hadoop2
hive.metastore.uri=thrift://bigdata.lzf:9083

6.3 启动和关

$PRESTO_HOME/bin/launcher start  — 后台运行
$PRESTO_HOME/bin/launcher run   –日志运行
$PRESTO_HOME/bin/launcher stop  –停止

 

6.4 验证

 [hadoop@bigdata ~]$ jps

6656 SecondaryNameNode

6992 NodeManager

7508 RunJar

7604 RunJar

9288 PrestoServer

6858 ResourceManager

6332 NameNode

6460 DataNode

9870 Jps

并且可以拜8080

6.5 使用presto-cli

下载presto-cli 的jar包,放在$PRESTO_HOME/bin下,同等看待命名为presto-cli
下一场实施以下命令
presto-cli –server bigdata.lzf:8080 –catalog hive –schema default
presto:default> show tables;

  Table  

 customer
(1 row)

Query 20170602_093743_00002_pdfui, FINISHED, 1 node
Splits: 18 total, 18 done (100.00%)
0:11 [1 rows, 25B] [0 rows/s, 2B/s]

presto:default> select * from customer;

   name  

 luzhifei
(1 row)

Query 20170602_093803_00003_pdfui, FINISHED, 1 node
Splits: 17 total, 17 done (100.00%)
0:09 [1 rows, 9B] [0 rows/s, 0B/s]

 

成功!

 

第七:总结

1.耐心

2.大网上很多blog是立竿见影的,但为来诸多凡误的。最好是阅读官方参考

3.之上是单机下的安排,不可知尽搬至生育环境

4.装高版本的bigdata组件,提议要用强版本的os,否则光glibc就生硌麻烦

5.假设可能,也可以团结编译源码后再行设置,但挺不抱吃新家。

 

第八:参考

重大参考:

hadoop

http://hadoop.apache.org/docs/r2.8.0/hadoop-project-dist/hadoop-common/SingleCluster.html

http://hadoop.apache.org/docs/r2.8.0/hadoop-project-dist/hadoop-common/Superusers.html

http://blog.csdn.net/se7en_q/article/details/47258007

hive2

http://www.2cto.com/database/201408/325554.html

http://www.tuicool.com/articles/Bbqaea

http://blog.csdn.net/login_sonata/article/details/53178613

presto

https://prestodb.io/docs/current/installation/deployment.html

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注