Windows Server-Instanzen erstellen und verwalten

Google Compute Engine stellt öffentliche Images für Windows Server bereit, mit denen Sie Instanzen erstellen können. Eine Anleitung zum Erstellen einer Windows Server-Instanz mit vorinstalliertem SQL Server finden Sie unter SQL Server-Instanzen erstellen.

Weitere Informationen zu Windows Server-Instanzen und Windows-Anwendungen, die Sie in Compute Engine ausführen können, finden Sie unter Windows auf Compute Engine.

Hinweise

Eine Windows Server-Instanz erstellen

Wenn Sie eine Instanz mit Windows Server erstellen möchten, geben Sie die Image-Familie für die jeweils benötigte Windows-Version an. Compute Engine bietet verschiedene Versionen von Windows Server, von denen die meisten als reguläre und als Shielded VM-Images verfügbar sind. Shielded VM-Images bieten Sicherheitsfunktionen wie UEFI-konforme Firmware, Secure Boot und vTPM-geschütztes Measured Boot. Wenn Sie die Instanz mit SSD-Speicher erstellen, können Sie weder die Integritäts-Monitoring-Funktionen von Shielded VM noch vTPM für das Abschirmen von Daten verwenden. Eine Liste der verfügbaren Image-Familien finden Sie unter Öffentliche Images.

Windows Server-Instanz erstellen, die eine externe IP-Adresse für die Aktivierung verwendet

In diesem Abschnitt wird beschrieben, wie Sie eine Windows Server-Instanz mit einer externen IP-Adresse erstellen. Ihr VPC-Netzwerk muss so konfiguriert sein, dass der Zugriff auf kms.windows.googlecloud.com zugelassen wird.

Windows Server-Instanz erstellen

Console

So erstellen Sie eine Standard-Windows-Instanz:

So erstellen Sie eine Shielded VM-Windows-Instanz:

  1. Gehen Sie zur Seite "VM-Instanzen".

    Zur Seite "VM-Instanzen"

  2. Klicken Sie auf Instanz erstellen.
  3. Klicken Sie im Abschnitt Bootlaufwerk auf Ändern, um mit der Konfiguration des Bootlaufwerks zu beginnen.
  4. Wählen Sie auf dem Tab Betriebssystem-Images ein Windows-Image aus.
    Wählen Sie Images mit Shielded VM-Funktionen zeigen aus, damit nur Shielded VM-Images angezeigt werden.

  5. Klicken Sie auf Auswählen.

  6. Ändern Sie optional die Shielded VM-Einstellungen der Instanz:

    1. Klicken Sie im Abschnitt Verwaltung, Sicherheit, Laufwerke, Netzwerke auf den Tab Sicherheit.
    2. Wenn Sie Secure Boot deaktivieren möchten, entfernen Sie das Häkchen bei Secure Boot aktivieren. Mit Secure Boot können Sie Ihre VM-Instanzen vor Malware und Rootkits auf Boot- und Kernelebene schützen. Weitere Informationen finden Sie unter Secure Boot.
    3. Wenn Sie das Virtual Trusted Platform Module (vTPM) deaktivieren möchten, entfernen Sie das Häkchen bei vTPM aktivieren. vTPM ermöglicht Measured Boot und damit die Prüfung der VM-Integrität vor und während des Hochfahrens. Weitere Informationen finden Sie unter Virtual Trusted Platform Module (vTPM).

    4. Wenn Sie die Integritätsüberwachung deaktivieren möchten, entfernen Sie das Häkchen bei Integritätsüberwachung aktivieren. Damit können Sie die Integrität beim Starten Ihrer Shielded VM-Instanzen mithilfe von Stackdriver überwachen. Weitere Informationen finden Sie unter Integritätsüberwachung.

  7. Klicken Sie auf Erstellen, um die Instanz zu erstellen.

gcloud

Mit dem Befehl compute images list rufen Sie eine Liste der verfügbaren Windows Server-Images auf.

Verwenden Sie den folgenden Befehl, um verfügbare Nicht-Shielded VM-Images von Windows Server anzuzeigen:

