Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Deploy KCIDB Grafana to Google Cloud #22

Open
spbnick opened this issue Feb 23, 2023 · 0 comments
Open

Deploy KCIDB Grafana to Google Cloud #22

spbnick opened this issue Feb 23, 2023 · 0 comments

Comments

@spbnick
Copy link
Collaborator

spbnick commented Feb 23, 2023

Currently, KCIDB's Grafana is deployed to the staging host, and is doing just fine.

We're using an old Grafana version, because our data is public anyway (so not much security risk there), and because we're using a custom panel we implemented hacked together to support some of the features we need. Judging by the state of Grafana's API at the moment, we will likely need some work to port it to a new version.

At the moment Grafana is using the Google BigQuery datasource, and we might continue using that, but we would also like to try using PostgreSQL instead. The latter might be faster for smaller data sizes, improving user experience, and the price of using it grows much slower with the number of users.

It would be good to deploy Grafana to Google Cloud, because it's where the rest of KCIDB is, and because it could save us some maintenance effort and improve monitoring.

Here are the steps we could follow:

  • Deploy the current version of Grafana to Google Cloud. Preferably in a way, which would let us deploy it somewhere else if we choose (e.g. using a Docker container). The datasource would need to be created manually, as described in the README.md, and the dashboards will need to be loaded by hand as well.
  • Switch the current domain name to the newly-deployed Grafana.
  • Add the PostgreSQL data source to the deployed Grafana. Consult the official connection guides, and the existing staging and production PostgreSQL deployments, along with the source code of the cloud tool which manages them, for details.
  • Upgrade the Grafana to a latest stable version, in a separate branch for the start (since we might have a problem with the custom panel), so we could deploy it officially, once we're ready.

At a convenient point in the above plan, see if we could automate deployment of the dashboards as well (the current dashboards are kept up to date in the above-linked repository). Best way would be using a tool which would let us generate the dashboards programmatically, including the SQL queries, as there are a lot of repetitions and copy-paste between various panels and dashboards. There are multiple tools and ways available to do that, it seems.

At any point in the above plan, see if we could automate deployment of changes to Grafana deployment parameters and dashboards from a GitHub repository.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant