Redis adalah penyimpanan struktur data dalam memori, digunakan sebagai database nilai kunci, cache, dan broker pesan terdistribusi dalam memori, dengan daya tahan opsional. Redis mendukung berbagai jenis struktur data abstrak, seperti string, daftar, peta, set, set yang diurutkan, HyperLogLogs, bitmap, aliran, dan indeks spasial.
Ansible adalah penyediaan perangkat lunak sumber terbuka, manajemen konfigurasi, dan alat penerapan aplikasi yang memungkinkan infrastruktur sebagai kode. Ini berjalan di banyak sistem mirip Unix, dan dapat mengonfigurasi sistem mirip Unix serta Microsoft Windows.
Konten Terkait
- Cara menginstal dan mengkonfigurasi Redis 6 di Debian 11
- Cara menggunakan Ansible untuk menginstal dan mengonfigurasi Redis 6 di Ubuntu 20.04
- Cara menginstal dan mengkonfigurasi Redis 6 di Ubuntu 20.04
- Cara menginstal dan mengkonfigurasi Redis 6 di FreeBSD 13
- Cara menginstal &mengkonfigurasi Redis 6 pada OpenSUSE Leap 15.3
- Cara menginstal dan mengonfigurasi Redis 6 di Fedora 34
Prasyarat
Untuk mengikuti, pastikan Anda memiliki:
- Server Debian yang diperbarui
- Akses ke Internet
- Akses root ke server atau pengguna dengan akses sudo
Daftar Isi
- Tugas yang dapat dilakukan untuk memastikan server mutakhir
- Menginstal beberapa paket umum
- Menyiapkan repo Redis 6
- Memasang server Redis 6
- Mengonfigurasi Server Redis 6
- Menyiapkan penangan
- Seluruh buku pedoman untuk menginstal dan menyiapkan Redis 6 di Debian 11
1. Tugas yang memungkinkan untuk memastikan server mutakhir
Sebelum melanjutkan, izinkan kami memastikan bahwa server telah diperbarui menggunakan tugas-tugas berikut:
- name: Update apt repo and cache on all Debian/Ubuntu boxes
apt:
update_cache: yes
force_apt_get: yes
cache_valid_time: 3600
Dimana:
- update_cache:ya – Jalankan yang setara dengan perintah apt-get update di semua server
- force_apt_get:ya – Jangan gunakan perintah aptitude, alih-alih gunakan perintah apt-get pada kotak Debian/Ubuntu
- cache_valid_time:3600 – Perbarui cache apt jika lebih lama dari cache_valid_time. Opsi ini diatur dalam hitungan detik. Dalam contoh ini, disetel ke 3600 detik.
Melakukan peningkatan
- name: Upgrade all packages on servers
apt:
upgrade: dist
force_apt_get: yes
Dimana:
- peningkatan versi:dist – Jalankan perintah yang setara dengan “apt-get upgrade” di semua server Ubuntu atau Debian Linux. Dengan kata lain, tingkatkan semua paket ke versi terbaru.
- force_apt_get:ya – Gunakan apt-get sebagai ganti aptitude.
2. Menginstal beberapa paket umum
Gunakan ini untuk menginstal paket umum. Paket gnugpg diperlukan untuk mengatur repo di Debian.
- name: Install required packages
apt:
name:
- gnupg
- vim
state: latest
3. Menyiapkan Redis 6 Repo
Anda dapat menginstal Redis versi stabil terbaru (versi 6) dari packages.redis.io
resmi gudang APT. Tambahkan repositori ke apt
indeks, perbarui dan instal:
- name: Set up Redis 6 repo
shell: |
curl https://packages.redis.io/gpg | sudo apt-key add -
echo "deb https://packages.redis.io/deb $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/redis.list
4. Instal server Redis 6
Sekarang perbarui cache repo dan instal server redis
- name: Install redis apt: name: redis-server update_cache: yes notify: - Enable Redis
Di sini kami menggunakan apt untuk memperbarui cache terlebih dahulu dengan update_cache:yes lalu instal redis-server dan terakhir menyiapkan penangan untuk mengaktifkan redis-server
saat boot.
5. Mengonfigurasi server Redis 6
Selanjutnya kita mengkonfigurasi server agar siap produksi.
Tambahkan baris untuk mengizinkan server menulis ke file pid
- name: Set redis server pid file
lineinfile:
path: /etc/redis/redis.conf
regexp: "^pidfile"
line: "pidfile /var/run/redis/redis-server.pid"
notify:
- Restart Redis
Di atas, kami memperbarui file konfigurasi redis untuk menambahkan baris pidfile /var/run/redis/redis-server.pid sehingga dapat menulis file pid. Kami juga menyiapkan penangan untuk memulai kembali layanan saat buku pedoman selesai dijalankan.
Selanjutnya, mari kita siapkan kata sandi untuk server redis keluar untuk meningkatkan keamanan.
- name: Secure redis with a password
lineinfile:
dest: /etc/redis/redis.conf
regexp: '^(# )?requirepass \w*$'
line: 'requirepass {{ redis_password }}'
state: present
notify:
- Restart Redis
Di atas, kami memperbarui file konfigurasi redis untuk menambahkan baris mewajibkan sandi {{ redis_password }} sehingga dapat mengatur kata sandi menjadi nilai yang ditetapkan. Kami juga menyiapkan penangan untuk memulai kembali layanan saat buku pedoman selesai dijalankan.
Terakhir, mari kita ikat layanan ke 0.0.0.0 sehingga dapat diakses secara eksternal menggunakan bind 0.0.0.0
- name: Bind redis to 0.0.0.0
lineinfile:
dest: /etc/redis/redis.conf
regexp: '^bind \b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b$'
line: 'bind 0.0.0.0'
state: present
notify:
- Restart Redis
6. Menyiapkan penangan
Mari kita mengatur penangan yang tercantum di atas. Penangan sama seperti tugas normal dalam buku pedoman Ansible, tetapi mereka hanya berjalan jika Tugas berisi perintah “beri tahu” . Ini juga menunjukkan bahwa itu mengubah sesuatu.
handlers:
- name: Restart Redis
systemd:
name: redis-server
state: restarted
- name: Start Redis
systemd:
name: redis-server
state: started
- name: Stop Redis
systemd:
name: redis-server
state: stopped
- name: Enable Redis
systemd:
name: redis-server
enabled: yes
Handler tersebut akan dijalankan setelah tugas dimulai ulang dan mengaktifkan layanan.
7. Seluruh buku pedoman untuk menginstal dan menyiapkan Redis 6 di Debian 11
Ini adalah buku pedoman terakhir. Saya memiliki file yang disimpan sebagai setup-redis-debian.yaml
---
- name: Install and set up Redis 6 in Debian 11
hosts: debiansrv
become: yes
gather_facts: False
vars:
redis_password: j2GfJuLFR8
tasks:
- name: Update apt repo and cache on all Debian/Ubuntu boxes
apt:
update_cache: yes
force_apt_get: yes
cache_valid_time: 3600
- name: Upgrade all packages on servers
apt:
upgrade: dist
force_apt_get: yes
- name: Install required packages
apt:
name:
- gnupg
- vim
state: latest
- name: Set up Redis 6 repo
shell: |
curl https://packages.redis.io/gpg | sudo apt-key add -
echo "deb https://packages.redis.io/deb $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/redis.list
- name: Install redis
apt:
name: redis-server
update_cache: yes
notify:
- Enable Redis
- name: Set redis server pid file
lineinfile:
path: /etc/redis/redis.conf
regexp: "^pidfile"
line: "pidfile /var/run/redis/redis-server.pid"
notify:
- Restart Redis
- name: Secure redis with a password
lineinfile:
dest: /etc/redis/redis.conf
regexp: '^(# )?requirepass \w*$'
line: 'requirepass {{ redis_password }}'
state: present
notify:
- Restart Redis
- name: Bind redis to 0.0.0.0
lineinfile:
dest: /etc/redis/redis.conf
regexp: '^bind \b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b$'
line: 'bind 0.0.0.0'
state: present
notify:
- Restart Redis
handlers:
- name: Restart Redis
systemd:
name: redis-server
state: restarted
- name: Start Redis
systemd:
name: redis-server
state: started
- name: Stop Redis
systemd:
name: redis-server
state: stopped
- name: Enable Redis
systemd:
name: redis-server
enabled: yes
8. Membuat file host
Buat hosts.yaml
file dengan konten ini. Pastikan Anda dapat terhubung ke server yang ditambahkan di sini.
all:
hosts:
debiansrv:
ansible_ssh_host: 10.2.11.10
ansible_ssh_user: admin
8. Menjalankan buku pedoman
Anda perlu Ansible diinstal secara lokal. Untuk menginstal Ansible, Anda dapat menggunakan manajer paket OS atau menggunakan pip. Gunakan perintah pip ini untuk menginstal ansible:
pip install ansible
Untuk menjalankan playbook gunakan perintah ini:
ansible-playbook -i hosts.yaml setup-redis-debian.yaml -vv
Kesimpulan
Dalam panduan ini, kami mempelajari cara menggunakan kemungkinan untuk menginstal dan mengonfigurasi Redis 6 di Debian 11.