gcloud compute images list --project windows-cloud --no-standard-images

Verwenden Sie den folgenden Befehl, um eine Liste der verfügbaren Shielded VM-Images (einschließlich Windows-Images) aufzurufen:

gcloud compute images list --project gce-uefi-images --no-standard-images

Mit dem Befehl compute instances create erstellen Sie eine neue Instanz und geben die Image-Familie für eines der öffentlichen Images von Windows Server an:

gcloud compute instances create [INSTANCE_NAME] \
    --image-project windows-cloud \
    --image-family [IMAGE_FAMILY] \
    --machine-type [MACHINE_TYPE] \
    --boot-disk-size [BOOT_DISK_SIZE] \
    --boot-disk-type [BOOT_DISK_TYPE]

Dabei gilt:

  • [INSTANCE_NAME] ist der Name der neuen Instanz.
  • [IMAGE_FAMILY] ist eine der öffentlichen Image-Familien für Windows Server-Images.
  • [MACHINE_TYPE] ist einer der verfügbaren Maschinentypen.
  • [BOOT_DISK_SIZE] ist die Größe des Bootlaufwerks in GB. Je größer der nichtflüchtige Speicher ist, desto höher ist der Durchsatz.
  • [BOOT_DISK_TYPE] ist der Typ des Bootlaufwerks für Ihre Instanz. Geben Sie pd-ssd ein, um einen schnelleren nichtflüchtigen SSD-Speicher zu verwenden, oder pd-standard, um einen nichtflüchtigen HDD-Standardspeicher zu verwenden.

Wenn Sie ein Image ausgewählt haben, das Shielded VM unterstützt, können Sie optional die Shielded VM-Einstellungen der Instanz mit einem der folgenden Flags ändern:

  • --no-shielded-vm-secure-boot: Secure Boot deaktivieren. Mit Secure Boot können Sie Ihre VM-Instanzen vor Malware und Rootkits auf Boot- und Kernelebene schützen. Weitere Informationen finden Sie unter Secure Boot.
  • --no-shielded-vm-vtpm: Virtual Trusted Platform Module (vTPM) deaktivieren. Durch das vTPM wird Measured Boot aktiviert, das die Integrität der VM vor und während des Startens überprüft. Weitere Informationen finden Sie unter Virtual Trusted Platform Module (vTPM).

  • --no-shielded-vm-integrity-monitoring: Integritätsüberwachung deaktivieren. Damit können Sie die Integrität beim Starten Ihrer Shielded VM-Instanzen mithilfe von Stackdriver überwachen. Weitere Informationen finden Sie unter Integritätsüberwachung.

Im folgenden Beispiel wird eine Windows 2012-Shielded VM-Instanz mit deaktiviertem Secure Boot erstellt:

 gcloud compute instances create my-instance \
 --image-family windows-2012-r2 --image-project gce-uefi-images \
 --no-shielded-vm-secure-boot

API

Wenn Sie eine Instanz über die API erstellen möchten, fügen Sie in der Anfrage zur Instanzerstellung das Attribut initializeParams ein und geben ein Windows-Image an. Der Text Ihrer Anfrage könnte zum Beispiel so aussehen:

instance = {
  "name": "[INSTANCE_NAME]",
  "machineType": "zones/[ZONE]/machineTypes/[MACHINE_TYPE]",
  "disks": [{
      "boot": "true",
      "type": "PERSISTENT",
      "initializeParams": {
         "diskName": "[DISK_NAME]",
         "sourceImage": "https://www.googleapis.com/compute/v1/projects/windows-cloud/global/images/family/[IMAGE_FAMILY]",
         "diskSizeGb": "[BOOT_DISK_SIZE]",
         "diskType": "[BOOT_DISK_TYPE]",
       }
    }],
  "networkInterfaces": [{
    "accessConfigs": [{
      "type": "ONE_TO_ONE_NAT",
      "name": "External NAT"
     }],
    "network": "global/networks/default"
  }],
  "serviceAccounts": [{
       "email": DEFAULT_SERVICE_EMAIL,
       "scopes": DEFAULT_SCOPES
  }]
}

