grzegorznowak.redis

构建状态

Ansible 角色:Redis

在 Debian 上安装 Redis Server

这是一个针对基于 Debian 的发行版的简单多配置 Redis 角色,具有紧密的测试覆盖,使用分子 (molecule) 进行本地测试,并且提供一个与 Docker 兼容的层,以便在 Docker 容器上构建。

它将创建独立的配置文件(位于 /etc/redis/redis-{{name}}.conf 下),以及为每个定义的配置创建独立的 /var/log/redis/ 日志点。

这个角色非常适合用于开发目的,在单台机器上测试多个配置,以及用于生产部署,代码简洁,经过全面的分子覆盖和代码检查。

在 lxd/裸金属上使用 systemctl,在 Docker 上使用简单的 init.d

需求

无依赖项。

覆盖

目前支持最新的基于 Debian 的发行版:

Ubuntu: 18.04, 16.04

Debian: stretch

变量

默认设置

redis_package_name: "redis-server"  

redis_configs:
  - port: 6380      # 监听端口   
    name: "cache"   # 配置名称 - 也会影响日志文件 (/var/log/redis) 和 pid 文件目标名称
    bind: 127.0.0.1 # 绑定的 IP 地址(localhost 是最安全的选项)
    

一个多配置示例

redis_configs:
  - port: 6379,
    name: "cache"
    bind: 127.0.0.1   
  - port: 6380,
    name: "session"
    bind: 127.0.0.1
  - port: 8080,
    name: "shared-cache"
    bind: 0.0.0.0  
    # 注意,最后一个配置将打开 8080 端口供外部访问,
    # 需要单独的安全规则(此角色不包括)。

目前该角色安装支持发行版上最新的稳定版本。

示例剧本

从 GitHub 克隆时
---
- hosts: all
  vars:
    redis_configs:
      - port: 6379,
        name: "cache0"
        bind: 127.0.0.1
      - port: 6380,
        name: "cache1"
        bind: 127.0.0.1
  roles:
    - role: ansible-redis
    
从 ansible-galaxy 时
---
- hosts: all
  vars:
    redis_configs:
      - port: 6379,
        name: "cache0"
        bind: 127.0.0.1
      - port: 6380,
        name: "cache1"
        bind: 127.0.0.1
  roles:
    - role: grzegorznowak.redis        

测试

需求

使用低级 LXD chroot 容器进行测试

molecule test

针对 Docker 基础镜像进行测试

molecule test --scenario-name=docker_dev

使用分子提供的额外好处

请记住,您还可以做一些有趣的事情,例如 molecule converge 来随意创建实例,然后使用 molecule destroy 来销毁它们。这里没有限制!

赞助商

Kwiziq.com - AI 语言学习平台

Spottmedia.com - 技术设计、交付和咨询

作者信息

Grzegorz Nowak 用心制作。

关于项目

Redis multiconf for Ubuntu. Molecule covered. Also builds for vanilla docker machines.

安装
ansible-galaxy install grzegorznowak.redis
许可证
Unknown
下载
7k
拥有者
Let's solve some more problems, shall we ?