[openstack-ansible] Playbook/Role to install a Redis cluster for Gnocchi incoming measure storage?

Dmitriy Rabotyagov noonedeadpunk at gmail.com
Mon May 1 18:24:02 UTC 2023


Hi, Roger,

No, unfortunately we don't have any in-house way to deploy redis, as
it's usage area is quite limited. Moreover there're more
storage/incoming drivers that are supported by Gnocchi, including
Ceph, S3 and just MySQL.

But roles should not be aware of LXC containers or anything OSA
specific as you can create any arbitrary containers whenever needed
with default OSA roles and then using a playbook execute any
third-party roles against these LXC containers. You can find some
documentation on how inventory works with OSA here:
https://docs.openstack.org/openstack-ansible/latest/reference/inventory/understanding-inventory.html

So, basically what you should do to create extra set of containers for Redis:
1. Create /etc/openstack_deploy/env.d/redis.yml with content:
component_skel:
  redis:
    belongs_to:
      - redis_all
container_skel:
  redis_container:
    belongs_to:
      - redis_containers
    contains:
      - redis
physical_skel:
  redis_containers:
    belongs_to:
      - all_containers
  redis_hosts:
    belongs_to:
      - hosts
2. In /etc/openstack_deploy/openstack_user_config.yml (or in a
separate file under conf.d) define where containers should reside, ie:
redis_hosts:
  infra1:
    ip: 172.29.236.11
  infra2:
    ip: 172.29.236.12
  infra3:
    ip: 172.29.236.13
3. Execute playbook: openstack-ansible
playbooks/lxc-containers-create.yml --limit redis_all,lxc_hosts

Once this is done, you can simply deploy redis to these containers, by
targeting the redis_all group from corresponsive playbook. Hope this
helps:)

пн, 1 мая 2023 г. в 19:46, Roger Rivera <roger.riverac at gmail.com>:
>
> Hello Community,
>
> I was wondering if there is an Ansible playbook from OSA to install a Redis cluster to be configured as incoming measure for Gnocchi?
>
> There is this deployment example that points to an external Ansible role. Unfortunately, that role does not make use of LXC containers to keep consistency with OSA deployment on the infra nodes.
>
> We want the infra nodes to also host the Redis/Sentinel master-slave cluster, if possible.
>
> Questions:
>
> Can anyone steer us in the right direction to do Telemetry with Gnocchi, Ceph and Redis with an Openstack-Ansible deployment with LXC containers?
> Is there a better approach to use Redis as an incoming measure storage for the gnocchi installation?
>
> Any suggestions, guidance will be appreciated.
>
> --
> Roger Rivera



More information about the openstack-discuss mailing list