Dabei gilt:

  • [INSTANCE_NAME] ist der Name der neuen Instanz.
  • [IMAGE_FAMILY] ist eine der öffentlichen Image-Familien für Windows Server- oder SQL Server-Images.
  • [ZONE] ist die Zone für diese Instanz.
  • [MACHINE_TYPE] ist einer der verfügbaren Maschinentypen.
  • [BOOT_DISK_SIZE] ist die Größe des Bootlaufwerks in GB. Je größer der nichtflüchtige Speicher ist, desto höher ist der Durchsatz.
  • [BOOT_DISK_TYPE] ist der Typ des Bootlaufwerks für Ihre Instanz. Geben Sie pd-ssd an, um einen schnelleren nichtflüchtigen SSD-Speicher zu verwenden, oder pd-standard, um einen nichtflüchtigen HDD-Standardspeicher zu verwenden.

Wenn Sie ein Image ausgewählt haben, das Shielded VM unterstützt, können Sie optional die Shielded VM-Einstellungen der Instanz mit den folgenden booleschen Anfragetextelementen ändern:

  • enableSecureBoot: Secure Boot aktivieren oder deaktivieren. Mit Secure Boot können Sie Ihre VM-Instanzen vor Malware und Rootkits auf Boot- und Kernel-Ebene schützen. Weitere Informationen finden Sie unter Secure Boot.
  • enableVtpm: vTPM aktivieren oder deaktivieren. Durch das vTPM wird Measured Boot aktiviert, das die Integrität der VM vor und während des Startens überprüft. Weitere Informationen finden Sie unter Virtual Trusted Platform Module (vTPM).

  • enableIntegrityMonitoring: Integritätsüberwachung aktivieren oder deaktivieren. Mit der Integritätsüberwachung können Sie die Integrität beim Starten der Laufzeit Ihrer Shielded VM-Instanzen mithilfe von Stackdriver-Berichten überwachen und überprüfen. Weitere Informationen finden Sie unter Integritätsüberwachung.

Weitere Informationen zum Erstellen von Instanzen finden Sie in der Dokumentation zu instances.insert().

Wenn Sie die Windows Server- oder SQL Server-Instanz erstellt haben, legen Sie das vorläufige Passwort für die Instanz fest, damit Sie sich über RDP mit der Instanz verbinden können.

Windows Server-Instanz erstellen, die über eine interne IP-Adresse aktiviert wird

Bevor Sie eine Windows Server-Instanz erstellen können, die nur eine interne IP-Adresse hat, müssen Sie die Routen und Firewallregeln in Ihrem VPC-Netzwerk überprüfen oder konfigurieren, um den Zugriff auf kms.windows.googlecloud.com zu ermöglichen. Darüber hinaus ist die Aktivierung von privatem Google-Zugriff für Subnetze in Ihrem VPC-Netzwerk erforderlich, die Windows-Instanzen mit ausschließlich internen IP-Adressen enthalten.

Wenn Sie eine neue Instanz mithilfe der gcloud-Befehlszeile erstellen, können Sie mit dem Flag --no-address festlegen, dass ihr keine externe IP-Adresse zugewiesen wird:

gcloud compute instances create [INSTANCE_NAME] --network [NETWORK_NAME] \
   --subnet [SUBNET_NAME] \
   --no-address \
   --zone [ZONE] \
   --image-project windows-cloud \
   --image-family [IMAGE_FAMILY] \
   --machine-type [MACHINE_TYPE] \
   --boot-disk-size [BOOT_DISK_SIZE] \
   --boot-disk-type [BOOT_DISK_TYPE]

