2 votes

Impossible de faire fonctionner une URL de charte de casque Grafana avec un sous-chemin

Je suis en train de mettre en place un serveur Grafana sur mon cluster kube local en utilisant des chartes Helm. J'essaie de le faire fonctionner sur un sous-chemin afin de l'implémenter ultérieurement dans un environnement de production avec tls, mais je ne parviens pas à accéder à Grafana sur http://localhost:3000/grafana.

J'ai essayé presque toutes les recommandations disponibles sur internet concernant l'ajout d'un sous-chemin à l'ingress, mais rien ne semble fonctionner.

L'écran de connexion Grafana s'affiche sur http://localhost:3000/ lorsque je supprime root_url: http://localhost:3000/grafana de Values.yaml

Mais lorsque j'ajoute root_url: http://localhost:3000/grafana à nouveau dans le fichier values.yaml, je vois l'erreur ci-jointe ci-dessous (vers la fin de ce message).

root_url: http://localhost:3000/grafana et ingress comme suit :

ingress:
  enabled: true
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /

  labels: {}
  path: /grafana
  hosts:
    - localhost
  tls: []
  #  - secretName: chart-example-tls
  #    hosts:
  #      - chart-example.local

resources: {}

Je m'attends à ce que l'url http://localhost:3000/grafana de Grafana m'affiche l'écran de connexion mais je vois plutôt les erreurs ci-dessous :

Si vous voyez ceci, Grafana n'a pas réussi à charger ses fichiers d'application

1. Cela pourrait être dû à vos paramètres de proxy inverse.

2. Si vous hébergez Grafana sous un sous-chemin, assurez-vous que le réglage root_url de votre grafana.ini inclut le sous-chemin

3. Si vous avez une version de développement locale, assurez-vous de construire le frontend en utilisant : yarn start, yarn start:hot ou yarn build

4. Parfois, redémarrer grafana-server peut aider

Pouvez-vous s'il vous plaît m'aider à corriger l'ingress et le root_url dans values.yaml pour que l'URL de Grafana fonctionne à /grafana ?

3voto

coolinuxoid Points 1404

En tant que vous consultez la documentation pour Configuration de Grafana derrière un proxy, root_url devrait être configuré dans le fichier grafana.ini sous la section [server]. Vous pouvez modifier votre valeurs.yaml pour y parvenir.

grafana.ini:
  ...
  server:
    root_url: http://localhost:3000/grafana/

Aussi, votre ingress dans les valeurs devrait ressembler à ceci.

ingress:
  enabled: true
  annotations: 
    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/rewrite-target: /
  labels: {}
  path: /grafana/
  hosts:
    - ""

J'espère que cela vous aidera.

0voto

geekQ Points 8796

Vous devez indiquer à l'application grafana, qu'elle ne fonctionne pas sous l'URL principale / (par défaut), mais sous un sous-chemin. Le moyen le plus simple est via des variables d'environnement préfixées GF_:

grafana:
  env:
    GF_SERVER_ROOT_URL: https://monhote.example.com/grafana
    GF_SERVER_SERVE_FROM_SUB_PATH: 'true'
  ingress:
    enabled: true
    hosts:
    - monhote.example.com
    path: /grafana($|(/.*))
    pathType: ImplementationSpecific

L'exemple ci-dessus fonctionne pour le nginx-ingress-controller de Kubernetes. En fonction du contrôleur d'entrée que vous utilisez, vous pourriez avoir besoin de

    path: /grafana
    pathType: Prefix

à la place.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X