Private Verfügbarkeitsdiagnosen erstellen

In diesem Dokument wird beschrieben, wie Sie eine private Verfügbarkeitsdiagnose konfigurieren. Mit privaten Verfügbarkeitsdiagnosen können Sie HTTP- oder TCP-Anfragen an ein Kunden-Virtual Private Cloud (VPC)-Netzwerk senden und gleichzeitig IAM-Einschränkungen (Identity and Access Management) und VPC Service Controls-Perimeter erzwingen. Bei privaten Verfügbarkeitsdiagnosen können Anfragen über das private Netzwerk an Ressourcen wie eine virtuelle Maschine (VM) oder einen L4-internen Load Balancer (ILB) gesendet werden.

Die internen IP-Adressen für Ressourcen im privaten Netzwerk werden von Service Directory-Diensten mit aktiviertem privatem Netzwerkzugriff erfasst. Wenn Sie private Verfügbarkeitsdiagnosen verwenden möchten, müssen Sie den privaten Netzwerkzugriff mit dem Service Directory-Produkt konfigurieren.

Das Google Cloud-Projekt, in dem die private Uptime-Prüfung gespeichert wird, und das Google Cloud-Projekt, in dem der Dienst Service Directory gespeichert wird, können unterschiedliche Projekte sein. Mit Cloud Monitoring können Sie Ressourcen in mehreren Google Cloud-Projekten über einen Messwertbereich aus einem Projekt überwachen. Das Projekt, in dem die Verfügbarkeitsdiagnose definiert ist, ist das Scoping-Projekt eines Messwertbereichs. Der Messwertbereich ist eine Liste aller Projekte, die vom Scoping-Projekt überwacht werden. Der Service Directory-Dienst kann im Projekt für die Definition des Umfangs oder in einem Projekt im Messwertbereich definiert werden. Weitere Informationen zu Messwertbereichen finden Sie unter Messwertbereiche.

Das private Netzwerk und seine Ressourcen wie VMs oder Load Balancer können sich auch in einem anderen Google Cloud-Projekt befinden. Dieses Projekt muss sich nicht im Messwertbereich des Projekts befinden, in dem die Verfügbarkeitsdiagnose erstellt wird. Der Service Directory-Dienst erfasst die Uptime-Messwerte. Er muss also in den Messwertbereich aufgenommen werden, die von ihm gekapselten Ressourcen jedoch nicht.

In diesem Dokument wird beschrieben, wie Sie ein privates Netzwerk einrichten und Service Directory-Ressourcen dafür mit der Google Cloud Console oder der API konfigurieren. In den API-Beispielen wird davon ausgegangen, dass sich das private Netzwerk und der Service Directory-Dienst im Projekt befinden, für das die Uptime-Prüfung durchgeführt wird. Im Hilfeartikel Private Verfügbarkeitsdiagnose erstellen wird jedoch auch beschrieben, wie Sie mit der API eine Verfügbarkeitsdiagnose erstellen, für die ein Service Directory-Dienst im Messwertbereich verwendet wird.

Informationen zum Konfigurieren von Verfügbarkeitsdiagnosen mit öffentlichen IP-Adressen finden Sie unter Öffentliche Verfügbarkeitsdiagnosen erstellen. Informationen zum Verwalten und Überwachen Ihrer Verfügbarkeitsdiagnosen finden Sie im Abschnitt Nächste Schritte dieses Dokuments.

Hinweise

  1. Aktivieren Sie folgende APIs:

    • Cloud Monitoring API: monitoring.googleapis.com
    • Service Directory API: servicedirectory.googleapis.com
    • Service Networking API: servicenetworking.googleapis.com
    • Compute Engine API: compute.googleapis.com

    Sie können die APIs mit der gcloud CLI oder der Google Cloud Console aktivieren. Auf den folgenden Tabs wird beschrieben, wie Sie die gcloud CLI installieren und die Cloud Monitoring API aktivieren:

    Google Cloud Console

    1. Wählen Sie in der Google Cloud Console das Google Cloud-Projekt aus, für das Sie die API aktivieren möchten, und rufen Sie dann die Seite APIs und Dienste auf:

      Gehen Sie zu APIs und Dienste.

    2. Klicken Sie auf die Schaltfläche APIs und Dienste aktivieren.

    3. Suchen Sie nach „Monitoring“.

    4. Klicken Sie in den Suchergebnissen auf "Stackdriver Monitoring API".

    5. Wenn "API aktiviert" angezeigt wird, ist die API bereits aktiviert. Wenn nicht, klicken Sie auf Aktivieren.

    gcloud-CLI

    1. Wenn Sie die Google Cloud CLI noch nicht auf Ihrer Workstation installiert haben, lesen Sie den Hilfeartikel gcloud CLI installieren.

    2. Führen Sie den folgenden Befehl auf Ihrer Workstation aus, um festzustellen, ob die Monitoring API aktiviert ist. Ersetzen Sie dabei PROJECT_ID durch die ID des Projekts, für das Sie die API aktivieren möchten:

      gcloud services list --project=PROJECT_ID
      

      Wenn monitoring.googleapis.com in der Ausgabe angezeigt wird, ist die API aktiviert.

    3. Wenn die API nicht aktiviert ist, führen Sie den folgenden Befehl aus, um sie zu aktivieren:

      gcloud services enable monitoring --project=PROJECT_ID
      

      Weitere Informationen finden Sie unter gcloud services.

    So aktivieren Sie die anderen APIs:

    • Wenn Sie die Google Cloud Console verwenden möchten, suchen Sie nach dem Anzeigenamen, z. B. „Service Directory API“.
    • Wenn Sie die gcloud CLI verwenden möchten, geben Sie das erste Element des googleapis.com-Namens an, z. B. servicedirectory.
  2. Konfigurieren Sie die Benachrichtigungskanäle, über die Sie Benachrichtigungen erhalten möchten. Wir empfehlen, mehrere Benachrichtigungskanäle zu erstellen. Weitere Informationen finden Sie unter Benachrichtigungskanäle erstellen und verwalten.

  3. Konfigurieren Sie ein privates Netzwerk und eine VM oder einen ILB, damit sie auf dieses private Netzwerk zugreifen können. Weitere Informationen finden Sie unter Zugriff auf private Dienste.

    Private Prüfungen, die auf ILBs ausgerichtet sind, sind auf die Regionen mit Verfügbarkeitsdiagnosen beschränkt. Die Region USA der Verfügbarkeitsdiagnose umfasst die Regionen USA_OREGON, USA_IOWA und USA_VIRGINIA. Jede der USA_*-Regionen hat eine Prüfung und USA umfasst alle drei. Die anderen Regionen für die Verfügbarkeitsdiagnose, EUROPE, SOUTH_AMERICA und ASIA_PACIFIC, haben jeweils eine Diagnose. Wenn Sie diese Einschränkung aufheben möchten, müssen Sie den globalen Zugriff auf Ihren Load Balancer konfigurieren. Weitere Informationen zum Konfigurieren des globalen Zugriffs finden Sie auf dem Tab „ILB“ im Abschnitt Service Directory-Ressourcen konfigurieren dieses Dokuments.

    Wenn Sie einen ILB prüfen möchten, der keinen globalen Zugriff zulässt, wählen Sie eine der folgenden Regionen für Ihren ILB aus:

    • us-east4
    • us-central1
    • us-west1
    • europe-west1
    • southamerica-east1
    • asia-southeast1
  4. Legen Sie fest, welche Schnittstelle verwendet werden soll:

    • Google Cloud Console: Hiermit können Sie eine Uptime-Prüfung erstellen, wenn eine VM Anfragen verarbeitet. Auf dieser Benutzeroberfläche werden Sie durch die Konfiguration von Service Directory-Ressourcen, die Autorisierung des Dienstkontos und die Konfiguration der Netzwerk-Firewallregeln geführt.

    • Befehlszeilenschnittstellen: Mit der Google Cloud CLI und der Cloud Monitoring API können Sie private Verfügbarkeitsdiagnosen erstellen, wenn ILBs und VMs Anfragen bearbeiten.

  5. Wenn Sie Ihre privaten Verfügbarkeitsdiagnosen mit der Befehlszeile konfigurieren möchten, führen Sie die Voraussetzungsschritte aus.

