Artikel ini menjelaskan cara mengelola layanan dengan menggunakan systemd .
Pengantar
Banyak sistem operasi Linux® modern yang tersedia di Rackspace, seperti Centos® 7 dan yang lebih baru serta Ubuntu® 16.04, mengadopsi systemd sebagai pengelola sistem. Jadi, Anda mungkin ingin mengetahui seluk beluk cara menggunakannya untuk mengelola aplikasi Anda.
Gunakan systemctl
Saat Anda menggunakan systemd untuk mengelola aplikasi, Anda menggunakan perintah systemctl
. Bagian berikut menjelaskan beberapa fungsi perintah ini.
Memulai dan menghentikan layanan
Gunakan perintah systemctl start application.service
untuk memulai aplikasi dan perintah systemctl stop application.service
untuk menghentikan aplikasi. Jika Anda tidak tahu apakah suatu layanan sedang berjalan, Anda dapat menggunakan perintah systemctl status application.service
untuk memeriksa status, seperti yang ditunjukkan pada contoh berikut:
[root@localhost ~]# systemctl status httpd.service
httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
Active: inactive (dead)
Docs: man:httpd(8)
man:apachectl(8)
[root@localhost ~]# systemctl start httpd.service
[root@localhost ~]# systemctl status httpd.service
httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
Active: active (running) since Sun 2020-05-24 01:30:02 UTC; 1s ago
Docs: man:httpd(8)
man:apachectl(8)
Main PID: 16117 (httpd)
Status: "Processing requests..."
CGroup: /system.slice/httpd.service
├─16117 /usr/sbin/httpd -DFOREGROUND
├─16118 /usr/sbin/httpd -DFOREGROUND
├─16119 /usr/sbin/httpd -DFOREGROUND
├─16120 /usr/sbin/httpd -DFOREGROUND
├─16121 /usr/sbin/httpd -DFOREGROUND
└─16122 /usr/sbin/httpd -DFOREGROUND
May 24 01:30:02 localhost.localdomain systemd[1]: Starting The Apache HTTP Server...
May 24 01:30:02 localhost.localdomain httpd[16117]: AH00558: httpd: Could not reliably determine
the server's fully qualified domain name, using localhost.localdomain. Set the 'ServerName'
directive globally to suppress this message
May 24 01:30:02 localhost.localdomain systemd[1]: Started The Apache HTTP Server.
[root@localhost ~]#
Mulai ulang atau muat ulang layanan
Memulai ulang dan memuat ulang layanan adalah dua hal yang terpisah dengan systemd .
Saat Anda menjalankan perintah systemctl restart application.service
, layanan yang ditentukan akan dimulai ulang. Jika layanan dalam keadaan berhenti, layanan akan dimulai.
Saat Anda menjalankan perintah systemctl reload application.service
, konfigurasi servicereloads yang ditentukan. Misalnya, jika Anda membuat perubahan apa pun pada host virtual Apache® (vhost) dan Anda ingin perubahan tersebut ditayangkan tanpa menghentikan Apache, Anda memuat ulang layanan tersebut. Konfigurasi baru berlangsung tanpa mengganggu layanan.
Mengaktifkan dan menonaktifkan layanan
Jika Anda ingin layanan tertentu dimulai saat server di-boot, jalankan perintahsystemctl enable application.service
. Jika Anda ingin memastikan layanan tidak dimulai saat server boot, jalankan perintah systemctl disable application.service
.