Hadoop をインストールした後、ブートアップ セルフスタート方式を使用して、コマンドを入力する時間を節約できます。注意はセントOS7バージョン!!!とセントOS6バージョンの違いは非常に大きいです!
1. システムディレクトリに切り替えます
[root@master ~]# cd /etc/systemd
[root@master systemd]# ll
total 32
-rw-r--r-- 1 root root 720 Jun 30 23:11 bootchart.conf
-rw-r--r-- 1 root root 615 Jun 30 23:11 coredump.conf
-rw-r--r-- 1 root root 983 Jun 30 23:11 journald.conf
-rw-r--r-- 1 root root 957 Jun 30 23:11 logind.conf
drwxr-xr-x. 10 root root 4096 Aug 5 10:48 system
-rw-r--r-- 1 root root 1552 Jun 30 23:11 system.conf
drwxr-xr-x. 2 root root 4096 Jun 30 23:11 user
-rw-r--r-- 1 root root 1127 Jun 30 23:11 user.conf
/lib および /etc の下にはシステム ディレクトリがあり、/etc の設定は /lib の下の設定をオーバーライドします。
ディレクトリが 2 つあることに注意してください。system はシステム ディレクトリ、つまりユーザーとしてログインしなくても自動的に開始できます。user はユーザー ディレクトリで、タスクはログイン後に開始されます。
2.user
ディレクトリに移動し、新しいファイルを作成します。末尾が .service であることに注意してください (.service は読みやすさを向上させるためのものです)。
[root@master system]# cd ./user
[root@master user]# vim hadoop.service
3. 入力を編集します。
#Unit表明该服务的描述,类型描述。
[Unit]
Description=hadoop #描述服务名
After=network.target #服务级别,低于network,也可以理解为network启动后再启动Hadoop
#关键部分,用于设置一些关键参数
[Service]
Type=forking #以fork方式从父进程创建子进程
User=root
Group=root
ExecStart=/usr/local/hadoop-2.7.3/sbin/start-all.sh #启动目录
ExecStop=/usr/local/hadoop-2.7.3/sbin/stop-all.sh
PrivateTmp=true #是否给服务分配独立的临时空间
#Install定义如何启动,以及是否开机启动
[Install]
WantedBy=multi-user.target #当前 Unit 激活时(enable)符号链接目录
保存して終了
4. 許可を与える 754
chmod 754 hadoop.service
5. ブートを開始するように設定します
systemctl enable hadoop.service #关闭自启动:disable
このとき、システムはWantedBy
設定した値のアドレスを指し、この行がプロンプトを表示すれば、設定は成功です。
Created symlink from /etc/systemd/system/multi-user.target.wants/hadoop.service to /usr/lib/systemd/system/hadoop.service.
完了後は起動して自動的に起動するだけでなく、systemctl start hadoop.service
スタートアップサービスを利用してstatus
起動状況を確認することもできます。
さらに多くのコマンド
タスク | セントOS6 | セントOS7 |
---|---|---|
サービスを自動的に開始させる | chkconfig --レベル 3 の Hadoop オン | systemctl で hadoop.service を有効にする |
サービスが自動的に開始されないようにする | chkconfig --レベル 3 hadoop オフ | systemctl で hadoop.service を無効にする |
サービスステータスを確認する | サービスのHadoopステータス | systemctl status hadoop.service (サービスの詳細) systemctl is-active hadoop.service (アクティブかどうかのみを表示) |
開始されたサービスをすべて表示 | chkconfig --list | systemctl list-units --type=service |
サービスを開始する | サービスHadoopの開始 | systemctl は hadoop.service を開始します |
サービスを停止する | サービスHadoop停止 | systemctl は hadoop.service を停止します |
サービスを再起動する | サービスhttpdの再起動 | systemctl httpd.service を再起動します |
詳細について、またはブート自動開始ファイル構成コンテンツの意味をsystem
理解したい学生については、この記事「 Systemd Getting Started Tutorial: Commands」を参照してください。その中にはたくさんの知識ポイントが含まれています。写真を投稿してみんなが健康になれるように