Ersetzen Sie die folgenden Platzhalter durch gültige Werte:

  • [INSTANCE_NAME] ist der Name der neuen Instanz.
  • [SUBNET_NAME] ist der Name des Subnetzes im VPC-Netzwerk, das von der Instanz verwendet wird. Das Subnetz muss sich in derselben Region befinden wie die Zone, die Sie für die Instanz ausgewählt haben.
  • [IMAGE_FAMILY] ist eine der öffentlichen Image-Familien für Windows Server-Images.
  • [MACHINE_TYPE] ist einer der verfügbaren Maschinentypen.
  • [BOOT_DISK_SIZE] ist die Größe des Bootlaufwerks in GB. Größere nichtflüchtige Speicher haben einen höheren Durchsatz.
  • [BOOT_DISK_TYPE] ist der Typ des Bootlaufwerks für Ihre Instanz. Geben Sie pd-ssd an, um einen schnelleren nichtflüchtigen SSD-Speicher zu verwenden, oder pd-standard, um einen nichtflüchtigen HDD-Standardspeicher zu verwenden.

Da diese Instanz keine externe IP-Adresse hat, können Sie keine direkte Verbindung über das Internet zu ihr herstellen. Sie können über Cloud Interconnect oder Cloud VPN eine Verbindung von einem anderen Netzwerk aus zu Ihrem VPC-Netzwerk herstellen. Alternativ können Sie zuerst über RDP eine Verbindung zu einer Bastion-Instanz und dann zu einer Instanz herstellen, die nur eine interne IP-Adresse hat.

Zugriff auf kms.windows.googlecloud.com konfigurieren

Für die Aktivierung von Windows und die Verlängerung der Lizenz muss Ihr VPC-Netzwerk die folgenden Anforderungen an Routing und Firewallregeln erfüllen.

Anforderungen an das Routing

Ihre Windows-Instanzen müssen über eine Route, deren nächster Hop das Standard-Internetgateway ist, kms.windows.googlecloud.com (35.190.247.13) erreichen können. Sie können Windows-Instanzen nicht mit einem instanzbasierten NAT-Gateway oder Cloud-NAT aktivieren, da kms.windows.googlecloud.com Aktivierungsanfragen von IP-Adressen zurückweist, die nicht als Instanzen von Compute Engine bestätigt wurden.

Sie können die Standardroute in Ihrem VPC-Netzwerk verwenden, um den Traffic direkt an kms.windows.googlecloud.com zu leiten. Wenn Sie diese Route entfernen oder dies für die Zukunft planen, erstellen Sie eine benutzerdefinierte statische Route mit dem Ziel 35.190.247.13 und dem nächsten Hop als Standard-Internetgateway:

gcloud compute routes create [ROUTE_NAME] \
    --destination-range=35.190.247.13/32 \
    --network=[NETWORK] \
    --next-hop-gateway=default-internet-gateway

Ersetzen Sie [ROUTE_NAME] durch einen Namen für diese Route und [NETWORK] durch den Namen des VPC-Netzwerks.

Instanzen mit externen IP-Adressen können entweder über die Standardroute oder eine benutzerdefinierte statische Route, wie oben beschrieben, kms.windows.googlecloud.com erreichen. Wenn Sie Windows-Instanzen ohne externe IP-Adressen haben, müssen Sie auch privaten Google-Zugriff aktivieren, damit Instanzen mit ausschließlich internen IP-Adressen Traffic an die externe IP-Adresse für kms.windows.googlecloud.com senden können. Die entsprechende IP-Adresse 35.190.247.13 ist in der Liste der IP-Adressen für Google APIs und Google-Dienste enthalten.

Anforderungen an Firewallregeln

Die implizierte Firewallregel zum Zulassen ausgehenden Traffics erlaubt es Instanzen, Anfragen zu stellen und zugehörige Antworten zu erhalten. Sofern Sie keine benutzerdefinierten Firewallregeln erstellt haben, die ausgehenden Traffic verweigern, können Ihre Windows-Instanzen mit kms.windows.googlecloud.com kommunizieren.

Wenn Sie Firewallregeln anpassen, bietet es sich an, eine Regel mit hoher Priorität für ausgehenden Traffic zu erstellen, die die Kommunikation mit 35.190.247.13 ausdrücklich zulässt. Auf diese Weise können Sie die Windows-Aktivierung nicht versehentlich deaktivieren, wenn Sie Ihre Firewallregeln ändern.

