Update Redis Sever value via Bash Script and Run on odd-minutes with crontab

Pertama, pastikan redis-server sudah benar benar berjalan menggunakan perintah :

# redis-cli ping
PONG

Kita ingin nantinya kita akan membuat key baru bernama skills39:index yang isinya mencantumkan waktu atau tanggal sekarang, dan waktu atau tanggal 1 jam kemudian.

Sebelum redis nanti dieksekusi via script bash, cobak sekarang dieksekusi secara biasa terlebih dahulu, apakah bisa berjalan atau tidak.

# redis-cli set skills39:index "Today is the [`date`] and in one hour is [`date -d "+1 hours"`]"
OK

Jika hasilnya “OK”, berarti perintah set redis berhasil dijalankan, bisa verifikasi menggunakan perintah :

# redis-cli get skills39:index
"Today is the [Sun Dec 30 13:49:27 WIB 2018] and in one hour is [Sun Dec 30 14:49:27 WIB 2018]"

Pastikan muncul value sesuai yang diharapkan, yaitu waktu sekarang dan 1 jam kemudian. Kemudian buat file bash khusus yang nantinya menyimpan perintah ini:

# nano index_update.sh

Kemudian isi file tersebut dengan perintah bash yang tadi dibuat :

#!/bin/bash

redis-cli set skills39:index "Today is the [`date`] and in one hour is [`date -d "+1 hours"`]"

Lalu save file tersebut. Agar file tersebut dapat dieksekusi, beri permission :

# chmod +x index_update.sh

Setelah itu, cobak eksekusi file tersebut menggunakan perintah “/bin/bash directoryfilebash”.

# /bin/bash /root/index_update.sh
OK

Pastikan hasilnya OK alias tidak muncul error.

Penjadwalan otomatis menggunakan crontab

Sekarang kita ingin agar file bash yang sudah dibuat bisa berjalan secara terus menerus menggunakan crontab setiap waktu yang menitnya ganjil.

Tambahkan baris rule crontab pada bagian paling bawah :

1-59/2 * * * * /bin/bash /root/index_update.sh > /dev/null

Jika sudah, save file tersebut. Untuk pengujiannya, kita bisa menunggu sampai waktu sudah melewati menit menit ganjil, lalu ketikkan perintah :

# redis-cli get skills39:index
"Today is the [Sun Dec 30 14:01:01 WIB 2018] and in one hour is [Sun Dec 30 15:01:01 WIB 2018]"

Pastikan waktu menit pada kurung kotak merupakan angka ganjil.

Terimakasih

Tinggalkan komentar