出去就用hive ,hbase 和 spark(最好学号Scala,)
Linux 查看某个端口是否被占用:
netstat -anp |grep 端口号
nc -lk 9999
(1)判断是物理机还是虚拟机
dmesg | grep -i virtual
查看系统版本号和系统位数
cat /etc/issue && arch
(2)查看隐藏文件
ll -la
(3)查看目录下的所有文件及大小
ll -h
(4)查看该目录下的文件及文件大小
du -sh *|sort -n
(5)查看某个文件的大小(和4一样)
du -hs log/
(6)查看磁盘容量的使用情况
df -h
(7)查看文件数量
ls -l |grep “edits_*” |wc -l
(8)使/etc/profile文件生效
第一种:. /etc/profile
第二种:source /etc/profile
(9)挂载执行命令(root用户执行)
mount -t nfs 10.1.22.8:/vol/vol2/qtree/flexccapp /home/flexcc/filemanage/
(10)关于时间同步
有date命令,ntpdate命令,以及ntpd服务
1.date
date -s “年-月-日 时:分:秒” --例如:date -s “2018-05-24 16:36:00”
2.ntpdate命令
执行命令 ntpdate ntp1.aliyun.com (与阿里云同步)
添加到定时任务,定期同步某台服务器,操作如下
crontab -e
然后按i进入编辑模式
复制粘贴
* * */1 * * /sbin/ntpdate 10.1.22.1
新系统版本
* * */1 * * /usr/sbin/ntpdate 10.1.22.1
保存退出
/etc/init.d/crond reload
3. ntpd服务
service ntpd status 查看启动状态
service ntpd start 启动服务
service ntpd stop 关闭方法
(6)集群启动命令:
启动namenode
stop-dfs.sh && start-dfs.sh
启动zkfc
hadoop-daemon.sh start zkfc
启动zookeeper集群
zkServer.sh start || zkServer.sh status
启动journalnode,journalnode在node01,node02,node03上
hadoop-daemon.sh start journalnode(单独启动的话)
hadoop-daemon.sh start namenode(单独启动的话)
启动yarn:
cd /opt/sxt/hadoop-2.6.5
在hadoop的安装根目录下面执行如下命令:./sbin/start-yarn.sh即可
访问dfs:
http://node001:50070/
访问yarn:
http://node003:8088/
---------------------------------------------------Hadoop集群第二次以后启动---------------------------------------------------------------
(1) 先在node002、node003、node0004启动zookeeper集群,启动命令zkServer.sh start
在node001使用命令start-all.sh启动除YARN ResourceManage的角色,
在node003和node004两个节点使用命令yarn-daemon.sh start resourcemanager启动resourcemanager
(2) 先在node002、node003、node0004启动zookeeper集群,启动命令zkServer.sh start
在node001使用命令start-dfs.sh启动除YARN ResourceManage和nodemannger的角色,
在node001上使用start-yarn.sh,启动nodemanager
在node003和node004两个节点使用命令yarn-daemon.sh start resourcemanager启动resourcemanager
hbase的启动,在node001上使用命令start-hbase.sh启动
上传文件并设置大小:hdfs dfs -D dfs.blocksize=1048576 -put test.txt
--------------------------------------------------------hive的启动---------------------------------------------------------------------------
hive的启动
1、单用户模式的安装启动
MySQL安装在node01上,密码是123456
启动前把MySQL启动了,在node01上面,使用命令service mysqld start
在单节点安装在node02上面
2、多用户模式的安装启动
MySQL安装在node01上,密码是123456
启动前把MySQL启动了,在node01上面,使用命令service mysqld start
在node03上使用命令hive --service metastore启动hive服务端
在node04上使用命令hive启动客户端(服务端和客户端区别的配置在于hive-site.xml里的配置)
查看表的属性 desc formatted psn
Beeline 要与HiveServer2配合使用
官网解释hiveserve2:
HiveServer2 (HS2) is a server interface that enables remote clients to execute queries against Hive and
retrieve the results (a more detailed intro here). The current implementation, based on Thrift RPC, is an
improved version of HiveServer and supports multi-client concurrency and authentication. It is designed to
provide better support for open API clients like JDBC and ODBC.
启动hiveserver2可以使用java代码对hive进行jdbc连接。
hiveserver2的两种启动方式(官网的):
How to Start------(在node03上启动)
第一种: H I V E H O M E / b i n / h i v e s e r v e r 2 第 二 种 : HIVE_HOME/bin/hiveserver2 第二种: HIVEHOME/bin/hiveserver2第二种:HIVE_HOME/bin/hive --service hiveserver2
默认端口是10000
Beeline属于客户端,在哪里启动都行
启动方式(https://cwiki.apache.org/confluence/display/Hive/HiveServer2+Clients)官网参考:
在node004上执行命令:beeline,即可启动
之后执行命令(!connect jdbc:hive2://node003:10000/default root 123),其中的root 123,是MySQL数据库的用户名和密码,default是使用默认数据库
----------------------------------------------------------------HBASE的启动----------------------------------------------------------------
HBASE的启动
1、单机版node01上
起服务命令:start-hbase.sh
客户端在node01上使用命令:hbase shell
(删除东西的时候要按住Ctrl)
页面 :http://node01:60010
2、完全分布式启动
在node01上使用命令start-hbase.sh启动hbase集群
集群安排 master是 node01、node04(node04是backup-masters)
HRegionServer是node02、node03、node04
可以在任一台使用命令hbase shell,从原理看,只是充当一个客户端,能连接上zookeeper就行
操作hbase一般使用其他语言api操作
-----------------------------------------------------------------------------spark的启动---------------------------------------------------------------------
spark的启动
伪分布式spark的启动,(node001配置为master,node002和node003是worker,node004是client)
在node001上,进入目录/softWare/spark-2.3.1/sbin中,使用命令./start-all.sh启动master和worker节点。
(一)Spark的standalone的方式启动。
进入spark提交的bin目录下(/softWare/spark-2.3.1/bin),作如下操作
任务可在master节点提交也可在worker节点提交。但是指定master节点执行,即: spark://node001:7077 中的node001要是master节点
(1)standalone的client模式(使用参数deploy-mode来设置是client还是cluster)
./spark-submit --master spark://node001:7077 --class org.apache.spark.examples.SparkPi …/examples/jars/spark-examples_2.11-2.3.1.jar 100
或者
./spark-submit --master spark://node001:7077 --deploy-mode client --class org.apache.spark.examples.SparkPi …/examples/jars/spark-examples_2.11-2.3.1.jar 100
(2)standalone的cluster模式
./spark-submit --master spark://node001:7077 --deploy-mode cluster --class org.apache.spark.examples.SparkPi …/examples/jars/spark-examples_2.11-2.3.1.jar 100
注意两种方式的提交原理,可参考外边图片即可
(二)Spark基于yarn的启动模式
注意:使用客户端的话首先要配置spark-env.sh文件,添加hadoop配置文件路径,如(export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop)
另外注意:虚拟机配置修改,需修改虚拟机内存在2g以上,处理器在2个以上,并且在Hadoop配置文件yarn-site.xml添加属性
关闭检查虚拟内存
yarn.nodemanager.vmem-check-enabled
false
(1)yarn的client模式
./spark-submit --master yarn --class org.apache.spark.examples.SparkPi …/examples/jars/spark-examples_2.11-2.3.1.jar 100
或者
./spark-submit --master yarn–client --class org.apache.spark.examples.SparkPi …/examples/jars/spark-examples_2.11-2.3.1.jar 100
-------------------------------------------------------zookeeper-----------------------------------------------------------------------
1、zookeeper是起到分布式管理以及同步数据
2、zookeeper是树形结构的数据树
3、zookeeper集群的数据都一样,有一个leader,其他为flower,leader是通过选举产生的,通过过票机制选举。当leader挂掉之后,会在flower中重新选举出来一个。
----------------------------------------------------------------------elasticsearch----------------------------------------------------
1、elasticsearch 的底层是Lucene,elasticsearch是一个产品,而Lucene是一个框架。
2、本质就是给搜索内容定位,倒排索引就是Lucene的核心
3、正排索引:
切分原理:把每个单词split切分后生成单词数组,每个单词创建一个索引
缺点:索引太多,搜索时间太长
4、倒排索引
切分原理:一个词只创建一个索引,如下
我是中国人(1)
中国是全球人口最多的国家,中国人也最多(2)
1,我 (1:1){0} "我"在第一段出现一次,偏移量是0
2,中国 (1:1) {2},(2:2){0,15} "中国"在第一段出现一次,偏移量是2,在第二段出现两次,偏移量是0和15
我 (1:1){0}
5、elasticsearch搭建,必须用普通用户,因为elasticsearch允许别人调用集群上的脚本文件
(6)HDFS创建文件夹
hdfs dfs -mkdir -p /data/fof/input
(7)hadoop运行jar包命令
hadoop jar /home/lina/example.jar com/oss/maxtemperature/MaxTemperatureDriver
(8)mysql的启动以及常用命令
在node002上启动MySQL,使用命令service mysqld start
使用命令 mysql -uroot -p登录 ,登录密码123
常用命令(linux下操作一定要加分号):
show databases; 显示数据库
show tables; 显示表
create database name; 创建数据库
use databasename; 选择数据库
MD5经常用于校验
sql join 图片
生产rsa秘钥
ssh-keygen -t rsa -P ‘’ -f ~/.ssh/id_rsa
拷贝公钥到目标机器
ssh-copy-id node001