Im folgenden Beispiel wird die empfohlene Regel für ausgehenden Traffic mit der höchsten Priorität mit gcloud erstellt:

gcloud compute firewall-rules create [RULE_NAME] \
    --direction=EGRESS \
    --network=[NETWORK] \
    --action=ALLOW \
    --rules=tcp:1688 \
    --destination-ranges=35.190.247.13/32 \
    --priority=0

Ersetzen Sie [RULE_NAME] durch einen Namen für diese Firewallregel und [NETWORK] durch den Namen des VPC-Netzwerks.

Überprüfen, ob eine Instanz gestartet wurde

Windows-Instanzen benötigen aufgrund des Sysprep-Prozesses eine längere Startzeit. Die GCP Console zeigt unter Umständen an, dass die Instanz ausgeführt wird, obwohl der Sysprep-Prozess noch nicht abgeschlossen ist. Um zu überprüfen, ob Ihre Instanz erfolgreich gestartet wurde und bereit ist, überprüfen Sie mit dem folgenden Befehl die Ausgabe am seriellen Port:

gcloud compute instances get-serial-port-output [INSTANCE_NAME]

Dabei ist [INSTANCE_NAME] der Name der Instanz, die Sie überprüfen möchten.

...[snip]...
Running schtasks with arguments /run /tn GCEStartup
-->  SUCCESS: Attempted to run the scheduled task "GCEStartup".
-------------------------------------------------------------
Instance setup finished. [INSTANCE_NAME] is ready to use.
-------------------------------------------------------------

Automatische Komponentenupdates deaktivieren

Wenn Sie über Windows-Instanzen mit Image-Versionen v20170509 und höher oder über Windows-Agent-Version 4.1.0 und höher verfügen, werden von Google bereitgestellte Komponenten wie der Agent, Metadaten und Systemvorbereitungsskripts über eine geplante Aufgabe automatisch aktualisiert. Die geplante Aufgabe wird vom Paket google-compute-engine-auto-updater eingerichtet.

Wenn Sie Updates manuell oder mithilfe eines anderen Systems verwalten möchten, können Sie diese automatischen Komponentenupdates deaktivieren, indem Sie das Paket google-compute-engine-auto-updater entfernen:

  1. Öffnen Sie in der Windows Server-Instanz ein PowerShell-Terminal als Administrator.
  2. Führen Sie den Befehl googet remove aus, um das Paket zu entfernen:

    PS C:\\> googet remove google-compute-engine-auto-updater
    

Optional können Sie das Paket neu installieren, um automatische Komponentenupdates zu ermöglichen:

  1. Öffnen Sie in der Windows Server-Instanz ein PowerShell-Terminal als Administrator.
  2. Führen Sie den Befehl googet install aus, um das Paket zu installieren:

    PS C:\\> googet install google-compute-engine-auto-updater
    

Alternativ können Sie den Wert disable-agent-updates in den benutzerdefinierten Projekt- oder Instanzmetadaten auf true setzen, um die Updates zu deaktivieren. Der Metadatenwert deaktiviert Updates, ohne das Paket oder die Aufgabe zu entfernen.

Windows-Instanzfunktionen aktivieren und deaktivieren

Wenn Sie Windows-Instanzen mit der Image-Version v20170509 oder höher oder mit der Agent-Version 4.1.0 oder höher verwenden, können Sie die Instanzkonfiguration in einer Konfigurationsdatei oder in den benutzerdefinierten Projekt- oder Instanzmetadaten festlegen. Die Konfigurationsdatei hat das INI-Format und befindet sich in folgendem Verzeichnis:

C:\Program Files\Google\Compute Engine\instance_configs.cfg

Das System überschreibt Konfigurationseinstellungen in der folgenden Prioritätsreihenfolge – von der höchsten zur niedrigsten Priorität:

  1. Konfigurationsparameter, die Sie in der Konfigurationsdatei festgelegt haben
  2. Konfigurationsparameter, die in benutzerdefinierten Metadaten auf Instanzebene festgelegt wurden
  3. Konfigurationsparameter, die in benutzerdefinierten Metadaten auf Projektebene festgelegt wurden

