GNU/Linux >> Znalost Linux >  >> Debian

Jak používat Ansible k instalaci a konfiguraci Redis 6 na Debian 11

Redis je úložiště datových struktur v paměti, které se používá jako distribuovaná databáze klíč–hodnota v paměti, mezipaměť a zprostředkovatel zpráv s volitelnou trvanlivostí. Redis podporuje různé druhy abstraktních datových struktur, jako jsou řetězce, seznamy, mapy, sady, tříděné sady, HyperLogLogs, bitmapy, proudy a prostorové indexy.

Ansible je nástroj pro poskytování, správu konfigurace a nasazení aplikací s otevřeným zdrojovým kódem umožňující infrastrukturu jako kód. Běží na mnoha systémech podobných Unixu a může konfigurovat systémy podobné Unixu i Microsoft Windows.

Související obsah

  • Jak nainstalovat a nakonfigurovat Redis 6 na Debian 11
  • Jak používat Ansible k instalaci a konfiguraci Redis 6 na Ubuntu 20.04
  • Jak nainstalovat a nakonfigurovat Redis 6 na Ubuntu 20.04
  • Jak nainstalovat a nakonfigurovat Redis 6 na FreeBSD 13
  • Jak nainstalovat a nakonfigurovat Redis 6 na OpenSUSE Leap 15.3
  • Jak nainstalovat a nakonfigurovat Redis 6 na Fedoře 34

Předpoklady

Chcete-li pokračovat, ujistěte se, že máte:

  • Aktualizovaný server Debian
  • Přístup k internetu
  • Kořenový přístup k serveru nebo uživateli s přístupem sudo

Obsah

  1. Případné úlohy pro zajištění aktuálnosti serveru
  2. Instalace některých běžných balíčků
  3. Nastavení úložiště Redis 6
  4. Instalace serveru Redis 6
  5. Konfigurace serveru Redis 6
  6. Nastavení obslužných programů
  7. Celá příručka k instalaci a nastavení Redis 6 v Debianu 11

1. Možné úlohy pro zajištění aktuálnosti serveru

Než budete pokračovat, ujistěte se, že je server aktuální pomocí těchto úloh:

- name: Update apt repo and cache on all Debian/Ubuntu boxes
  apt:
    update_cache: yes
    force_apt_get: yes
    cache_valid_time: 3600

Kde:

  1. update_cache:ano – Spusťte ekvivalent příkazu apt-get update na všech serverech
  2. force_apt_get:ano – Nepoužívejte příkaz aptitude, místo toho použijte příkaz apt-get na krabicích Debian/Ubuntu
  3. cache_valid_time:3600 – Aktualizujte mezipaměť apt, pokud je starší než cache_valid_time. Tato možnost se nastavuje v sekundách. V těchto příkladech je nastavena na 3600 sekund.

Probíhá upgrade

- name: Upgrade all packages on servers
  apt:
    upgrade: dist
    force_apt_get: yes

Kde:

  1. upgrade:dist – Spusťte ekvivalent příkazu „apt-get upgrade“ na všech serverech Ubuntu nebo Debian Linux. Jinými slovy upgradujte všechny balíčky na nejnovější verzi.
  2. force_apt_get:ano – Místo aptitude použijte apt-get.

2. Instalace některých běžných balíčků

Použijte toto k instalaci běžných balíčků. K nastavení repozitářů v Debianu je vyžadován balíček gnugpg.

- name: Install required packages
  apt:
    name:
      - gnupg
      - vim
    state: latest

3. Nastavení Redis 6 Repo

Nejnovější stabilní verzi (verze 6) Redis si můžete nainstalovat z oficiálních packages.redis.io APT úložiště. Přidejte úložiště do apt index, aktualizujte jej a nainstalujte:

- 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. Nainstalujte server Redis 6

Nyní aktualizujte úložiště mezipaměti a nainstalujte server redis

- name: Install redis
  apt:
    name: redis-server
    update_cache: yes
  notify:
    - Enable Redis

Zde používáme apt k aktualizaci mezipaměti pomocí update_cache:yes poté nainstalujte redis-server a nakonec nastavení obsluhy pro povolení redis-server při spouštění.

5. Konfigurace serveru Redis 6

Dále musíme nakonfigurovat server tak, aby byl připraven k produkci.

Přidejte řádek, který serveru umožní zapisovat do souboru 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

Ve výše uvedeném aktualizujeme konfigurační soubor redis, aby připojil řádek pidfile /var/run/redis/redis-server.pid takže může zapsat soubor pid. Nastavujeme také obslužnou rutinu, která restartuje službu, když je playbook dokončen.

Dále nastavíme heslo pro náš server redis, abychom zvýšili zabezpečení.

- name: Secure redis with a password
  lineinfile:
    dest: /etc/redis/redis.conf
    regexp: '^(# )?requirepass \w*$'
    line: 'requirepass {{ redis_password }}'
    state: present
  notify:
    - Restart Redis

Ve výše uvedeném aktualizujeme konfigurační soubor redis, aby připojil řádek requirepass {{ redis_password }} takže může nastavit heslo na nastavenou hodnotu. Nastavujeme také obslužnou rutinu, která restartuje službu, když je playbook dokončen.

Nakonec spojme službu s 0.0.0.0 takže je přístupný externě pomocí 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. Nastavení ovladačů

Nastavíme výše uvedené handlery. Obslužné rutiny jsou stejné jako běžné úlohy v Ansible playbooku, ale spustí se pouze v případě, že úloha obsahuje příkaz „notify“ . Také to naznačuje, že se něco změnilo.

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

Tyto obslužné rutiny budou spuštěny po provedení úloh, aby se služba restartovala a povolila.

7. Celá příručka k instalaci a nastavení Redis 6 v Debianu 11

Toto je konečná příručka. Mám soubor uložený jako 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. Vytvoření souboru hosts

Vytvořte hosts.yaml soubor s tímto obsahem. Ujistěte se, že se můžete připojit k serveru přidanému zde.

all:
  hosts:
    debiansrv:
      ansible_ssh_host: 10.2.11.10
      ansible_ssh_user: admin

8. Spuštění příručky

Musíte nainstalovat Ansible lokálně. Chcete-li nainstalovat Ansible, můžete použít správce balíčků OS nebo pomocí pip. Pomocí tohoto příkazu pip nainstalujte ansible:

pip install ansible

Pro spuštění playbooku použijte tento příkaz:

ansible-playbook -i hosts.yaml setup-redis-debian.yaml -vv

Závěr

V této příručce jsme se naučili, jak používat ansible k instalaci a konfiguraci Redis 6 v Debianu 11.


Debian
  1. Jak nainstalovat a používat Ansible na Debian 11

  2. Jak nainstalovat a nakonfigurovat docker na Debian 11

  3. Jak nainstalovat a nakonfigurovat Mariadb 10 v Debianu 11

  1. Jak nainstalovat a nakonfigurovat Redis 6.0 na Debian 11

  2. Jak nainstalovat a nakonfigurovat MongoDB 5 na Debian 11

  3. Jak nainstalovat a nakonfigurovat Redis 6 na Debian 11

  1. Jak nainstalovat a používat Debian Backports

  2. Jak nainstalovat a nakonfigurovat Redis na Debian 9

  3. Jak nainstalovat a nakonfigurovat Redis na Debianu