Linux操作大数据框架命令

修改配置文件
vim /etc/sysconfig/network-scripts/ifcfg-ens33
DNS1=114.114.114.114     
ONBOOT=yes               
IPADDR=192.168.65.161   
NETMASK=255.255.255.0    
GATEWAY=192.168.65.2
=================================================================================================================
重启网络
service network restart   #重启网络
=================================================================================================================
关闭防火墙
systemctl stop firewalld.service        #关闭防火墙服务
systemctl disable firewalld.service     #禁止防火墙开启启动
=================================================================================================================
修改hosts文件
vi /etc/hosts    
删掉原来所有内容,改为以下
127.0.0.1   localhost
::1          localhost
192.168.92.161 hadoop01
192.168.92.162 hadoop02
192.168.92.163 hadoop03
=================================================================================================================
 修改主机名
vim /etc/hostname

删掉原内容,改为:hadoop01
===============================================================================================================
设置免密登录
每台都执行以下操作
在白框任意路径执行:
ssh-keygen
然后三次直接回车不输入任何内容
得到秘钥后执行:
ssh-copy-id root@hadoop01        #hadoop02、hadoop03
测试
ssh hadoop02
不需要输入密码直接进入说明成功,exit退出
===============================================================================================================
安装JDK
/home下创建目录app
mkdir /home/app
上传安装包发送至其他节点
scp -r java/ root@hadoop02:/usr/local/src
解压
tar -xvf jdk-8u65-linux-x64.tar.gz
修改环境变量
vim /etc/profile
最后添加
#set java environment
JAVA_HOME=/home/app/jdk1.8.0_65
JAVA_BIN=/home/app/jdk1.8.0_65/bin
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME JAVA_BIN PATH CLASSPATH
加载环境变量
source /etc/profile
测试
java -version
复制环境变量到其他两个机器
scp /etc/profile root@hadoop02:/etc
===============================================================================================================
安装ZooKeeper
/usr/local/src下创建目录zk 
上传解压包并解压
修改配置文件zoo.cfg
tickTime=2000                       #tickTime心跳时间,
clientPort=2181                     #访问端口
dataDir=/home/app/zookeeper-3.4.8/tmp       #设置日志路径
server.1=hadoop01:2888:3888      #集群最少3个节点,可按机器名
server.2=hadoop02:2888:3888      #2888指follower连leader端口
server.3=hadoop03:2888:3888      #3888指定选举的端口
根目录下创建tmp文件夹,并在其中创建文件myid编辑1,2,3
操作命令
./zkServer.sh start          #启动ZK服务
./zkServer.sh start-foreground   #日志启动方式
./zkServer.sh stop           #停止ZK服务
./zkServer.sh restart        #重启ZK服务
./zkServer.sh status         #查看ZK状态
===============================================================================================================
 修改windows中的hosts文件
192.168.92.161 hadoop01
192.168.92.162 hadoop02
192.168.92.163 hadoop03
附录:
远程文件传输
scp -r(文件夹)文件路径 root@hadoop02:/目标路径
下载安装上传文件插件
yum install -y lrzsz
===============================================================================================================
 Hadoop伪分布式安装
需要环境:JDK,JAVA_HOME,配置hosts,hostname,关闭防火墙,配置免密登录

修改 hadoop-env.sh
Ø  通过vim打开
    vim /home/app/hadoop-2.7.1/etc/hadoop/hadoop-env.sh
	export JAVA_HOME=/home/app/jdk1.8.0_65
	export HADOOP_CONF_DIR=/home/app/hadoop-2.7.1/etc/hadoop
	修改 core-site.xml
Ø  通过vim打开
    vim /home/app/hadoop-2.7.1/etc/hadoop/core-site.xml
	

<property>

<!--用来指定hdfs的老大,namenode的地址-->

<name>fs.default.name</name>

<value>hdfs://hadoop01:9000</value>

</property> 

<property>

<!--用来指定hadoop运行时产生文件的存放目录-->  

<name>hadoop.tmp.dir</name>

<value>/home/app/hadoop-2.7.1/tmp</value>

</property>

修改 hdfs-site.xml

Ø  通过vim打开

