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 Virtual Private Cloud (VPC)-Netzwerk eines Kunden senden und gleichzeitig Identity and Access Management (IAM)-Beschränkungen und VPC Service Controls-Perimeter erzwingen. Mit privaten Verfügbarkeitsdiagnosen können Anfragen über das private Netzwerk an Ressourcen wie eine VM (virtuelle Maschine) oder einen internen L4-Load-Balancer (ILB) gesendet werden.

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

Das Google Cloud Projekt, in dem der private Uptime-Check gespeichert ist, und das Google Cloud Projekt, in dem der Service Directory-Dienst gespeichert ist, können unterschiedliche Projekte sein. Mit Cloud Monitoring können Sie Ressourcen in mehrerenGoogle Cloud -Projekten über ein Projekt hinweg mithilfe eines Messwertbereichs ü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 den Umfang festlegenden Projekt oder in einem Projekt im Messwertbereich definiert werden. Weitere Informationen zu Messwertbereichen finden Sie unter Messwertbereiche – Übersicht.

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 den Bereich festlegenden Projekts der Verfügbarkeitsdiagnose befinden. Der Service Directory-Dienst erfasst die Uptime-Messwerte. Er muss also im Messwertbereich enthalten sein, die Ressourcen, die er umfasst, jedoch nicht.

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

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

