myhadoop.sh start/stop
分步启动:
第一步:在hadoop102主机上 sbin/start-dfs.sh
第二步:在hadoop103主机上 sbin/start-yarn.sh
分步关闭:
第一步:在hadoop103主机上 sbin/stop-yarn.sh
第二步:在hadoop102主机上 sbin/stop-dfs.sh
#!/bin/bashif [ $# -lt 1 ]then echo "No Args Input..." exit ;ficase $1 in"start") echo " =================== 启动 hadoop集群 ===================" echo " --------------- 启动 hdfs ---------------" ssh hadoop102 "/opt/module/hadoop-3.1.3/sbin/start-dfs.sh" echo " --------------- 启动 yarn ---------------" ssh hadoop103 "/opt/module/hadoop-3.1.3/sbin/start-yarn.sh" echo " --------------- 启动 historyserver ---------------" ssh hadoop102 "/opt/module/hadoop-3.1.3/bin/mapred --daemon start historyserver";;"stop") echo " =================== 关闭 hadoop集群 ===================" echo " --------------- 关闭 historyserver ---------------" ssh hadoop102 "/opt/module/hadoop-3.1.3/bin/mapred --daemon stop historyserver" echo " --------------- 关闭 yarn ---------------" ssh hadoop103 "/opt/module/hadoop-3.1.3/sbin/stop-yarn.sh" echo " --------------- 关闭 hdfs ---------------" ssh hadoop102 "/opt/module/hadoop-3.1.3/sbin/stop-dfs.sh";;*) echo "Input Args Error...";;esacmyzk.sh start/stop
分步启动/关闭:
bin/zkServer.sh start
bin/zkServer.sh stop
for host in hadoop102 hadoop103 hadoop104do case $1 in "start") ssh $host "source /etc/profile;/opt/module/zookeeper-3.5.7/bin/zkServer.sh $1" echo "$host zk is running..." echo "-----------------------------" ;; "stop") ssh $host "source /etc/profile;/opt/module/zookeeper-3.5.7/bin/zkServer.sh $1" echo "$host zk is stopping..." echo "-----------------------------" ;; *) echo '输入有误!' ;; esacdonebin/hbase-daemon.sh start master
bin/hbase-daemon.sh start regionserver
bin/hbase-daemon.sh stop master
bin/hbase-daemon.sh stop regionserver
bin/start-hbase.sh
bin/stop-hbase.sh
50070:HDFSwebUI的端口号
8485:journalnode默认的端口号
9000:非高可用访问数rpc端口
8020:高可用访问数据rpc
8088:yarn的webUI的端口号
8080:master的webUI,Tomcat的端口号
7077:spark基于standalone的提交任务的端口号
8081:worker的webUI的端口号
18080:historyServer的webUI的端口号
4040:application的webUI的端口号
2181:zookeeper的rpc端口号
9083:hive的metastore的端口号
60010:Hbase的webUI的端口号
6379:Redis的端口号
8087:sparkwebUI的端口号 sbin/start-master.sh 文件可以修改端口号,默认是8080,我改为8081
9092:kafka broker的端口
hive建表:
create table test1(InvoiceNo String, StockCode String, Description String, Quantity String, InvoiceDate String, UnitPrice String, CustomerID String, Country String)ROW format delimited fields terminated by ',' STORED AS TEXTFILE;导入数据:
load data local inpath '/opt/module/data/test.csv' into table test1;sqoop导出到mysql:
bin/sqoop export \--connect jdbc:mysql://hadoop102:3306/company \--username root \--password 000429 \--table sale \--num-mappers 1 \--export-dir /user/hive/warehouse/sale \--input-fields-terminated-by ","sqoop导入到hive:
bin/sqoop import \> --connect jdbc:mysql://hadoop102:3306/company \> --username root \> --password 123456 \> --table staff \> --num-mappers 1 \> --hive-impo> --fields-terminated-by "\t" \> --hive-overwrite \> --hive-table 数据库名.staff_hivesql建表:
USE `company`;CREATE TABLE `sale1` ( `day_id` VARCHAR(50) COLLATE utf8_bin DEFAULT NULL, `sale_nbr` VARCHAR(50) COLLATE utf8_bin DEFAULT NULL, `cnt` VARCHAR(50) COLLATE utf8_bin DEFAULT NULL, `round` VARCHAR(50) COLLATE utf8_bin DEFAULT NULL) ENGINE=INNODB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;CREATE TABLE `sale2` ( `day_id` varchar(50) COLLATE utf8_bin DEFAULT NULL, `sale_nbr` varchar(50) COLLATE utf8_bin DEFAULT NULL, `cnt` varchar(50) COLLATE utf8_bin DEFAULT NULL, `round` varchar(50) COLLATE utf8_bin DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;$ cd /usr/local/spark$ cp ./conf/spark-env.sh.template ./conf/spark-env.sh #拷贝配置文件export SPARK_DIST_CLASSPATH=$(/usr/local/hadoop/bin/hadoop classpath) 这个路径是hadoop的安装路径

安装sbt
vim ./sbt
启动脚本文件内容如下:
#!/bin/bashSBT_OPTS="-Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=256M" java $SBT_OPTS -jar `dirname $0`/sbt-launch.jar "$@"增加可执行权限命令: chmod u+x ./sbt
simple.sbt文件内容(注意版本号和名字)
name := "Simple Project"version := "1.0"scalaVersion := "2.11.8"libraryDependencies += "org.apache.spark" %% "spark-core" % "2.1.0"vim ~/.bashrcexport SPARK_HOME=/usr/local/sparkexport PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin$ source ~/.bashrc$ cd /usr/local/spark/$ cp ./conf/slaves.template ./conf/slaves把默认内容localhost替换成如下内容:hadoop103hadoop104$ cp ./conf/spark-env.sh.template ./conf/spark-env.shexport SPARK_DIST_CLASSPATH=$(/usr/local/hadoop/bin/hadoop classpath) export HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoopexport SPARK_MASTER_IP=192.168.1.104 cd /usr/local/tar -zcf ~/spark.master.tar.gz ./sparkcd ~scp ./spark.master.tar.gz hadoop103:/home/hadoopscp ./spark.master.tar.gz hadoop104:/home/hadoop在从机上进行如下操作:
sudo rm -rf /usr/local/spark/sudo tar -zxf spark.master.tar.gz -C /usr/localsudo chown -R 用户名 /usr/local/spark$ cd /usr/local/spark/$ sbin/start-master.sh$ sbin/start-slaves.sh打开浏览器输入 http://[主机名]:8087

注意端口号冲突问题:
可以在启动的脚本文件里修改WEBUI端口号:也就是在sbin/start-master.sh中修改端口号!
sbin/stop-master.shsbin/stop-slaves.sh负责把一个源文件复制到目标文件(夹)下。如下图所示,复制到文件夹下,则文件名保持不变,复制到文件中,则文件名变更。如果目标文件已经存在或目标文件夹中含有同名文件,则复制之后目标文件或目标文件夹中的同名文件会被覆盖。
命令格式为:cp -r 源文件夹 目标文件夹
mv 命令:用来移动文件或者将文件改名
格式:mv [选项] 源文件或目录 目标文件或目录
选项:
-b 若需覆盖文件,则在覆盖文件前先进行备份
-f 强制覆盖,若目标文件已存在同名文件,使用该参数时则直接覆盖而不询问
-i 若目标文件已存在同名文件,则提示询问是否覆盖
-u 若目标文件已存在需移动的同名文件,且源文件比较新,才会更新文件
-t 指定mv的目标目录,改选项使用于移动多个源文件到一个目录的情况,此时目标文件在前,源文件在后
chmod
sudo chmod -(代表类型)×××(所有者)×××(组用户)×××(其他用户)
0 [000] 无任何权限
4 [100] 只读权限
6 [110] 读写权限
7 [111] 读写执行权限
sudo chmod 600 ××× (只有所有者有读和写的权限)
sudo chmod 644 ××× (所有者有读和写的权限,组用户只有读的权限)
sudo chmod 700 ××× (只有所有者有读和写以及执行的权限)
sudo chmod 666 ××× (每个人都有读和写的权限)
sudo chmod 777 ××× (每个人都有读和写以及执行的权限)
chown (选项)(参数)
选项 描述
-c或——changes 效果类似“-v”参数,但仅回报更改的部分;
-f或–quite或——silent 不显示错误信息;
-h或–no-dereference 只对符号连接的文件作修改,而不更改其他任何相关文件;
-R或——recursive 递归处理,将指定目录下的所有文件及子目录一并处理;
-v或——version 显示指令执行过程;
–dereference 效果和“-h”参数相同;
–help 在线帮助;
–reference=<参考文件或目录> 把指定文件或目录的拥有者与所属群组全部设成和参考文件或目录的拥有者与所属群组相同;
–version 显示版本信息。
当只需要修改所有者时,可使用如下 chown 命令的基本格式:
[root@localhost ~]# chown [-R] 所有者 文件或目录
如果需要同时更改所有者和所属组,chown 命令的基本格式为:
[root@localhost ~]# chown [-R] 所有者:所属组 文件或目录