vim /home/app/hadoop-2.7.1/etc/hadoop/hdfs-site.xml
<property>

<!--指定hdfs保存数据副本的数量,包括自己,默认为3-->

<!--伪分布式模式,此值必须为1-->

<name>dfs.replication</name>

<value>1</value>

</property>

<!--设置hdfs操作权限,false表示任何用户都可以在hdfs上操作文件-->

<property>

<name>dfs.permissions</name>

<value>false</value>

</property>
修改 mapred-site.xml

说明:在/home/app/hadoop-2.7.1/etc/hadoop的目录下,只有一个mapred-site.xml.template文件,复制一个。

cp mapred-site.xml.template mapred-site.xml
Ø  通过vim打开

vim /home/app/hadoop-2.7.1/etc/hadoop/mapred-site.xml

  配置mapreduce运行在yarn上:粘贴高亮部分到<configuration>标签内
<configuration>

<property> 

<!--指定mapreduce运行在yarn上-->

<name>mapreduce.framework.name</name>

<value>yarn</value>

</property>

</configuration>

.修改 yarn-site.xml 
Ø  通过vim打开
vim /home/app/hadoop-2.7.1/etc/hadoop/yarn-site.xml
	<property>
<!--指定yarn的老大resourcemanager的地址-->
<name>yarn.resourcemanager.hostname</name>
<value>hadoop01</value>
</property>
<property>
<!--NodeManager获取数据的方式-->
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
修改 slaves
vim /home/app/hadoop-2.7.1/etc/hadoop/slaves
7.配置hadoop的环境变量
    vim /etc/profile	

HADOOP_HOME=/home/app/hadoop-2.7.1
PATH=.:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME JAVA_BIN PATH CLASSPATH HADOOP_HOME

	
Ø  重新加载profile使配置生效
    source /etc/profile
4.  初始化
hdfs namenode -format
5.  启动
start-all.sh
停止
stop-all.sh

HDFS基本Shell操作
创建文件夹(不支持多级创建):
hadoop fs -mkdir /xxx
查看目录:
hadoop fs -ls /xxx
递归查看多级目录:
hadoop fs -lsr /xxx
上传文件到HDFS:
hadoop fs -put xxx.txt /xxx
下载文件到本地当前目录:
hadoop fs -get /xxx/xxx/xxx.txt
删除文件:
hadoop fs -rm /xxx/xxx/xxx.txt
删除文件夹(文件夹必须为空):
hadoop fs -rmdir /xxx/xxx
强制删除文件夹或文件
Hadoop fs -rm -r /xxx

flume
启动
[root@localhost conf]# ../bin/flume-ng agent -c ./ -f ./flume.properties -n a1 -Dflume.root.logger=INFO,console

测试
curl -X POST -d '[{"headers":{"tester":"tony"},"body":"hello http flume"}]' http://hadoop01:22222

数据库启动 mysql -h 127.0.0.1 -p -u root -p

安装Hive
Hive安装非常简单,解压之后即可直接运行,不需要太多配置,前提是要配置JAVA_HOME和HADOOP_HOME。并且Hadoop要全量启动(五个进程)

hive元数据库的替换
1.  修改配置文件hive-site.xml

<?xml version="1.0" encoding="UTF-8" standalone="no"?>

<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>

  <property>

  <name>hive.default.fileformat</name>

  <value>TextFile</value>

</property>

<property>

  <!--端口改为你自己的端口,这里是连接数据库中hive数据库-->

  <name>javax.jdo.option.ConnectionURL</name>

  <value>jdbc:mysql://hadoop01:3306/hive?createDatabaseIfNotExist=true</value>

  <description>JDBC connect string for a JDBC metastore</description>

</property>

<property>

  <name>javax.jdo.option.ConnectionDriverName</name>

  <value>com.mysql.jdbc.Driver</value>

  <description>Driver class name for a JDBC metastore</description>

</property>

<property>

  <!--连接MySQL的用户名-->

  <name>javax.jdo.option.ConnectionUserName</name>

  <value>root</value>

  <description>username to use against metastore database</description>

</property>

<property>

  <!--连接MySQL的密码-->

  <name>javax.jdo.option.ConnectionPassword</name>

  <value>root</value>

  <description>password to use against metastore database</description>

</property>

</configuration>

3.开放mysql权限

grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;

flush privileges;  

2.加入mysql 驱动包

通过sqoop将数据导入mysql
从关系型数据库导入数据到hdfs:
./sqoop import --connect jdbc:mysql://192.168.65.1:3306/jtlog --username root --password root --table jtdata -m 1 --target-dir '/sqoop/jtlog' --fields-terminated-by '|';

从hdfs导出数据到关系型数据库:
./sqoop export --connect jdbc:mysql://192.168.65.1:3306/jtlog --username root --password root --export-dir '/user/hive/warehouse/jtlogdb.db/tongji' --table jtdata -m 1 --fields-terminated-by '|';



2.1 HBase 安装部署
2.1.1 Zookeeper 正常部署
首先保证 Zookeeper 集群的正常部署,并启动之:
[atguigu@hadoop102 zookeeper-3.4.10]$ bin/zkServer.sh start
[atguigu@hadoop103 zookeeper-3.4.10]$ bin/zkServer.sh start
[atguigu@hadoop104 zookeeper-3.4.10]$ bin/zkServer.sh start
2.1.2 Hadoop 正常部署
Hadoop 集群的正常部署并启动:
[atguigu@hadoop102 hadoop-2.7.2]$ sbin/start-dfs.sh
[atguigu@hadoop103 hadoop-2.7.2]$ sbin/start-yarn.sh
2.1.3 HBase 的解压
解压 Hbase 到指定目录:
[atguigu@hadoop102 software]$ tar -zxvf hbase-1.3.1-bin.tar.gz -C 
/opt/module
2.1.4 HBase 的配置文件
修改 HBase 对应的配置文件。
1)hbase-env.sh 修改内容:
export JAVA_HOME=/opt/module/jdk1.6.0_144
export HBASE_MANAGES_ZK=false
2)hbase-site.xml 修改内容:
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://hadoop102:9000/HBase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
 <!-- 0.98 后的新变动,之前版本没有.port,默认端口为 60000 -->
<property>
<name>hbase.master.port</name>
<value>16000</value>
</property>
<property> 
<name>hbase.zookeeper.quorum</name>
 <value>hadoop102,hadoop103,hadoop104</value>
 尚硅谷大数据技术之 Hbase 
—————————————————————————————
更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
</property>
<property> 
<name>hbase.zookeeper.property.dataDir</name>
 <value>/opt/module/zookeeper-3.4.10/zkData</value>
</property>
</configuration>
3)regionservers: hadoop102
hadoop103
hadoop104
4)软连接 hadoop 配置文件到 HBase:
[atguigu@hadoop102 module]$ ln -s /opt/module/hadoop-
2.7.2/etc/hadoop/core-site.xml /opt/module/hbase/conf/coresite.xml
[atguigu@hadoop102 module]$ ln -s /opt/module/hadoop-
2.7.2/etc/hadoop/hdfs-site.xml /opt/module/hbase/conf/hdfssite.xml
2.1.5 HBase 远程发送到其他集群
[atguigu@hadoop102 module]$ xsync hbase/

2.启动方式 2 
[atguigu@hadoop102 hbase]$ bin/start-hbase.sh
对应的停止服务:
[atguigu@hadoop102 hbase]$ bin/stop-hbase.sh

