{"id":20111185,"url":"https://github.com/openstack/charm-rabbitmq-server","last_synced_at":"2025-05-06T10:32:44.541Z","repository":{"id":66174701,"uuid":"52858918","full_name":"openstack/charm-rabbitmq-server","owner":"openstack","description":"Juju Charm - RabbitMQ. Mirror of code maintained at opendev.org.","archived":false,"fork":false,"pushed_at":"2024-11-07T20:33:17.000Z","size":2506,"stargazers_count":16,"open_issues_count":0,"forks_count":18,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-11-07T21:27:19.205Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://opendev.org/openstack/charm-rabbitmq-server","language":"Python","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/openstack.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-03-01T07:57:11.000Z","updated_at":"2024-09-18T18:30:30.000Z","dependencies_parsed_at":"2023-02-21T06:01:16.460Z","dependency_job_id":"5a7aaba9-5b27-4b34-948e-7db19125d1a1","html_url":"https://github.com/openstack/charm-rabbitmq-server","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openstack%2Fcharm-rabbitmq-server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openstack%2Fcharm-rabbitmq-server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openstack%2Fcharm-rabbitmq-server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openstack%2Fcharm-rabbitmq-server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openstack","download_url":"https://codeload.github.com/openstack/charm-rabbitmq-server/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224499855,"owners_count":17321605,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-13T18:14:47.207Z","updated_at":"2024-11-13T18:14:47.974Z","avatar_url":"https://github.com/openstack.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Overview\n\nRabbitMQ is an implementation of AMQP, the emerging standard for high\nperformance enterprise messaging. The RabbitMQ server is a robust and scalable\nimplementation of an AMQP broker.\n\nThe rabbitmq-server charm deploys RabbitMQ server and provides AMQP services to\nthose charms that support the rabbitmq interface. The current list of such\ncharms can be obtained from the [Charm Store][charms-requires-rabbitmq] (the\ncharms officially supported by the OpenStack Charms project are published by\n'openstack-charmers').\n\nNOTE: the charm doesn't officially support application data bags, and thus may\nnot work correctly with them.  See [this bug][app-data-bag-bug] for more\ndetails.\n\n# Usage\n\n## Configuration\n\nThis section covers common and/or important configuration options. See file\n`config.yaml` for the full list of options, along with their descriptions and\ndefault values. See the [Juju documentation][juju-docs-config-apps] for details\non configuring applications.\n\n#### `min-cluster-size`\n\nThe `min-cluster-size` option sets the number of rabbitmq-server units required\nto form its cluster. It is best practice to use this option as doing so ensures\nthat the charm will wait until the cluster is up before accepting relations\nfrom other client applications.\n\n#### `source`\n\nThe `source` option sets an alternate software source and can be passed during\nor after deployment. The default behaviour is to use the Ubuntu package archive\nfor the underlying machine series. The most common value is a [UCA][uca] cloud\npocket (e.g. 'cloud:bionic-train'). In the case of a non-OpenStack project,\nthere is no guarantee that a candidate will be found in the stated UCA pocket.\n\n\u003e **Note:** Changing the value of this option post-deployment will trigger a\n  software upgrade. See [OpenStack upgrade][cdg-upgrade-openstack] in the\n  [OpenStack Charms Deployment Guide][cdg].\n\n## Deployment\n\nTo deploy a single rabbitmq-server unit:\n\n    juju deploy rabbitmq-server\n\nTo make use of AMQP services, simply add a relation between rabbitmq-server and\nan application that supports the rabbitmq interface. For instance:\n\n    juju add-relation rabbitmq-server:amqp nova-cloud-controller:amqp\n\n## Monitoring\n\nTo collect RabbitMQ metrics, add a relation between rabbitmq-server and\nan application that supports the `scrape` interface. For instance:\n\n    juju add-relation rabbitmq-server:scrape prometheus:scrape\n\n\u003e **Note:** The scrape relation is only supported when the RabbitMQ version is \u003e= 3.8.\n\nThe charm can be related to a dashboard charm like grafana to view visualization metrics:\n\n    juju add-relation rabbitmq-server:dashboards grafana:dashboards\n\nTo get alerts of RabbitMQ split-brain events, add a relation between rabbitmq-server and\nan application that supports the `prometheus-rules` interface. For instance:\n\n    juju add-relation rabbitmq-server:prometheus-rules prometheus:prometheus-rules\n\n## High availability\n\nWhen more than one unit is deployed the charm will bring up a native RabbitMQ\nHA active/active cluster. The ``min-cluster-size`` option should be used (see\ndescription above).\n\nSee [Infrastructure high availability][cdg-ha-rabbitmq] in the [OpenStack Charms\nDeployment Guide][cdg] for details.\n\n### TLS\n\nCommunication between the AMQP message queue and client services (OpenStack\napplications) can be TLS-encrypted. There are two methods for managing keys and\ncertificates:\n\n1. with Vault\n1. manually (via charm options)\n\nVault can set up private keys and server certificates for an application. It\nalso stores a central CA certificate for the cloud. See the\n[vault][vault-charm] charm for more information.\n\nVault is the recommended method and is what will be covered here.\n\nThe private key and server certificate (and its signing) are managed via a\nrelation made to the vault application:\n\n    juju add-relation rabbitmq-server:certificates vault:certificates\n\n## Actions\n\nThis section lists Juju [actions][juju-docs-actions] supported by the charm.\nActions allow specific operations to be performed on a per-unit basis.\n\n* `check-queues`\n* `cluster-status`\n* `complete-cluster-series-upgrade`\n* `list-unconsumed-queues`\n* `pause`\n* `resume`\n* `list-service-usernames`\n* `rotate-service-user-password`\n\nTo display action descriptions run `juju actions --schema rabbitmq-server`. If\nthe charm is not deployed then see file ``actions.yaml``.\n\n# Documentation\n\nThe OpenStack Charms project maintains two documentation guides:\n\n* [OpenStack Charm Guide][cg]: for project information, including development\n  and support notes\n* [OpenStack Charms Deployment Guide][cdg]: for charm usage information\n\n# Bugs\n\nFor general charm questions refer to the [OpenStack Charm Guide][cg].\n\n\u003c!-- LINKS --\u003e\n\n[cg]: https://docs.openstack.org/charm-guide\n[cdg]: https://docs.openstack.org/project-deploy-guide/charm-deployment-guide\n[cdg-upgrade-openstack]: https://docs.openstack.org/project-deploy-guide/charm-deployment-guide/latest/upgrade-openstack.html\n[lp-bugs-charm-rabbitmq-server]: https://bugs.launchpad.net/charm-rabbitmq-server/+filebug\n[juju-docs-actions]: https://jaas.ai/docs/actions\n[charms-requires-rabbitmq]: https://jaas.ai/search?requires=rabbitmq\n[vault-charm]: https://jaas.ai/vault\n[uca]: https://wiki.ubuntu.com/OpenStack/CloudArchive\n[cdg-ha-rabbitmq]: https://docs.openstack.org/project-deploy-guide/charm-deployment-guide/latest/app-ha.html#rabbitmq\n[juju-docs-config-apps]: https://juju.is/docs/configuring-applications\n[app-data-bag-bug]: https://bugs.launchpad.net/charm-rabbitmq-server/+bug/2051930\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenstack%2Fcharm-rabbitmq-server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenstack%2Fcharm-rabbitmq-server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenstack%2Fcharm-rabbitmq-server/lists"}