Private Verfügbarkeitsdiagnose erstellen

In diesem Abschnitt wird beschrieben, wie Sie private Verfügbarkeitsdiagnosen für Service Directory-Dienste erstellen und konfigurieren:

  • Wenn Sie die Google Cloud Console verwenden möchten, wählen Sie den Tab Google Cloud Console aus.

  • Wenn Sie die Cloud Monitoring API verwenden und den Dienst „Service Directory“ im selben Google Cloud-Projekt wie die Uptime-Prüfung konfigurieren möchten, wählen Sie den Tab API: Projektumfang aus.

  • Wenn Sie die Cloud Monitoring API verwenden und den Dienst „Service Directory“ so konfigurieren möchten, dass er sich in einem Projekt befindet, das vom Messwertbereich des Projekts der Uptime-Prüfung überwacht wird, wählen Sie den Tab API: Gemonitortes Projekt aus.

Google Cloud Console

So erstellen Sie eine Verfügbarkeitsdiagnose mithilfe der Google Cloud Console:

  1. Rufen Sie in der Google Cloud Console die Seite  Uptime-Prüfungen auf:

    Verfügbarkeitsdiagnosen aufrufen

    Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Monitoring ist.

  2. Klicken Sie auf Verfügbarkeitsdiagnose erstellen.

    Dialogfeld zum Erstellen einer Verfügbarkeitsdiagnose

  3. So legen Sie eine private Verfügbarkeitsdiagnose fest:

    1. Wählen Sie das Protokoll aus: HTTP, HTTPS oder TCP.

    2. Wählen Sie den Ressourcentyp Interne IP aus.

  4. Wenn Sie für Ihr Projekt noch keinen Service Directory-Dienst konfiguriert haben oder einen Service Directory-Dienst erstellen möchten, klicken Sie auf Anzeigen und füllen Sie den Bereich Voraussetzungen für die private Prüfung der Betriebszeit aus:

    1. Aktivieren Sie bei der entsprechenden Aufforderung die Compute Engine API oder die Service Directory API. Das Aktivieren der APIs kann einige Minuten dauern.

    2. Maximieren Sie gegebenenfalls Dienstkonto und klicken Sie dann auf Dienstkonto erstellen.

      Wenn kein Monitoring-Dienstkonto vorhanden ist, wird eines erstellt. Anschließend gewährt Monitoring dem Dienstkonto zwei Service Directory-Rollen.

    3. Maximieren Sie das Menü Service Directory (Dienstverzeichnis) und gehen Sie so vor:

      1. Maximieren Sie Region und wählen Sie dann die Region der VM aus, die Anfragen verarbeitet.
      2. Maximieren Sie Namespace und wählen Sie dann entweder einen vorhandenen Service Directory-Namespace aus oder klicken Sie auf Namespace erstellen und erstellen Sie einen Namespace.
      3. Klicken Sie auf Dienstname und geben Sie einen Dienstnamen ein. Dienste sind die Ziele privater Verfügbarkeitsdiagnosen.
      4. Klicken Sie auf Endpunktname und geben Sie einen Namen für den Endpunkt ein. Ein Endpunkt ist ein Paar aus IP-Adresse und Portwert, mit dem ein Dienst Anfragen verarbeiten kann. Wenn Ihr Dienst mehrere Endpunkte enthält, wird einer davon nach dem Zufallsprinzip ausgewählt.
      5. Maximieren Sie Netzwerk und wählen Sie dann Ihr privates Netzwerk aus.
      6. Maximieren Sie Instanz und wählen Sie dann die VM im privaten Netzwerk aus, die Anfragen ausführt. Nachdem Sie die Instanz ausgewählt haben, wird ihre interne IP-Adresse angezeigt.
      7. Klicken Sie auf Fertig.
    4. Maximieren Sie Firewallregeln:

      1. Maximieren Sie Netzwerk und wählen Sie das Netzwerk aus, an das die Netzwerkregel angehängt ist.

      2. Klicken Sie auf Firewallregeln erstellen.

        Die Firewallregel ermöglicht eingehenden TCP-Traffic von den Routen 35.199.192.0/19. Eine Route von 35.199.192.0/19 unterstützt Verbindungen zu Weiterleitungszielen mit privatem Routing. Weitere Informationen finden Sie unter VPC-Routen.

  5. So legen Sie im Bereich Private Verfügbarkeitsdiagnose den zu verwendenden Service Directory-Dienst fest:

    • Wählen Sie Voll qualifizierten Dienstnamen verwenden aus und geben Sie den vollständig qualifizierten Namen des Dienstes ein:

      projects/SERVICE_DIRECTORY_PROJECT_ID/locations/REGION/namespaces/PRIVATE_NAMESPACE/services/PRIVATE_SERVICE
      
    • Wählen Sie über die Menüs die Region, den Namespace und den Dienst aus. Wenn Sie einen Dienst erstellt haben, werden diese Felder für Sie ausgewählt.

  6. Geben Sie im Bereich Private Verfügbarkeitsdiagnose eine Beschreibung des Ziels der Verfügbarkeitsdiagnose ein:

    1. Optional: Geben Sie eine Pfadkomponente für die Anfrage ein.

      Private Verfügbarkeitsdiagnosen, die das HTTP- oder HTTPS-Protokoll verwenden, senden eine Anfrage an http://target/path. In diesem Ausdruck ist target die interne IP-Adresse, die im Service Directory-Endpunkt konfiguriert ist.

      Wenn Sie das Feld Pfad leer lassen oder den Wert auf / setzen, wird die Anfrage an http://target/ gesendet.

    2. Optional: Legen Sie mit dem Feld Checkhäufigkeit fest, wie oft die Verfügbarkeitsdiagnose ausgeführt werden soll.

    3. Optional: Klicken Sie auf Weitere Zieloptionen, um Prüfregionen auszuwählen oder Authentifizierung, Header für HTTP- und HTTPS-Prüfungen und andere Werte zu konfigurieren:

      • Regionen: Wählen Sie die Regionen aus, in denen die Verfügbarkeitsdiagnosen Anfragen erhalten sollen. Eine Verfügbarkeitsdiagnose muss mindestens drei Prüfer enthalten. Es gibt in allen Regionen eine Prüfung, mit Ausnahme von USA, wo es drei Prüfungen gibt. Die Standardeinstellung Global umfasst alle Regionen.
      • Anfragemethode: Wählen Sie GET oder POST aus.
      • Body: Geben Sie für HTTP-POST-Prüfungen den URL-codierten Body ein. Die Codierung müssen Sie selbst vornehmen. Lassen Sie dieses Feld für alle anderen Prüfungen leer.
      • Host-Header: Legen Sie dieses Feld nicht fest, wenn Sie private Verfügbarkeitsdiagnosen konfigurieren.
      • Port: Jeder hier festgelegte Wert überschreibt den Port in der Service Directory-Endpunktkonfiguration. Legen Sie hier keinen Wert fest, wenn die Endpunktkonfiguration verwendet werden soll.
      • Benutzerdefinierte Header: Geben Sie benutzerdefinierte Header an und verschlüsseln Sie sie bei Bedarf. Durch die Verschlüsselung werden die Werte im Header im Formular ausgeblendet. Verwenden Sie die Verschlüsselung für Header im Zusammenhang mit der Authentifizierung, die für andere nicht sichtbar sein sollen.
      • Authentication (Authentifizierung): Geben Sie einen Nutzernamen und ein Passwort an. Diese Werte werden als Autorisierungsheader gesendet. Wenn Sie hier Werte festlegen, geben Sie keinen Autorisierungsheader an. Wenn Sie hingegen einen Autorisierungsheader angeben, legen Sie hier keine Werte fest. Passwörter werden im Formular immer ausgeblendet.
  7. Klicken Sie auf Weiter und konfigurieren Sie die Antwortanforderungen. Alle Einstellungen in diesem Abschnitt haben Standardwerte:

    • Verwenden Sie das Feld Antwortzeitüberschreitung, um eine Zeitüberschreitung für die Verfügbarkeitsdiagnose festzulegen. Eine Verfügbarkeitsdiagnose schlägt fehl, wenn innerhalb dieses Zeitraums keine Antwort von mehr als einem Standort empfangen wird.

    • Wenn Sie die Verfügbarkeitsdiagnose so konfigurieren möchten, dass ein Content-Abgleich durchgeführt wird, muss das Umschaltlabel Content-Abgleich ist aktiviert lauten:

      • Wählen Sie im Optionsmenü die Option Übereinstimmungstyp für Antwortinhalt aus. Dieses Feld bestimmt, wie der Antwortinhalt mit den zurückgegebenen Daten verglichen wird. Angenommen, der Antwortinhalt ist abcd und der Inhaltstyp ist Enthält. Die Verfügbarkeitsdiagnose ist nur dann erfolgreich, wenn die Antwortdaten abcd enthalten. Weitere Informationen finden Sie unter Antwortdaten validieren.
      • Geben Sie den Antwortinhalt ein. Der Antwortinhalt muss ein String sein, der nicht länger als 1.024 Byte ist. In der API ist dies das Objekt ContentMatcher.
    • Wenn Sie verhindern möchten, dass Logeinträge aufgrund von Verfügbarkeitsdiagnosen erstellt werden, entfernen Sie das Häkchen bei Fehler bei der Protokollprüfung.

    • Konfigurieren Sie für die HTTP-Verfügbarkeitschecks die zulässigen Antwortcodes. Standardmäßig kennzeichnen HTTP-Verfügbarkeitsdiagnosen jede 2xx-Antwort als erfolgreiche Antwort.

  8. Klicken Sie auf Weiter und konfigurieren Sie Benachrichtigungsrichtlinien und Benachrichtigungen.

    Wenn Sie benachrichtigt werden möchten, wenn eine Verfügbarkeitsdiagnose fehlschlägt, erstellen Sie eine Benachrichtigungsrichtlinie und konfigurieren Sie Benachrichtigungskanäle für diese Richtlinie:

    1. Optional: Aktualisieren Sie den Namen der Benachrichtigungsrichtlinie.
    2. Optional: Wählen Sie im Feld Dauer aus, wie lange die Verfügbarkeitsdiagnosen fehlschlagen müssen, bevor Benachrichtigungen gesendet werden. Standardmäßig werden Benachrichtigungen gesendet, wenn in mindestens zwei Regionen mindestens eine Minute lang Fehler bei der Verfügbarkeitsdiagnose gemeldet werden.
    3. Maximieren Sie im Feld Benachrichtigungskanäle das Dreistrich-Menü  Menü, wählen Sie die hinzuzufügenden Kanäle aus und klicken Sie auf OK.

      Im Menü sind die Benachrichtigungskanäle für jeden Kanaltyp alphabetisch gruppiert.

    Wenn Sie keine Benachrichtigungsrichtlinie erstellen möchten, muss der Schalter neben der Schaltfläche Keine Benachrichtigung erstellen lauten.

  9. Klicken Sie auf Weiter und führen Sie die Verfügbarkeitsdiagnose durch:

    1. Geben Sie einen aussagekräftigen Titel für die Verfügbarkeitsdiagnose ein.

    2. Optional: So fügen Sie Ihrer Verfügbarkeitsdiagnose benutzerdefinierte Labels hinzu:

      1. Klicken Sie auf  Nutzerlabels einblenden.
      2. Geben Sie im Feld Schlüssel einen Namen für das Label ein. Labelnamen müssen mit einem Kleinbuchstaben beginnen und dürfen Kleinbuchstaben, Ziffern, Unterstriche und Bindestriche enthalten. Geben Sie beispielsweise severity ein.
      3. Geben Sie im Feld Wert einen Wert für das Label ein. Labelwerte dürfen Kleinbuchstaben, Ziffern, Unterstriche und Bindestriche enthalten. Geben Sie beispielsweise critical ein.
      4. Klicken Sie für jedes zusätzliche Label auf Nutzerlabel hinzufügen und geben Sie dann den Schlüssel und den Wert des Labels ein.
    3. Klicken Sie auf Test (Testen), um die Konfiguration der Verfügbarkeitsdiagnose zu prüfen. Wenn das Ergebnis nicht Ihren Erwartungen entspricht, lesen Sie den Hilfeartikel Fehlerbehebung, korrigieren Sie die Konfiguration und wiederholen Sie den Bestätigungsschritt.

    4. Klicken Sie auf Erstellen.