Wenn Sie beispielsweise die Funktion accountManager in einer Konfigurationsdatei aktivieren können, werden Parameter, die Sie in benutzerdefinierten Metadaten festgelegt haben, um diese Funktion zu deaktivieren, ignoriert.

Ein Vorteil, wenn diese Parameter in der Konfigurationsdatei festgelegt werden, ist, dass diese Einstellungen beim Erstellen eines benutzerdefinierten Images für eine Windows Server-Instanz erhalten bleiben. Benutzerdefinierte Metadaten auf Instanzebene bleiben nicht über die Laufzeit der Instanz hinweg bestehen.

Sie können gemäß den folgenden Beispielen verschiedene Windows-Instanzfunktionen deaktivieren.

Deaktivieren Sie den Kontomanager:

  • Konfigurationsdatei:

    [accountManager]
    disable=true
    
  • Stellen Sie bei benutzerdefinierten Metadaten disable-account-manager in Metadaten auf true ein.

Deaktivieren Sie den Adressmanager:

  • Eintrag in der Konfigurationsdatei:

    [addressManager]
    disable=true
    
  • Stellen Sie bei benutzerdefinierten Metadaten disable-address-manager in Metadaten auf true ein.

Windows Server Failover Clustering

Aktivieren Sie den Windows Server Failover Clustering-Agent:

  • Eintrag in der Konfigurationsdatei:

    [wsfc]
    enable=true
    
  • Stellen Sie bei benutzerdefinierten Metadaten enable-wsfc in Metadaten auf true ein.

Mehrere interne Load-Balancer verwenden

Geben Sie die IP-Adresse der internen Load-Balancing-Instanz für das Failover-Clustering an. Dies ist eine erweiterte Konfiguration, die Sie für einen dedizierten Failover-Cluster nicht festlegen müssen.

Normalerweise verwenden Sie eine interne Load-Balancing-Instanz, damit der Netzwerkverkehr immer zu jeweils einer VM-Instanz geleitet wird. Wenn Sie eine zweite interne Load-Balancing-Instanz hinzufügen, die die Failover-Clustering-VM-Instanzen als Bestandteil einer gesicherten Website mit Load-Balancing nutzt, haben Sie zwei IP-Adressen für das interne Load-Balancing. Wenn Failover-Clustering 10.0.0.10 und der Load-Balancer der Website 10.0.0.11 nutzt, müssen Sie die IP-Adresse des Load-Balancers angeben, das Sie für Failover-Clustering verwenden. Dadurch wird klar, welche Adresse für den Cluster verwendet wird.

  • Eintrag in der Konfigurationsdatei:

    [wsfc]
    addresses=10.0.0.10
    
  • Stellen Sie bei benutzerdefinierten Metadaten wsfc-addrs auf 10.0.0.10 ein.

Den Port des Clustering-Agents ändern

Legen Sie den Port des Failover-Clustering-Agents fest. Der Standardport ist 59998. Sie müssen nur dann einen Port angeben, wenn Sie einen anderen Port verwenden möchten:

  • Eintrag in der Konfigurationsdatei:

    [wsfc]
    port=12345
    
  • Stellen Sie bei benutzerdefinierten Metadaten wsfc-agent-port auf die Portnummer ein.

Hinweise zur Image-Version

Ältere Images nutzen keine Konfigurationsdatei und bieten nur einen Teil der Funktionen. Bei Image-Version v20160112 bis v20170509 oder Windows-Agent-Version 3.2.1.0 bis 4.0.0 müssen Sie die folgenden benutzerdefinierten Metadatenwerte verwenden:

  • Stellen Sie disable-account-manager in den Instanzmetadaten auf true, um den Kontomanager zu deaktivieren.
  • Stellen Sie disable-address-manager in den Instanzmetadaten auf true, um den Adressmanager zu deaktivieren.

Weitere Informationen

Hat Ihnen diese Seite weitergeholfen? Teilen Sie uns Ihr Feedback mit:

Feedback geben zu...

Compute Engine-Dokumentation