Skip to content
GitLab Next
  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • GitLab FOSS GitLab FOSS
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
    • Requirements
  • Merge requests 0
    • Merge requests 0
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Metrics
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • Code review
    • Insights
    • Issue
    • Repository
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • GitLab.org
  • GitLab FOSSGitLab FOSS
  • Issues
  • #28916
Closed
Open
Created Mar 02, 2017 by Joshua Lambert@joshlambertDeveloper

Enhance Prometheus integration for managed deployments on Kubernetes

Description

We are now able to deploy Prometheus servers to connected Kubernetes clusters with a single button (https://gitlab.com/gitlab-org/gitlab-ce/issues/41053). With GitLab's multi-cluster support, this can mean either a single or multiple Prometheus servers for a given project.

We now need to take this further to make the experience seamless:

  1. Automatically enable Prometheus integration, configured for each deployed Prometheus instance
  2. Logic to determine which Prometheus server to utilize for a given environment, if multiple clusters are connected.
  3. Utilize the Kubernetes API to securely query the Prometheus servers without requiring them to be externally reachable outside the cluster

The general user flow will be:

  1. User connects a Kubernetes cluster(s)
  2. Deploys Helm Tiller, then Prometheus
  3. At this point, Prometheus integration is now automatically enabled. Manually configuring the Prometheus URL is now disabled, instead showing that this is being automatically managed.
  4. Monitoring UI elements now appear, and will function as expected for environments which have had a Prometheus server deployed.
  5. In the event that the cluster for an environment does not have Prometheus deployed, they will see the empty state.

One note, the currently deployed Ingress does not have metrics enabled or proper annotations for Prometheus monitoring. This is being resolved in https://gitlab.com/gitlab-org/gitlab-ce/issues/39985.

Designs

Note: The general design and user experience for installing applications in the Cluster page is found in https://gitlab.com/gitlab-org/gitlab-ce/issues/38464

🔍 View design specs (for spacing, sizes, colors and text copying) — Hide notes in the top-right corner

Edited Feb 01, 2018 by Joshua Lambert
Assignee
Assign to
Time tracking