2.2 HBase Shell 操作
2.2.1 基本操作
1.进入 HBase 客户端命令行 
[atguigu@hadoop102 hbase]$ bin/hbase shell
2.查看帮助命令 hbase(main):001:0> help
3.查看当前数据库中有哪些表 hbase(main):002:0> list
2.2.2 表的操作
1.创建表 hbase(main):002:0> create 'student','info'
2.插入数据到表 hbase(main):003:0> put 'student','1001','info:sex','male'
hbase(main):004:0> put 'student','1001','info:age','18'
hbase(main):005:0> put 'student','1002','info:name','Janna'
hbase(main):006:0> put 'student','1002','info:sex','female'
hbase(main):007:0> put 'student','1002','info:age','20'
3.扫描查看表数据 hbase(main):008:0> scan 'student'
hbase(main):009:0> scan 'student',{STARTROW => '1001', STOPROW => 
'1001'}
hbase(main):010:0> scan 'student',{STARTROW => '1001'}
4.查看表结构 hbase(main):011:0> describe ‘student’ 5.更新指定字段的数据 hbase(main):012:0> put 'student','1001','info:name','Nick'
hbase(main):013:0> put 'student','1001','info:age','100'
6.查看“指定行”或“指定列族:列”的数据 hbase(main):014:0> get 'student','1001'
hbase(main):015:0> get 'student','1001','info:name'
7.统计表数据行数 hbase(main):021:0> count 'student'
8.删除数据 
删除某 rowkey 的全部数据:
hbase(main):016:0> deleteall 'student','1001'
删除某 rowkey 的某一列数据:
hbase(main):017:0> delete 'student','1002','info:sex'
9.清空表数据 hbase(main):018:0> truncate 'student'
提示:清空表的操作顺序为先 disable,然后再 truncate。
10.删除表 
首先需要先让该表为 disable 状态:
hbase(main):019:0> disable 'student'
然后才能 drop 这个表:
hbase(main):020:0> drop 'student'
提示:如果直接 drop 表,会报错:ERROR: Table student is enabled. Disable it first.
11.变更表信息 将 info 列族中的数据存放 3 个版本:
hbase(main):022:0> alter 'student',{NAME=>'info',VERSIONS=>3}
hbase(main):022:0> get 
'student','1001',{COLUMN=>'info:name',VERSIONS=>3}



4.3 MapReduce

$ bin/hbase mapredcp
2.环境变量的导入
(1)执行环境变量的导入(临时生效,在命令行执行下述操作)
$ export HBASE_HOME=/opt/module/hbase
$ export HADOOP_HOME=/opt/module/hadoop-2.7.2
$ export HADOOP_CLASSPATH=`${HBASE_HOME}/bin/hbase mapredcp`
(2)永久生效:在/etc/profile 配置
export HBASE_HOME=/home/app/hbase-2.2.4
export HADOOP_HOME=/home/app/hadoop-2.7.1

并在 hadoop-env.sh 中配置:(注意:在 for 循环之后配)
export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:/home/app/hbase-2.2.4/lib/*
3.运行官方的 MapReduce 任务
-- 案例一:统计 Student 表中有多少行数据
$ /opt/module/hadoop-2.7.2/bin/yarn jar lib/hbase-server-1.3.1.jar 
rowcounter student

Kafka安装
1.6.1    创建目录
1.6.2    上传解压
1.6.3    修改配置文件
cd /home/app/kafka_2.13-2.4.1/config
vi server.properties
broker.id=0 #当前server编号
log.dirs=/home/app/kafka_2.13-2.4.1/tmp/kafka-logs #日志存储目录
zookeeper.connect=hadoop01:2181,hadoop02:2181,hadoop03:2181
1.6.4    启动
cd /home/app/kafka_2.13-2.4.1
bin/kafka-server-start.sh config/server.properties &

创建主题
bin/kafka-topics.sh --zookeeper hadoop101:2181 --create --topic ct --partitions 3 --replication-factor 1
消费数据
bin/kafka-console-consumer.sh --zookeeper hadoop101:2181 --topic ct
bin/kafka-console-consumer.sh --bootstrap-server haddoop101:9092 --topic c  1.2之后版本命令
flume启动生产数据 让消费者消费数据
bin/flume-ng agent -c conf/ -n a1 -f /usr/local/data/flume-2-kafka.conf

查看当前服务器中的所有 topic
bin/kafka-topics.sh --zookeeper hadoop102:2181 --list
创建 topic
 bin/kafka-topics.sh --zookeeper hadoop102:2181 --create --replication-factor 3 --partitions 1 --topic ct
 
 生产数据
 java -jar ct-producer.jar /usr/local/data/contact.log /usr/local/data/call.log
 收集数据
 bin/flume-ng agent -c conf/ -n a1 -f /usr/local/data/flume-2-kafka.conf 
 
 关闭hbase
 bin/stop-hbase.sh
 重启hbase
 bin/start-hbase.sh
在服务器运行系统 
 /usr/local/home/hadoop-2.7.1/bin/yarn jar analysis_jar/analysis.jar 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值