API: Projektumfang festlegen

Um die Konfiguration für eine private Verfügbarkeitsdiagnose zu erstellen, erstellen Sie ein UptimeCheckConfig-Objekt und übergeben es an die Methode uptimeCheckConfigs.create in der Cloud Monitoring API.

Das UptimeCheckConfig-Objekt für eine private Verfügbarkeitsdiagnose unterscheidet sich in folgenden Punkten vom Objekt für eine öffentliche Verfügbarkeitsdiagnose:

  • Die in der Konfiguration der Verfügbarkeitsdiagnose angegebene überwachte Ressource muss vom Typ servicedirectory_service sein. Für diesen Ressourcentyp gibt es folgende Labels:

    • project_id: Die Projekt-ID, die mit dem Dienstverzeichnisdienst verknüpft ist.
    • location: Die mit dem Dienst verknüpfte Cloud-Region.
    • namespace_name: Der Service Directory-Namespace.
    • service_name: Der Name des Service Directory-Dienstes.
  • Sie müssen in der Konfiguration der Verfügbarkeitsdiagnose keinen port-Wert angeben. Der Portwert aus dem Service Directory-Endpunkt überschreibt alle Werte, die in der Konfiguration der Uptime-Prüfung festgelegt sind. Die Prüfung schlägt fehl, wenn in der Service Directory-Konfiguration kein Port angegeben ist.

  • In der Konfiguration der Verfügbarkeitsdiagnose muss das Feld checker_type mit dem Wert VPC_CHECKERS angegeben sein. Dieser Wert ist für private Uptime-Prüfungen erforderlich. Verfügbarkeitsdiagnosen sind standardmäßig öffentlich. Für öffentliche Verfügbarkeitsdiagnosen muss dieses Feld also nicht angegeben werden.

Im folgenden JSON-Code wird ein UptimeCheckConfig-Objekt für eine private Verfügbarkeitsdiagnose mit den Service Directory-Ressourcen dargestellt, die für eine VM-Instanz in einem privaten Netzwerk konfiguriert sind:

{
  "displayName": "private-check-demo",
  "monitoredResource": {
    "type": "servicedirectory_service",
    "labels": {
      "project_id": "SERVICE_DIRECTORY_PROJECT_ID",
      "service_name": "PRIVATE_SERVICE",
      "namespace_name": "PRIVATE_NAMESPACE",
      "location": "REGION"
    }
  },
  "httpCheck": {
    "requestMethod": "GET"
  },
  "period": "60s",
  "timeout": "10s",
  "checker_type": "VPC_CHECKERS"
}'

So erstellen Sie eine private Verfügbarkeitsdiagnose, wenn sich der Dienst „Service Directory“ im selben Google Cloud-Projekt wie die Verfügbarkeitsdiagnose befindet:

  1. Legen Sie das Standard-Google Cloud-Projekt für die gcloud CLI fest:

    gcloud config set project PROJECT_ID
    
  2. Erstellen Sie eine Umgebungsvariable zum Speichern Ihrer Projekt-ID:

    export PROJECT_ID=$(gcloud config get-value core/project)
    
  3. Erstellen Sie eine Umgebungsvariable, die ein Zugriffstoken enthält:

    export TOKEN=`gcloud auth print-access-token`
    
  4. Rufen Sie mit dem curl-Tool die Methode uptimeCheckConfigs.create auf und posten Sie ein Konfigurationsobjekt:

    curl https://monitoring.googleapis.com/v3/projects/${PROJECT_ID}/uptimeCheckConfigs \
    -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
    --request POST --data '{
    "displayName": "private-check-demo",
    "monitoredResource": {
      "type": "servicedirectory_service",
      "labels": {
        "project_id": "'"$PROJECT_ID"'",
        "service_name": "PRIVATE_SERVICE",
        "namespace_name": "PRIVATE_NAMESPACE",
        "location": "REGION"
      }
    },
    "httpCheck": {
      "requestMethod": "GET"
    },
    "period": "60s",
    "timeout": "10s",
    "checker_type": "VPC_CHECKERS"
    }'
    

Wenn das Erstellen der Verfügbarkeitsdiagnose fehlschlägt, prüfen Sie, ob das Dienstkonto die erforderlichen Rollen hat. Weitere Informationen finden Sie unter Erstellen einer Verfügbarkeitsdiagnose fehlschlägt.

API: Überwachtes Projekt

Um die Konfiguration für eine private Verfügbarkeitsdiagnose zu erstellen, erstellen Sie ein UptimeCheckConfig-Objekt und übergeben es an die Methode uptimeCheckConfigs.create in der Cloud Monitoring API.

Das UptimeCheckConfig-Objekt für eine private Verfügbarkeitsdiagnose unterscheidet sich in folgenden Punkten vom Objekt für eine öffentliche Verfügbarkeitsdiagnose:

  • Die in der Konfiguration der Verfügbarkeitsdiagnose angegebene überwachte Ressource muss vom Typ servicedirectory_service sein. Für diesen Ressourcentyp gibt es folgende Labels:

    • project_id: Die Projekt-ID, die mit dem Dienstverzeichnisdienst verknüpft ist.
    • location: Die mit dem Dienst verknüpfte Cloud-Region.
    • namespace_name: Der Service Directory-Namespace.
    • service_name: Der Name des Service Directory-Dienstes.
  • Sie müssen in der Konfiguration der Verfügbarkeitsdiagnose keinen port-Wert angeben. Der Portwert aus dem Service Directory-Endpunkt überschreibt alle Werte, die in der Konfiguration der Uptime-Prüfung festgelegt sind. Die Prüfung schlägt fehl, wenn in der Service Directory-Konfiguration kein Port angegeben ist.

  • In der Konfiguration der Verfügbarkeitsdiagnose muss das Feld checker_type mit dem Wert VPC_CHECKERS angegeben sein. Dieser Wert ist für private Uptime-Prüfungen erforderlich. Verfügbarkeitsdiagnosen sind standardmäßig öffentlich. Für öffentliche Verfügbarkeitsdiagnosen muss dieses Feld also nicht angegeben werden.