Diese Funktion wird nur für Google Cloud -Projekte unterstützt. Wählen Sie für App Hub-Konfigurationen das App Hub-Hostprojekt oder das Verwaltungsprojekt des für Apps aktivierten Ordners aus.

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 derGoogle 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 & Services auf:

      APIs & Dienste aufrufen

    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 Abschnitt 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.

    Sie können die anderen APIs auf dieselbe Weise aktivieren:

    • 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, die Sie für Benachrichtigungen verwenden möchten. Wir empfehlen, mehrere Arten von Benachrichtigungskanälen zu erstellen. Weitere Informationen finden Sie unter Benachrichtigungskanäle erstellen und verwalten.

  3. Konfigurieren Sie ein privates Netzwerk und konfigurieren Sie eine VM oder einen ILB für den Zugriff auf dieses private Netzwerk. Weitere Informationen finden Sie unter Zugriff auf private Dienste.

    Private Prüfungen, die auf interne Lastenausgleichsmodule 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 der Verfügbarkeitsdiagnose, EUROPE, SOUTH_AMERICA und ASIA_PACIFIC, haben jeweils eine Diagnose. Wenn Sie diese Einschränkung entfernen möchten, müssen Sie den globalen Zugriff auf Ihren Load Balancer konfigurieren. Weitere Informationen zum Konfigurieren des globalen Zugriffs finden Sie in diesem Dokument im Abschnitt Service Directory-Ressourcen konfigurieren auf dem Tab „ILB“.

    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. Entscheiden Sie, welche Schnittstelle Sie verwenden möchten:

    • Google Cloud console: Hiermit können Sie eine Verfügbarkeitsdiagnose erstellen, wenn eine VM Anfragen verarbeitet. Diese Benutzeroberfläche führt Sie durch die Konfiguration von Service Directory-Ressourcen, die Autorisierung des Dienstkontos und die Konfiguration der Netzwerk-Firewallregeln.

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

  5. Wenn Sie die Befehlszeile zum Konfigurieren Ihrer privaten Verfügbarkeitsdiagnosen verwenden möchten, führen Sie die Voraussetzungen 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 Service Directory-Dienst so konfigurieren möchten, dass er sich im selben Google Cloud Projekt wie der Uptime-Check befindet, wählen Sie den Tab API: Scoping project aus.

  • Wenn Sie die Cloud Monitoring API verwenden und den Service Directory-Dienst so konfigurieren möchten, dass er sich in einem Projekt befindet, das vom Messwertbereich des Projekts des Uptime-Checks überwacht wird, wählen Sie den Tab API: Monitored project (API: Überwachtes 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. Wählen Sie in der Symbolleiste der Google Cloud Console Ihr Google Cloud -Projekt aus. Wählen Sie für App Hub-Konfigurationen das App Hub-Hostprojekt oder das Verwaltungsprojekt des für Apps aktivierten Ordners aus.
  3. Klicken Sie auf Verfügbarkeitsdiagnose erstellen.

    Dialogfeld zum Erstellen einer Verfügbarkeitsdiagnose

  4. Geben Sie eine private Verfügbarkeitsdiagnose an:

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

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

  5. Wenn Sie für Ihr Projekt 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 private Uptime-Checks aus:

    1. Aktivieren Sie bei der entsprechenden Aufforderung die Compute Engine API oder die Service Directory API. Die Aktivierung der APIs kann bis zu einer Minute dauern.

    2. Erweitern Sie Dienstkonto, falls angezeigt, und klicken Sie dann auf Dienstkonto erstellen.

      Wenn kein Dienstkonto für die Überwachung vorhanden ist, wird eines erstellt. Monitoring weist dem Dienstkonto dann zwei Service Directory-Rollen zu.

    3. Maximieren Sie das Menü Dienstverzeichnis und gehen Sie dann 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, um einen Namespace zu erstellen.
      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 Portwerten, das ein Dienst zum Verarbeiten von Anfragen verwenden 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 verarbeitet. 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 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.

  6. Führen Sie im Bereich Private Verfügbarkeitsdiagnose einen der folgenden Schritte aus, um den zu verwendenden Service Directory-Dienst anzugeben:

    • 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 die Region, den Namespace und den Dienst über die Menüs aus. Wenn Sie einen Dienst erstellt haben, sind diese Felder für Sie ausgewählt.

  7. Füllen Sie im Bereich Private Verfügbarkeitsdiagnose die Beschreibung des Ziels der Verfügbarkeitsdiagnose aus:

    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: Im Feld Checkhäufigkeit können Sie festlegen, wie oft die Verfügbarkeitsdiagnose ausgeführt wird.

    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 muss selbst vorgenommen werden. 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 Ihrer 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 optional. 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.
  8. Klicken Sie auf Weiter und konfigurieren Sie die Antwortanforderungen. Alle Einstellungen in diesem Abschnitt haben Standardwerte:

    • Verwenden Sie das Feld Response Timeout (Zeitüberschreitung bei Antwort), um einen Zeitraum für die Zeitüberschreitung für die Verfügbarkeitsdiagnose festzulegen. Eine Verfügbarkeitsdiagnose schlägt fehl, wenn innerhalb dieses Zeitlimits 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 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 dieses Feld das Objekt ContentMatcher.
    • Wenn Sie verhindern möchten, dass aufgrund von Verfügbarkeitsdiagnosen Logeinträge erstellt werden, deaktivieren Sie Log check failures (Fehler bei Logprüfungen protokollieren).

    • Konfigurieren Sie für die HTTP-Verfügbarkeitsdiagnosen die zulässigen Antwortcodes. Standardmäßig werden bei HTTP-Verfügbarkeitsdiagnosen alle 2xx-Antworten als erfolgreiche Antworten markiert.

  9. 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. Erweitern Sie im Feld Benachrichtigungskanäle das 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.

  10. 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 Abschnitt Fehlerbehebung, korrigieren Sie Ihre Konfiguration und wiederholen Sie den Bestätigungsschritt.

    4. Klicken Sie auf Erstellen.

API: Umfang festlegendes 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ügbarkeitsprüfung angegebene überwachte Ressource muss vom Typ servicedirectory_service sein. Dieser Ressourcentyp hat die folgenden Labels:

    • project_id: Die Projekt-ID, die mit dem Service Directory-Dienst verknüpft ist.
    • location: Die Cloud-Region, die dem Dienst zugeordnet ist.
    • namespace_name: Der Service Directory-Namespace.
    • service_name: Der Name des Service Directory-Dienstes.
  • Sie müssen keinen port-Wert in der Konfiguration der Verfügbarkeitsdiagnose angeben. Der Portwert aus dem Service Directory-Endpunkt überschreibt jeden in der Uptime-Check-Konfiguration festgelegten Wert. Der Check 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 werden. Dieser Wert ist für private Uptime-Prüfungen erforderlich. Verfügbarkeitsdiagnosen sind standardmäßig öffentlich. Bei öffentlichen Verfügbarkeitsdiagnosen muss dieses Feld daher nicht angegeben werden.

Der folgende JSON-Code zeigt ein UptimeCheckConfig-Objekt für eine private Verfügbarkeitsdiagnose mit den Service Directory-Ressourcen, 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 Service Directory-Dienst im selben Google Cloud Projekt wie die Verfügbarkeitsdiagnose befindet:

  1. Legen Sie das Standardprojekt Google Cloud 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. Verwenden Sie das curl-Tool, um die Methode uptimeCheckConfigs.create aufzurufen und ein Konfigurationsobjekt zu posten:

    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 die Erstellung der Verfügbarkeitsdiagnose fehlschlägt, prüfen Sie, ob das Dienstkonto die erforderlichen Rollen hat. Weitere Informationen finden Sie unter Fehler beim Erstellen von Verfügbarkeitsdiagnosen.

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ügbarkeitsprüfung angegebene überwachte Ressource muss vom Typ servicedirectory_service sein. Dieser Ressourcentyp hat die folgenden Labels:

    • project_id: Die Projekt-ID, die mit dem Service Directory-Dienst verknüpft ist.
    • location: Die Cloud-Region, die dem Dienst zugeordnet ist.
    • namespace_name: Der Service Directory-Namespace.
    • service_name: Der Name des Service Directory-Dienstes.
  • Sie müssen keinen port-Wert in der Konfiguration der Verfügbarkeitsdiagnose angeben. Der Portwert aus dem Service Directory-Endpunkt überschreibt jeden in der Uptime-Check-Konfiguration festgelegten Wert. Der Check 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 werden. Dieser Wert ist für private Uptime-Prüfungen erforderlich. Verfügbarkeitsdiagnosen sind standardmäßig öffentlich. Bei öffentlichen Verfügbarkeitsdiagnosen muss dieses Feld daher nicht angegeben werden.

Der folgende JSON-Code zeigt ein UptimeCheckConfig-Objekt für eine private Verfügbarkeitsdiagnose mit den Service Directory-Ressourcen, 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 Service Directory-Dienst in einem Google Cloud Projekt befindet, das vom Messwertbereich desGoogle Cloud Projekts der Verfügbarkeitsdiagnose überwacht wird:

  1. Konfigurieren Sie die gcloud CLI so, dass standardmäßig das Projekt Google Cloud verwendet wird, in dem der Uptime-Check 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 zum Speichern der Projekt-ID desGoogle Cloud -Projekts, in dem der Service Directory-Dienst 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. Verwenden Sie das curl-Tool, um die Methode uptimeCheckConfigs.create aufzurufen und ein Konfigurationsobjekt zu posten:

    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 die Erstellung der Verfügbarkeitsdiagnose fehlschlägt, prüfen Sie, ob das Dienstkonto die erforderlichen Rollen hat. Weitere Informationen finden Sie unter Fehler beim Erstellen von Verfügbarkeitsdiagnosen.

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).

