大数据中一些常用的集群启停命令
文章目录
- 一、HDFS
- 二、MapReduce && YARN
- 三、Hive
一、HDFS
格式化namenode
# 确保以hadoop用户执行
su - hadoop
# 格式化namenode
hadoop namenode -format
启动
# 一键启动hdfs集群
start-dfs.sh
# 一键关闭hdfs集群
stop-dfs.sh
# 如果遇到命令未找到的错误,表明环境变量未配置好,可以以绝对路径执行
/export/server/hadoop/sbin/start-dfs.sh
/export/server/hadoop/sbin/stop-dfs.sh
二、MapReduce && YARN
- 部署集群需要做的操作
修改YARN和MapReduce相关配置文件
仅启动YARN的相关进程(MapReduce无需启动任何进程,需要时会运行在YARN内部(容器中)) - 查看YARN运行网页
http://node1:8088
常用的进程启动命令如下:
一键启动YARN集群: $HADOOP_HOME/sbin/start-yarn.sh
会基于yarn-site.xml中配置的yarn.resourcemanager.hostname来决定在哪台机器上启动resourcemanager
会基于workers文件配置的主机启动NodeManager
一键停止YARN集群: $HADOOP_HOME/sbin/stop-yarn.sh
在当前机器,单独启动或停止进程
$HADOOP_HOME/bin/yarn --daemon start|stop resourcemanager|nodemanager|proxyserver
start和stop决定启动和停止
可控制resourcemanager、nodemanager、proxyserver三种进程
历史服务器启动和停止
$HADOOP_HOME/bin/mapred --daemon start|stop historyserver
三、Hive
前置要求:
确保Hive文件夹所属为hadoop用户
创建一个hive的日志文件夹:
mkdir /export/server/hive/logs
启动元数据管理服务(必须启动,否则无法工作)
前台启动:bin/hive --service metastore
后台启动:nohup bin/hive --service metastore >> logs/metastore.log 2>&1 &
关于前台启动和后台启动的区别
前台启动(bin/hive --service metastore)
控制终端占用:前台启动意味着程序会在你启动它的那个终端(或命令行窗口)中运行。这意味着这个终端或窗口将被该程序占用,直到你手动停止它(如使用Ctrl+C)或程序自己结束。
直接交互:由于程序在前台运行,你可以直接看到它的输出(如日志信息、错误消息等),并可以直接与之交互(比如通过输入命令)。
不适合长时间运行的服务:由于它占用了一个终端或窗口,因此不适合那些需要长时间运行且不需要持续用户输入的服务,如生产环境中的数据库服务或Web服务器。
后台启动(nohup bin/hive --service metastore >> logs/metastore.log 2>&1 &)
不占用终端:后台启动允许程序在后台运行,不占用启动它的那个终端或窗口。这意味着你可以在同一终端中继续执行其他命令或关闭终端窗口,而程序将继续运行。
日志重定向:通过nohup命令和重定向操作符(>>和2>&1),可以将程序的输出(包括标准输出和标准错误)重定向到指定的日志文件(这里是logs/metastore.log)。这使得日志管理更加方便,且不会干扰到终端的输出。
适合长时间运行的服务:由于不占用终端且可以方便地管理日志,后台启动非常适合那些需要长时间运行且不需要用户持续交互的服务,如数据库、Web服务器或Hive的Metastore服务。
使用nohup:nohup命令用于在用户注销(logout)之后继续运行命令。它与&结合使用时,可以确保程序在后台持续运行,即使关闭了启动它的终端或会话。
启动客户端,二选一(当前先选择Hive Shell方式)
Hive Shell方式(可以直接写SQL): bin/hive
Hive ThriftServer方式(不可直接写SQL,需要外部客户端链接使用): bin/hive --service hiveserver2
查看hive是否运行