Im folgenden JSON-Code wird ein UptimeCheckConfig-Objekt für eine private Verfügbarkeitsdiagnose mit den Service Directory-Ressourcen dargestellt, die für eine VM-Instanz in einem privaten Netzwerk konfiguriert sind:

{
  "displayName": "private-check-demo",
  "monitoredResource": {
    "type": "servicedirectory_service",
    "labels": {
      "project_id": "SERVICE_DIRECTORY_PROJECT_ID",
      "service_name": "PRIVATE_SERVICE",
      "namespace_name": "PRIVATE_NAMESPACE",
      "location": "REGION"
    }
  },
  "httpCheck": {
    "requestMethod": "GET"
  },
  "period": "60s",
  "timeout": "10s",
  "checker_type": "VPC_CHECKERS"
}'

So erstellen Sie eine private Verfügbarkeitsdiagnose, wenn sich der Dienstverzeichnisdienst in einem Google Cloud-Projekt befindet, das vom Messwertbereich des Google Cloud-Projekts der Verfügbarkeitsdiagnose überwacht wird:

  1. Konfigurieren Sie die gcloud CLI so, dass standardmäßig das Google Cloud-Projekt verwendet wird, in dem die Uptime-Prüfung erstellt werden soll:

    gcloud config set project PROJECT_ID
    
  2. Erstellen Sie eine Umgebungsvariable zum Speichern Ihrer Projekt-ID:

    export PROJECT_ID=$(gcloud config get-value core/project)
    
  3. Erstellen Sie eine Umgebungsvariable, in der die Projekt-ID des Google Cloud-Projekts gespeichert wird, in dem der Dienst „Service Directory“ definiert ist:

    export MONITORED_PROJECT_ID=MONITORED_PROJECT_ID
    

    Dieses Projekt muss sich im Messwertbereich des Projekts der Verfügbarkeitsdiagnose befinden.

  4. Erstellen Sie eine Umgebungsvariable, die ein Zugriffstoken enthält:

    export TOKEN=`gcloud auth print-access-token`
    
  5. Rufen Sie mit dem curl-Tool die Methode uptimeCheckConfigs.create auf und posten Sie ein Konfigurationsobjekt:

    curl https://monitoring.googleapis.com/v3/projects/${PROJECT_ID}/uptimeCheckConfigs \
    -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
    --request POST --data '{
    "displayName": "private-check-demo",
    "monitoredResource": {
      "type": "servicedirectory_service",
      "labels": {
        "project_id": "'"$MONITORED_PROJECT_ID"'",
        "service_name": "PRIVATE_SERVICE",
        "namespace_name": "PRIVATE_NAMESPACE",
        "location": "REGION"
      }
    },
    "httpCheck": {
      "requestMethod": "GET"
    },
    "period": "60s",
    "timeout": "10s",
    "checker_type": "VPC_CHECKERS"
    }'
    

Wenn das Erstellen der Verfügbarkeitsdiagnose fehlschlägt, prüfen Sie, ob das Dienstkonto die erforderlichen Rollen hat. Weitere Informationen finden Sie unter Erstellen einer Verfügbarkeitsdiagnose fehlschlägt.

Es kann bis zu 5 Minuten dauern, bis die Ergebnisse der Verfügbarkeitsdiagnose bei Monitoring eintreffen. Bis dahin meldet das Verfügbarkeitsdiagnose-Dashboard als Status "no data available" (Keine Daten verfügbar).

Vorbereitende Schritte

Wenn Sie die Google Cloud Console verwenden möchten, lesen Sie den Hilfeartikel Private Verfügbarkeitsdiagnose erstellen. Die Google Cloud Console führt Sie durch alle erforderlichen Schritte.

Wenn Sie Ihre privaten Verfügbarkeitsdiagnosen über die Befehlszeile konfigurieren möchten, müssen Sie die folgenden Schritte ausführen, bevor Sie die Verfügbarkeitsdiagnose erstellen können:

  1. Service Directory-Ressourcen konfigurieren
  2. Dienstkonto autorisieren
  3. Firewallregeln konfigurieren

Service Directory-Ressourcen konfigurieren

Bei privaten Verfügbarkeitsdiagnosen wird die Verfügbarkeit einer Ressource anhand einer internen IP-Adresse ermittelt, die von einem Service Directory-Dienst erfasst wird. Sie können ein Service Directory für die folgenden Ressourcen konfigurieren:

  • VMs in einem privaten Netzwerk
  • Interne L4-Load Balancer (ILBs)

Wenn Sie private Verfügbarkeitsdiagnosen verwenden möchten, müssen Sie die folgenden Service Directory-Ressourcen konfigurieren:

  • Endpunkt: Ein Endpunkt ist ein Paar aus IP-Adresse und Portwert, mit dem ein Dienst Anfragen verarbeiten kann. Wenn Ihr Dienst mehrere Endpunkte enthält, wird einer davon nach dem Zufallsprinzip ausgewählt.
  • Dienst: Ein Dienst ist eine Sammlung von Endpunkten, die eine Reihe von Verhaltensweisen bereitstellen. Dienste sind die Ziele privater Verfügbarkeitsdiagnosen.
  • Namespace: Ein Namespace enthält eine Reihe von Dienstnamen und die zugehörigen Endpunkte. Mit Namespaces können Sie Dienste für eine einheitliche Verwaltung gruppieren.

Sie können diese Ressourcen mit der gcloud CLI oder der Google Cloud Console konfigurieren. Wenn Sie die Console verwenden, sind die Konfigurationsschritte im Dialogfeld Verfügbarkeitsdiagnose erstellen enthalten.

Google Cloud Console

Wenn Sie in der Google Cloud Console Interne IP als Ressourcentyp für eine Verfügbarkeitsdiagnose auswählen, werden Sie aufgefordert, ein Service Directory und einen Dienst zu erstellen.

gcloud CLI – VM