Erforderliche Schritte

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

Wenn Sie die Befehlszeile verwenden möchten, um Ihre privaten Verfügbarkeitsdiagnosen zu konfigurieren, 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 aufgezeichnet 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 Portwerten, das ein Dienst zum Verarbeiten von Anfragen verwenden 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 derGoogle Cloud Console konfigurieren. Wenn Sie die Console verwenden, sind die Konfigurationsschritte im Dialogfeld Verfügbarkeitsdiagnose erstellen enthalten.

Google Cloud Console

Wenn Sie die Google Cloud -Konsole verwenden, werden Sie nach der Auswahl von Interne IP als Ressourcentyp für eine Verfügbarkeitsdiagnose 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 Service Directory-Ressourcen 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. Service Directory-Namespace erstellen:

    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, der die interne IP-Adresse und einen Port enthält:

    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 private Verfügbarkeitsdiagnosen verwenden, um die Verfügbarkeit eines internen L4-Load-Balancers (ILB) zu überwachen. Dazu erstellen Sie Service Directory-Ressourcen für den L4-ILB.

Wenn Sie neue ILBs der Schicht 4 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 Service Directory-Ressourcen 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. Damit alle Verfügbarkeitsprüfer Daten an Ihren ILB der Ebene 4 übertragen können, 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. Service Directory-Namespace erstellen:

    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, der die interne IP-Adresse und einen Port enthält:

    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

Bei Uptime-Prüfungen wird ein Dienstkonto verwendet, das zu Monitoring gehört, um 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 den privaten Uptime-Check erstellen. Sie können dieses Dienstkonto nicht erstellen.

Wenn Sie einen privaten Uptime-Check erstellen, versucht Monitoring, dem Dienstkonto zwei Service Directory-Rollen zuzuweisen. Wenn Sie die API verwenden, verhindern die Google Cloud Projekteinstellungen möglicherweise, 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 -Konsole verwenden, werden Sie nach der Auswahl von Interne IP als Ressourcentyp für eine Verfügbarkeitsdiagnose aufgefordert, das Dienstkonto zu autorisieren.

API: Umfang festlegendes Projekt

So weisen Sie einem vorhandenen Dienstkonto die Service Directory-Rollen zu:

  1. Konfigurieren Sie die gcloud CLI so, dass standardmäßig das Projekt Google Cloud verwendet wird, in dem der Uptime-Check 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 Service Directory-Rollen zu:

  1. Konfigurieren Sie die gcloud CLI so, dass standardmäßig das Projekt Google Cloud verwendet wird, in dem der Uptime-Check 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 Service Directory-Dienst 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 die Projekt-ID des Projekts enthält, in dem das Netzwerk definiert ist:

    export NETWORK_PROJECT_ID=NETWORK_PROJECT_ID
    

    Dieses Projekt muss sich nicht im Messwertbereich des Projekts für den Uptime-Check 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 Routen 35.199.192.0/19 zulässt. Eine Route von 35.199.192.0/19 unterstützt Verbindungen zu Weiterleitungszielen mit privatem Routing. Weitere Informationen finden Sie unter VPC-Routen.

Google Cloud Console

