2017-02-21 2 views
1

Ich möchte Prometheus in Cloud Foundry bereitstellen, ohne den Docker-Container zu verwenden. Wenn ich versuche, es zu implementieren mit dem Standard-Cloud Foundry Go Buildpack ich folgende Fehlermeldung erhalten:Bereitstellen von Prometheus in Cloud Foundry

can't load package: package prometheus: no buildable Go source files in /tmp/tmp.vv4iyDzMvE/.go/src/prometheus 

die irgendwie Sinn macht, denn es gibt eigentlich keine Quellen im Stammverzeichnis und das Projekt sind mit dem Prometheus-Dienstprogramm kompiliert Werkzeug.

Gibt es eine Möglichkeit, Prometheus in Cloud Foundry zu implementieren, etwa mit einem anderen Buildpack oder so?

Antwort

0

Ok, nach dem Graben um ein bisschen habe ich die ganze Sache arbeiten als

manifest.yml

--- 
applications: 
- name: prometheus 
    instances: 1 
    buildpack: https://github.com/cloudfoundry/go-buildpack.git 
    command: prometheus 
    env: 
    GOPACKAGENAME: github.com/prometheus/prometheus 
    GO_INSTALL_PACKAGE_SPEC: github.com/prometheus/prometheus/cmd/prometheus 
    memory: 1000M 

BUT, um auf der rechten Seite Port zu hören, die einzige Lösung

folgt konnte ich finden wird, den folgenden auf die cmd/prometheus/config.go Datei zu Beginn der init() Funktion

port := ":9090" 
if s := os.Getenv("PORT"); s != "" { 
    port = ":"+s 
} 

und dann Ändern Sie den folgenden Teil (auch in der init() Funktion)

cfg.fs.StringVar(
    &cfg.web.ListenAddress, "web.listen-address", ":9090", 
    "Address to listen on for the web interface, API, and telemetry.", 
) 

zu

cfg.fs.StringVar(
    &cfg.web.ListenAddress, "web.listen-address", port, 
    "Address to listen on for the web interface, API, and telemetry.", 
) 

Danach können Sie die Anwendung mit cf push einfach bereitstellen können und alles sollte als Charme

0

arbeiten Prometheus ist eine TSDB. Und es ist beabsichtigt, Gigabyte und Gigabyte an Daten zu verbrauchen.

Auf einer Cloud Foundry-Plattform sind die verfügbaren Ressourcen begrenzt. Warum also Prometheus in Cloud Foundry einsetzen?

Warum nicht eine eigenständige bosh director Spin-up und Prometheus durch den Direktor als eine Bosh-Bereitstellung und ein Standalone bereitstellen. Dann injizieren Sie es als CUPS in Cloud Foundry?

Ich bin nur neugierig und versuche den Anwendungsfall zu verstehen.

+0

Sind diese rhetorischen Fragen? Wenn nicht, gehören sie in Kommentare zu der Frage - [Stack Overflow ist kein Forum] (http://meta.stackexchange.com/a/92115). Es ist ein [Denkfabrik] (http://meta.stackoverflow.com/a/325681). Ansonsten funktioniert es besser, sie als Fakten zu bezeichnen. –

Verwandte Themen