Informationen zu den in diesem Dokument für Dienste, Namespaces und Endpunkte verwendeten Befehlen finden Sie in der gcloud service-directory-Befehlsgruppe.

So erstellen Sie Service Directory-Ressourcen für eine VM:

  1. Konfigurieren Sie die Google Cloud CLI so, dass standardmäßig das Google Cloud-Projekt verwendet wird, in dem die Ressourcen der Service Directory erstellt werden sollen:

    gcloud config set project PROJECT_ID
    
  2. Erstellen Sie Umgebungsvariablen zum Speichern Ihrer Projekt-ID und Projektnummer:

    export PROJECT_ID=$(gcloud config get-value core/project)
    
    export PROJECT_NUMBER=$(gcloud projects describe $PROJECT_ID --format='get(projectNumber)')
    
  3. So erstellen Sie einen Service Directory-Namespace:

    gcloud service-directory namespaces create PRIVATE_NAMESPACE --location=REGION
    
  4. Erstellen Sie einen Service Directory-Dienst im Namespace:

    gcloud service-directory services create PRIVATE_SERVICE \
    --namespace PRIVATE_NAMESPACE --location=REGION
    
  5. Erstellen Sie eine Umgebungsvariable, die die IP-Adresse der VM im privaten Netzwerk enthält:

    export INTERNAL_IP=$(gcloud compute instances describe --zone=ZONE \
    PRIVATE_SERVICE_INSTANCE --format='get(networkInterfaces[0].networkIP)')
    
  6. Erstellen Sie einen Service Directory-Endpunkt mit der internen IP-Adresse und einem Port:

    gcloud service-directory endpoints create PRIVATE_ENDPOINT \
    --location=REGION --namespace=PRIVATE_NAMESPACE \
    --service=PRIVATE_SERVICE \
    --network=projects/$PROJECT_NUMBER/locations/global/networks/PRIVATE_CHECK_NETWORK \
    --address=$INTERNAL_IP --port=80
    

gcloud CLI – L4-ILB

Informationen zu den in diesem Dokument für Dienste, Namespaces und Endpunkte verwendeten Befehlen finden Sie in der gcloud service-directory-Befehlsgruppe.

Sie können die Verfügbarkeit eines L4-internen Load Balancers (ILB) mithilfe privater Verfügbarkeitsdiagnosen überwachen, indem Sie Service Directory-Ressourcen für den L4-ILB erstellen.

Wenn Sie neue L4-ILBs erstellen, können Sie die automatische Integration von Service Directory verwenden. Weitere Informationen finden Sie unter Interne Load Balancer in Service Directory konfigurieren.

Wenn Sie L4-ILBs haben, die ohne die automatische Integration von Service Directory erstellt wurden, können Sie die Service Directory-Ressourcen manuell konfigurieren. Gehen Sie dazu so vor:

  1. Konfigurieren Sie die Google Cloud CLI so, dass standardmäßig das Google Cloud-Projekt verwendet wird, in dem die Ressourcen der Service Directory erstellt werden sollen:

    gcloud config set project PROJECT_ID
    
  2. Erstellen Sie Umgebungsvariablen zum Speichern Ihrer Projekt-ID und Projektnummer:

    export PROJECT_ID=$(gcloud config get-value core/project)
    
    export PROJECT_NUMBER=$(gcloud projects describe $PROJECT_ID --format='get(projectNumber)')
    
  3. Wenn alle Verfügbarkeitsprüfer Daten an Ihren L4-ILB übertragen sollen, aktivieren Sie den globalen Zugriff auf den ILB:

    gcloud compute forwarding-rules update ILB_FORWARDING_RULE_NAME \
    --region=ILB_REGION --allow-global-access
    

    Wenn Ihr L4-ILB keinen globalen Zugriff zulässt, sind Uptime-Messwerte nur verfügbar, wenn ILB_REGION eine der folgenden Optionen ist:

    • us-east4
    • us-central1
    • us-west1
    • europe-west1
    • southamerica-east1
    • asia-southeast1
  4. So erstellen Sie einen Service Directory-Namespace:

    gcloud service-directory namespaces create PRIVATE_NAMESPACE_FOR_ILB\
    --location=REGION
    
  5. Erstellen Sie einen Service Directory-Dienst im Namespace:

    gcloud service-directory services create PRIVATE_SERVICE_FOR_ILB \
    --namespace PRIVATE_NAMESPACE_FOR_ILB --location=REGION
    
  6. Erstellen Sie eine Umgebungsvariable, die die IP-Adresse des Load Balancers im privaten Netzwerk enthält:

    export INTERNAL_IP=$( gcloud compute forwarding-rules describe ILB_FORWARDING_RULE_NAME\
    --region=ILB_REGION --format='get(IPAddress)')
    
  7. Erstellen Sie einen Service Directory-Endpunkt mit der internen IP-Adresse und einem Port:

    gcloud service-directory endpoints create PRIVATE_ENDPOINT_FOR_ILB \
    --location=ILB_REGION --namespace=PRIVATE_NAMESPACE_FOR_ILB \
    --service=PRIVATE_SERVICE_FOR_ILB \
    --network=projects/$PROJECT_NUMBER/locations/global/networks/PRIVATE_CHECK_NETWORK \
    --address=$INTERNAL_IP --port=80
    

Dienstkonto autorisieren

Für Verfügbarkeitsdiagnosen wird ein Dienstkonto von Monitoring verwendet, um die Interaktionen mit dem Service Directory-Dienst zu verwalten. Der Name des Dienstkontos hat das folgende Format:

service-PROJECT_NUMBER@gcp-sa-monitoring-notification.iam.gserviceaccount.com

Wenn dieses Dienstkonto nicht vorhanden ist, wird es von Monitoring erstellt, wenn Sie die private Uptime-Prüfung erstellen. Sie können dieses Dienstkonto nicht erstellen.

Wenn Sie eine private Uptime-Prüfung erstellen, versucht das Monitoring, dem Dienstkonto zwei Service Directory-Rollen zuzuweisen. Wenn Sie die API verwenden, kann es jedoch sein, dass Ihre Google Cloud-Projekteinstellungen verhindern, dass Monitoring dem Dienstkonto Rollen zuweist. In diesem Fall schlägt die Erstellung der Verfügbarkeitsdiagnose fehl.

In diesem Abschnitt wird beschrieben, wie Sie einem vorhandenen Dienstkonto die erforderlichen Rollen zuweisen:

Google Cloud Console

Wenn Sie die Google Cloud Console verwenden, werden Sie aufgefordert, das Dienstkonto zu autorisieren, nachdem Sie Interne IP als Ressourcentyp für eine Verfügbarkeitsdiagnose ausgewählt haben.

