Operations grimoire/Sentry: Difference between revisions

From Nasqueron Agora
No edit summary
No edit summary
Line 49: Line 49:
$ deploy-container kafka
$ deploy-container kafka
</syntaxhighlight>
</syntaxhighlight>
== Deployment of Sentry containers ==
Sentry containers are currently deployed to docker-002. Pillar configuration and containers definitions are based on the getsentry/self-hosted repository.
'''The containers ARE NOT directly deployed USING the getsentry/self-hosted repository or the scripts it provides.''' Containers are regularly managed like any other container through Salt in paas-docker role. Instead, the getsentry/self-hosted repository is used as reference implementation documentation and any change needs to be reflected to our own configuration.
{| class="wikitable"
|+ Correspondance repositories
|-
! rOPS !! getsentry/self-hosted !! Sentry version
|-
| [https://devcentral.nasqueron.org/D2808 D2881] || [https://github.com/getsentry/self-hosted/commit/06662c6cdc8573f81b6a128c7bdb815efd5040ed 06662c6cdc85] || 23.2.0
|}

Revision as of 10:45, 12 March 2023

Sentry is deployed on docker-002 through the Docker PaaS.

The Sentry DSN or the humans UI can be reached at https://sentry.nasqueron.org

Command line

Sentry provides a command line interface.

To use it, log in to docker-002, then run sentry nasqueron <command>. It will then spawn a new container correctly linked to the database, SMTP server and PostgreSQL database to run it. TODO: update the sentry wrapper to use the sentry network and get the right environment instead.

If you've deployed another instance than for Nasqueron, replace it by the realm name.

The following commands are available in 9.0:

 cleanup        Delete a portion of trailing data based on...
 cleanup_chunk
 config         Manage runtime config options.
 createuser     Create a new user.
 devserver      Starts a lightweight web server for...
 django         Execute Django subcommands.
 exec           Execute a script.
 export         Exports core metadata for the Sentry...
 files          Manage files from filestore.
 help           Show this message and exit.
 import         Imports data from a Sentry export.
 init           Initialize new configuration directory.
 permissions    Manage Permissions for Users.
 plugins        Manage Sentry plugins.
 queues         Manage Sentry queues.
 repair         Attempt to repair any invalid data.
 run            Run a service.
 shell          Run a Python interactive interpreter.
 start          DEPRECATED see `sentry run` instead.
 tsdb           Tools for interacting with the time series...
 upgrade        Perform any pending database migrations and...

Kafka and ZooKeeper

  • Deployment pitfall: ZooKeeper wants a clean log if you initialise it, if not it will shutdown. Ensure it has always a data volume or an empty log when starting it.
  • Kafka has a 20 seconds pause before initializing the topics, to let the cluster correctly start.

To reprovision Kafka and ZooKeeper from scratch, the following works fine:

$ rm -rf /srv/kafka/sentry_kafka /srv/zookeeper/sentry_zookeeper
$ deploy-container zookeeper
$ deploy-container kafka

Deployment of Sentry containers

Sentry containers are currently deployed to docker-002. Pillar configuration and containers definitions are based on the getsentry/self-hosted repository.

The containers ARE NOT directly deployed USING the getsentry/self-hosted repository or the scripts it provides. Containers are regularly managed like any other container through Salt in paas-docker role. Instead, the getsentry/self-hosted repository is used as reference implementation documentation and any change needs to be reflected to our own configuration.

Correspondance repositories
rOPS getsentry/self-hosted Sentry version
D2881 06662c6cdc85  23.2.0