Wenn Sie die Google Cloud -Konsole verwenden, werden Sie nach der Auswahl von Interne IP als Ressourcentyp für eine Verfügbarkeitsdiagnose 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 privaten Netzwerkzugriff zulässt:

  1. Konfigurieren Sie die gcloud CLI so, dass standardmäßig das Projekt Google Cloud verwendet wird, in dem der Uptime-Check 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. Netzwerkregel erstellen:

    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 der Name der Firewallregel.

Weitere Informationen zu diesem Schritt finden Sie unter Netzwerkprojekt konfigurieren.

Beschränkungen

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

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

Fehlerbehebung

In diesem Abschnitt werden einige Fehler beschrieben, die bei der Verwendung privater Uptime-Checks auftreten können. Außerdem finden Sie Informationen zum Beheben dieser Fehler.

Erstellung der Verfügbarkeitsdiagnose schlägt fehl

Die Einstellungen Ihres Google Cloud -Projekts verhindern möglicherweise, dass die Rollen geändert werden, die dem Dienstkonto zugewiesen sind, das von Uptime-Checks verwendet wird, um Interaktionen mit dem Service Directory-Dienst zu verwalten. In diesem Fall schlägt die Erstellung der Verfügbarkeitsdiagnose fehl.

In diesem Abschnitt wird beschrieben, wie Sie die Rollen zuweisen, die das Dienstkonto benötigt:

Google Cloud Console

Wenn Sie die Google Cloud Console verwenden, um die private Verfügbarkeitsdiagnose zu erstellen, gibt die Google Cloud Console die Befehle aus, um dem Dienstkonto die Service Directory-Rollen zuzuweisen.

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

API: Umfang festlegendes Projekt

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 die Anfrage erfolgreich sein oder fehlschlagen. Das Ergebnis hängt davon ab, ob Sie automatische Rollenzuweisungen für Dienstkonten in Ihrem Projekt deaktiviert haben:

  • Die erste Erstellung eines Uptime-Checks ist erfolgreich, wenn in Ihrem Projekt automatische Rollenzuweisungen für Dienstkonten zulässig sind. Für Sie wird ein Dienstkonto erstellt, dem die erforderlichen Rollen zugewiesen werden.

  • Das Erstellen des ersten Uptime-Checks 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 die Erstellung der Verfügbarkeitsdiagnose fehlschlägt, gehen Sie so vor:

  1. Dienstkonto autorisieren.
  2. Warten Sie einige Minuten, bis die Berechtigungen gewährt werden.
  3. Versuchen Sie noch einmal, die private Verfügbarkeitsdiagnose zu erstellen.

API: Überwachtes Projekt

Wenn Sie zum ersten Mal einen privaten Uptime-Check erstellen, der 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 verwendetenGoogle Cloud -Projekte und ihren Beziehungen ab. Möglicherweise sind bis zu vier Projekte beteiligt:

  • 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 sind. Dieses Projekt spielt bei der hier beschriebenen Dienstkontoautorisierung 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 gewährt werden.
  3. Versuchen Sie noch einmal, die private Verfügbarkeitsdiagnose zu erstellen.

Zugriff verweigert

Ihre Verfügbarkeitsdiagnosen schlagen mit VPC_ACCESS_DENIED-Ergebnissen fehl. Dieses Ergebnis bedeutet, dass ein Aspekt Ihrer Netzwerkkonfiguration oder der Autorisierung des Dienstkontos nicht korrekt ist.

Prüfen Sie die Autorisierung Ihres Dienstkontos für die Verwendung eines Bereichsprojekts oder eines überwachten Projekts, wie unter Fehler beim Erstellen von Uptime-Checks beschrieben.

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

Anomale Ergebnisse von privaten Verfügbarkeitsdiagnosen

Sie haben einen Service Directory-Dienst mit mehreren VMs und Ihre Dienstkonfiguration enthält mehrere Endpunkte. Wenn Sie eine der VMs herunterfahren, wird in der Verfügbarkeitsdiagnose weiterhin „Erfolgreich“ angezeigt.

Wenn Ihre Dienstkonfiguration mehrere Endpunkte enthält, wird einer 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 nicht verfügbar ist.

Standardheader

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

Wenn eine Anfrage für einen privaten Uptime-Check 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 zur Uptime von Beiträgen

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

  • Die Verfügbarkeitsdiagnose meldet Fehler
  • Die Überschreibungswerte werden verworfen und durch die Werte in der Tabelle ersetzt.

Keine Daten sichtbar

Wenn sich Ihre Verfügbarkeitsdiagnose in einem anderen Google Cloud Projekt als der Service Directory-Dienst befindet, werden im Dashboard für Verfügbarkeitsdiagnosen keine Daten angezeigt.

Achten Sie darauf, dass das Google Cloud Projekt, das den Uptime-Check enthält, das Google Cloud Projekt überwacht, 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