API: Projektumfang festlegen

So weisen Sie einem vorhandenen Dienstkonto die Rollen für das Verzeichnisdienstes zu:

  1. Konfigurieren Sie die gcloud CLI so, dass standardmäßig das Google Cloud-Projekt verwendet wird, in dem die Uptime-Prüfung erstellt werden soll:

    gcloud config set project PROJECT_ID
    
  2. Erstellen Sie Umgebungsvariablen zum Speichern der Projekt-ID und der Projektnummer:

    export PROJECT_ID=$(gcloud config get-value core/project)
    
    export PROJECT_NUMBER=$(gcloud projects describe $PROJECT_ID --format='get(projectNumber)')
    
  3. Führen Sie folgende Befehle aus:

    gcloud projects add-iam-policy-binding $PROJECT_ID \
    --member='serviceAccount:service-'$PROJECT_NUMBER'@gcp-sa-monitoring-notification.iam.gserviceaccount.com' \
    --role='roles/servicedirectory.viewer'
    
    gcloud projects add-iam-policy-binding $PROJECT_ID \
    --member='serviceAccount:service-'$PROJECT_NUMBER'@gcp-sa-monitoring-notification.iam.gserviceaccount.com' \
    --role='roles/servicedirectory.pscAuthorizedService'
    

    Mit den vorherigen Befehlen werden dem Dienstkonto die folgenden Rollen zugewiesen:

    • roles/servicedirectory.viewer
    • roles/servicedirectory.pscAuthorizedService

API: Überwachtes Projekt

So weisen Sie einem vorhandenen Dienstkonto die Rollen für das Verzeichnisdienstes zu:

  1. Konfigurieren Sie die gcloud CLI so, dass standardmäßig das Google Cloud-Projekt verwendet wird, in dem die Uptime-Prüfung erstellt werden soll:

    gcloud config set project PROJECT_ID
    
  2. Erstellen Sie Umgebungsvariablen zum Speichern der Projekt-ID und der Projektnummer:

    export PROJECT_ID=$(gcloud config get-value core/project)
    
    export PROJECT_NUMBER=$(gcloud projects describe $PROJECT_ID --format='get(projectNumber)')
    
  3. Erstellen Sie eine Umgebungsvariable, die die Projekt-ID des Projekts enthält, in dem der Dienst „Service Directory“ definiert ist:

    export MONITORED_PROJECT_ID=MONITORED_PROJECT_ID
    

    Dieses Projekt muss sich im Messwertbereich des Projekts der Verfügbarkeitsdiagnose befinden.

  4. Erstellen Sie eine Umgebungsvariable für die Projekt-ID des Projekts, in dem das Netzwerk definiert ist:

    export NETWORK_PROJECT_ID=NETWORK_PROJECT_ID
    

    Dieses Projekt muss sich nicht im Messwertbereich des Projekts der Betriebszeitprüfung befinden.

  5. Führen Sie folgende Befehle aus:

    gcloud projects add-iam-policy-binding $MONITORED_PROJECT_ID \
    --member='serviceAccount:service-'$PROJECT_NUMBER'@gcp-sa-monitoring-notification.iam.gserviceaccount.com' \
    --role='roles/servicedirectory.viewer'
    
    gcloud projects add-iam-policy-binding $NETWORK_PROJECT_ID \
    --member='serviceAccount:service-'$PROJECT_NUMBER'@gcp-sa-monitoring-notification.iam.gserviceaccount.com' \
    --role='roles/servicedirectory.pscAuthorizedService'
    

    Mit den vorherigen Befehlen werden dem Dienstkonto die folgenden Rollen zugewiesen:

    • roles/servicedirectory.viewer für das überwachte Projekt, in dem der Service Directory-Dienst konfiguriert ist,$SERVICE_MONITORED_PROJECT_ID.
    • roles/servicedirectory.pscAuthorizedService für das Projekt, in dem das private Netzwerk konfiguriert ist, $NETWORK_PROJECT_ID.

Firewallregeln konfigurieren

Sie müssen eine Firewallregel erstellen, die eingehenden TCP-Traffic von den Routen 35.199.192.0/19 zulässt. Eine Route von 35.199.192.0/19 unterstützt Verbindungen zu Weiterleitungszielen, die privates Routing verwenden. Weitere Informationen finden Sie unter VPC-Routen.

Google Cloud Console

Wenn Sie in der Google Cloud Console Interne IP als Ressourcentyp für eine Verfügbarkeitsdiagnose auswählen, werden Sie aufgefordert, die Firewallregeln zu konfigurieren.

gcloud-CLI

Führen Sie den folgenden Befehl aus, um eine Firewallregel zu erstellen, die eingehenden TCP-Traffic über die Firewall für den privaten Netzwerkzugriff zulässt:

  1. Konfigurieren Sie die gcloud CLI so, dass standardmäßig das Google Cloud-Projekt verwendet wird, in dem die Uptime-Prüfung erstellt werden soll:

    gcloud config set project PROJECT_ID
    
  2. Erstellen Sie Umgebungsvariablen zum Speichern der Projekt-ID und der Projektnummer:

    export PROJECT_ID=$(gcloud config get-value core/project)
    
  3. Erstellen Sie die Netzwerkregel:

    gcloud compute firewall-rules create PRIVATE_CHECK_NETWORK_HOPE_RULE \
    --network="PRIVATE_CHECK_NETWORK"  \
    --action=allow   --direction=ingress   --source-ranges="35.199.192.0/19" \
    --rules=tcp   --project="$PROJECT_ID"
    

    Im vorherigen Befehl ist PRIVATE_CHECK_NETWORK das Netzwerk, an das diese Regel angehängt ist, und PRIVATE_CHECK_NETWORK_HOPE_RULE ist der Name der Firewallregel.

Weitere Informationen zu diesem Schritt finden Sie unter Netzwerkprojekt konfigurieren.

Beschränkungen

Bei privaten Uptime-Prüfungen ist die Validierung von SSL-Zertifikaten unabhängig von der Konfiguration deaktiviert.

Private Verfügbarkeitschecks unterstützen keine Endpunkte mit Weiterleitungen.

Fehlerbehebung

In diesem Abschnitt werden einige Fehler beschrieben, die bei der Verwendung privater Uptime-Prüfungen auftreten können. Außerdem finden Sie Informationen zur Fehlerbehebung.

Erstellen der Verfügbarkeitsdiagnose fehlgeschlagen

Die Google Cloud-Projekteinstellungen verhindern möglicherweise die Änderung der Rollen, die dem Dienstkonto zugewiesen sind, mit dem die Uptime-Prüfungen die Interaktionen mit dem Dienstverzeichnis verwalten. In diesem Fall schlägt die Erstellung der Verfügbarkeitsdiagnose fehl.

In diesem Abschnitt wird beschrieben, wie Sie dem Dienstkonto die erforderlichen Rollen zuweisen:

Google Cloud Console

Wenn Sie die private Uptime-Prüfung mit der Google Cloud Console erstellen, werden über die Google Cloud Console die Befehle ausgegeben, um dem Dienstkonto die Rollen für das Dienstverzeichnis zu gewähren.

Informationen zum Zuweisen von Rollen zu einem Dienstkonto finden Sie unter Dienstkonto autorisieren.

API: Projektumfang festlegen

Wenn Sie zum ersten Mal eine private Uptime-Prüfung für einen Service Directory-Dienst und private Ressourcen in einem einzelnen Google Cloud-Projekt erstellen, kann der Antrag erfolgreich oder fehlschlagen. Das Ergebnis hängt davon ab, ob Sie die automatische Rollenzuweisung für Dienstkonten in Ihrem Projekt deaktiviert haben:

  • Die erste Erstellung der Uptime-Prüfung ist erfolgreich, wenn Ihr Projekt automatische Rollenzuweisungen für Dienstkonten zulässt. Es wird ein Dienstkonto für Sie erstellt und die erforderlichen Rollen werden zugewiesen.

  • Das Erstellen der ersten Uptime-Prüfung schlägt fehl, wenn in Ihrem Projekt keine automatischen Rollenzuweisungen für Dienstkonten zulässig sind. Ein Dienstkonto wird erstellt, aber es werden keine Rollen gewährt.

Wenn das Erstellen der Verfügbarkeitsdiagnose fehlschlägt, gehen Sie so vor:

  1. Dienstkonto autorisieren
  2. Warten Sie einige Minuten, bis die Berechtigungen übernommen wurden.
  3. Versuchen Sie noch einmal, die private Verfügbarkeitsdiagnose zu erstellen.

API: Überwachtes Projekt

Wenn Sie zum ersten Mal eine private Uptime-Prüfung erstellen, die auf einen Service Directory-Dienst in einem überwachten Projekt oder auf private Ressourcen in einem anderen Google Cloud-Projekt ausgerichtet ist, schlägt die Anfrage fehl und es wird ein Monitoring-Dienstkonto erstellt.

Wie Sie das Dienstkonto autorisieren, hängt von der Anzahl der von Ihnen verwendeten Google Cloud-Projekte und deren Beziehungen ab. Es können bis zu vier Projekte beteiligt sein:

  • Das Projekt, in dem Sie die private Verfügbarkeitsdiagnose definiert haben.
  • Das überwachte Projekt, in dem Sie den Service Directory-Dienst konfiguriert haben.
  • Das Projekt, in dem Sie das VPC-Netzwerk konfiguriert haben.
  • Das Projekt, in dem Netzwerkressourcen wie VMs oder Load Balancer konfiguriert werden. Dieses Projekt spielt bei der hier beschriebenen Autorisierung von Dienstkonten keine Rolle.

Wenn das Erstellen der ersten Verfügbarkeitsdiagnose fehlschlägt, gehen Sie so vor:

  1. Dienstkonto autorisieren
  2. Warten Sie einige Minuten, bis die Berechtigungen übernommen wurden.
  3. Versuchen Sie noch einmal, die private Verfügbarkeitsdiagnose zu erstellen.

Zugriff verweigert

Ihre Verfügbarkeitsdiagnosen schlagen mit dem Ergebnis VPC_ACCESS_DENIED fehl. Das bedeutet, dass ein Aspekt Ihrer Netzwerkkonfiguration oder Dienstkontoautorisierung nicht korrekt ist.

Prüfen Sie die Autorisierung Ihres Dienstkontos für die Verwendung eines Projekts mit Begrenzung oder eines überwachten Projekts, wie unter Erstellen der Uptime-Prüfung fehlgeschlagen beschrieben.

Weitere Informationen zum Zugriff auf private Netzwerke finden Sie unter Netzwerkprojekt konfigurieren.

Anomalie bei privaten Verfügbarkeitsdiagnosen

Sie haben einen Dienstverzeichnisdienst mit mehreren VMs und Ihre Dienstkonfiguration enthält mehrere Endpunkte. Wenn Sie eine der VMs herunterfahren, zeigt die Verfügbarkeitsdiagnose weiterhin einen Erfolg an.

Wenn Ihre Dienstkonfiguration mehrere Endpunkte enthält, wird einer davon zufällig ausgewählt. Wenn die mit dem ausgewählten Endpunkt verknüpfte VM ausgeführt wird, ist die Verfügbarkeitsdiagnose erfolgreich, auch wenn eine der VMs ausgefallen ist.

Standard-Header

Ihre Verfügbarkeitsdiagnosen geben Fehler oder unerwartete Ergebnisse zurück. Das kann passieren, wenn Sie Standardheaderwerte überschrieben haben.

Wenn eine Anfrage für eine private Uptime-Prüfung an einen Zielendpunkt gesendet wird, enthält sie die folgenden Header und Werte:

Header Wert
HTTP_USER_AGENT GoogleStackdriverMonitoring-UptimeChecks(https://cloud.google.com/monitoring)
HTTP_CONNECTION keep-alive
HTTP_HOST IP-Adresse des Service Directory-Endpunkts
HTTP_ACCEPT_ENCODING gzip, deflate, br
CONTENT_LENGTH Berechnet aus Daten nach Verfügbarkeitsmeldungen

Wenn Sie versuchen, diese Werte zu überschreiben, kann Folgendes passieren:

  • Die Verfügbarkeitsdiagnose meldet Fehler
  • Die Überschreibungs-Werte werden gelöscht und durch die Werte in der Tabelle ersetzt.

Keine Daten sichtbar

Wenn sich die Verfügbarkeitsdiagnose in einem anderen Google Cloud-Projekt als der Dienstverzeichnisdienst befindet, werden im Dashboard für die Verfügbarkeitsdiagnose keine Daten angezeigt.

Das Google Cloud-Projekt, das die Uptime-Prüfung enthält, muss das Google Cloud-Projekt überwachen, das den Service Directory-Dienst enthält.

Weitere Informationen zum Auflisten überwachter Projekte und zum Hinzufügen weiterer Projekte finden Sie unter Messwertbereich für mehrere Projekte konfigurieren.

Nächste Schritte