Filestore-Instanz mit der gcloud CLI erstellen

In dieser Kurzanleitung erfahren Sie, wie Sie über die Google Cloud CLI schnell mit Filestore arbeiten können. In dieser Kurzanleitung erfahren Sie mehr über die folgenden Themen:

  • Filestore-Instanz erstellen
  • Stellen Sie die Dateifreigabe von dieser Instanz auf einer Compute Engine-Client-VM bereit.
  • Erstellen Sie eine Datei in der bereitgestellten Dateifreigabe.
  • Löschen Sie die Filestore-Instanz.

Hinweise

  1. Erstellen oder wählen Sie ein Projekt aus:

    Projekt erstellen

     gcloud projects create project-id
    

    Projekt auswählen

     gcloud config set project project-id
    

    Dabei ist project-id die ID des Google Cloud-Projekts.

  2. Die Abrechnung für Ihr Projekt muss aktiviert sein. Informationen zum Aktivieren der Abrechnung

  3. Installieren und initialisieren Sie die gcloud CLI.

    Wenn Sie die gcloud CLI bereits installiert haben, führen Sie den folgenden Befehl aus, um sie zu aktualisieren:

    gcloud components update
    

Nach Abschluss der in diesem Dokument beschriebenen Aufgaben können Sie weitere Kosten vermeiden, indem Sie die erstellten Ressourcen löschen. Weitere Informationen finden Sie unter Bereinigen.

Compute Engine-VM als Client erstellen

Linux

  1. Erstellen Sie eine Compute Engine-Instanz: Konfigurieren Sie die Instanz wie folgt:
    • Geben Sie der Instanz den Namen nfs-client.
    • Legen Sie für das Flag --zone den Wert us-central1-c fest.
    • Legen Sie für das Flag --image-project den Wert debian-cloud fest.
    • Legen Sie für das Flag --image-family den Wert debian-10 fest.
    • Legen Sie für das Flag --tags den Wert http-server, fest.
    gcloud compute instances create nfs-client --zone=us-central1-c --image-project=debian-cloud --image-family=debian-10 --tags=http-server,

Windows

  1. Erstellen Sie eine Compute Engine-Instanz: Konfigurieren Sie die Instanz wie folgt:
    • Geben Sie der Instanz den Namen nfs-client.
    • Legen Sie für das Flag --zone den Wert us-central1-c fest.
    • Legen Sie für das Flag --image-project den Wert windows-cloud fest.
    • Legen Sie für das Flag --image-family den Wert windows-2012-r2 fest.
    • Legen Sie für das Flag --tags den Wert http-server,http-server, fest.
    gcloud compute instances create nfs-client --zone=us-central1-c --image-project=windows-cloud --image-family=windows-2012-r2 --tags=http-server,http-server,

Filestore-Instanz erstellen

  1. Filestore-Instanz erstellen Konfigurieren Sie die Instanz wie folgt:

    • Geben Sie der Instanz den Namen nfs-server.
    • Legen Sie das Flag --zone auf us-central1-c fest.
    • Legen Sie das Flag --tier auf BASIC_HDD fest.
    • Legen Sie das Flag --file-share auf name="vol1",capacity=1TB fest.
    • Legen Sie das Flag --network auf name="default" fest.
    gcloud filestore instances create nfs-server --zone=us-central1-c --tier=BASIC_HDD --file-share=name="vol1",capacity=1TB --network=name="default"
  2. Rufen Sie Informationen zur erstellten Filestore-Instanz ab:

    gcloud filestore instances describe nfs-server --zone=us-central1-c
    

    Der Befehl gibt etwa Folgendes zurück:

    createTime: '2019-10-11T17:28:23.340943077Z'
    fileShares:
    - capacityGb: '1024'
     name: vol1
    name: projects/yourproject/locations/us-central1-c/instances/nfs-server
    networks:
    - ipAddresses:
     - 10.0.0.2
     network: default
     reservedIpRange: 10.0.0.0/29
    state: READY
    tier: BASIC_HDD
    

    Notieren Sie sich die IP-Adresse der Instanz, die beim Bereitstellen der Dateifreigabe verwendet werden soll. In dieser Kurzanleitung verwenden wir die IP-Adresse 10.0.0.2.

Filestore-Dateifreigabe auf der nfs-client-Instanz bereitstellen

Linux

  1. Stellen Sie eine SSH-Verbindung zur Instanz nfs-client her:
    gcloud compute ssh nfs-client

  1. Installieren Sie NFS, indem Sie die folgenden Befehle im Terminalfenster von nfs-client ausführen:

    sudo apt-get -y update &&
    sudo apt-get -y install nfs-common
    
  2. Erstellen Sie ein Bereitstellungsverzeichnis auf der nfs-client-Instanz für die Filestore-Dateifreigabe:

    sudo mkdir /mnt/test
    
  3. Stellen Sie die Dateifreigabe mit dem Befehl mount auf der Instanz nfs-client bereit. Geben Sie dazu die IP-Adresse der Filestore-Instanz, den Namen der Dateifreigabe und das Bereitstellungsverzeichnis für die Bereitstellung an:

    sudo mount 10.0.0.2:/vol1 /mnt/test
    
  4. Geben Sie den Zugriff auf die Dateifreigabe frei, indem Sie ihre Berechtigungen ändern:

    sudo chmod go+rw /mnt/test
    

Windows

Melden Sie sich bei der Instanz nfs-client an und öffnen Sie eine Eingabeaufforderung als Administrator

  1. Erstellen Sie ein Konto und legen Sie ein anfängliches Kennwort für die nfs-client-Instanz fest:

    gcloud compute reset-windows-password nfs-client
    
  2. Konfigurieren Sie die Instanz so, dass die Verbindung zu seriellen Ports aktiviert werden kann:

    gcloud compute instances add-metadata nfs-client --metadata=serial-port-enable=1
    
  3. Geben Sie eine interaktive Sitzung ein:

    gcloud compute connect-to-serial-port nfs-client --port=2
    
  4. Erstellen Sie bei der Eingabeaufforderung SAC> einen neuen Kanal:

    cmd
    

    Ein Kanal mit dem Namen Cmd0001 wird erstellt.

  5. Verbindung zum Kanal herstellen:

    ch -sn Cmd0001
    
  6. Geben Sie den Benutzernamen und das Kennwort der nfs-client-Instanz ein und lassen Sie das Feld Domain leer. Sie sind mit der Command Prompt-Schnittstelle der nfs-client-Instanz verbunden.

NFS-Client installieren

  1. Wechseln Sie im Command Prompt des nfs-client zu Windows PowerShell:

    powershell
    
  2. NFS-Client installieren:

    Install-WindowsFeature -Name NFS-Client
    
  3. Starten Sie die nfs-client-Instanz neu, wenn Sie dazu aufgefordert werden:

    restart-computer
    
  4. Warten Sie bei der Eingabeaufforderung SAC>, bis die folgende Benachrichtigung angezeigt wird:

    EVENT: The CMD command is now available.
    

    Führen Sie dann die Befehle cmd und ch -sn wie zuvor beschrieben aus, um sich bei der Instanz nfs-client anzumelden und die Verbindung wiederherzustellen.

Die vom NFS-Client verwendete Nutzer-ID konfigurieren

  1. Führen Sie in der Eingabeaufforderung powershell aus, um zu Windows PowerShell zu wechseln.
  2. Führen Sie in PowerShell die folgenden Befehle aus, um zwei neue Registry-Einträge zu erstellen, und zwar AnonymousUid und AnonymousGid:

    New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default" `
        -Name "AnonymousUid" -Value "0" -PropertyType DWORD
    
    New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default" `
        -Name "AnonymousGid" -Value "0" -PropertyType DWORD
    
  3. Starten Sie den NFS-Clientdienst neu:

    nfsadmin client stop
    
    nfsadmin client start
    

Weisen Sie die Dateifreigabe vol1 der Instanz nfs-client zu.

  1. Beenden Sie PowerShell:

    exit
    
  2. Stellen Sie unter Command Prompt die Dateifreigabe für die Instanz nfs-client mit dem Befehl mount bereit. Dazu geben Sie die IP-Adresse der Filestore-Instanz, den Namen der Dateifreigabe und den Laufwerksbuchstaben für die Bereitstellung an:

    mount -o mtype=hard 10.0.0.2:/vol1 z:
    

Eine Datei in dem bereitgestellten Fileshare erstellen

Linux

  1. Erstellen Sie im Terminalfenster nfs-client eine Datei mit dem Namen testfile, indem Sie den folgenden Befehl ausführen:

    echo 'This is a test' > /mnt/test/testfile
    
  2. Bestätigen Sie, dass die Datei erstellt wurde, indem Sie den folgenden Befehl ausführen und prüfen, ob sich testfile im zurückgegebenen Verzeichnisinhalt befindet:

    ls /mnt/test
    

Windows

  1. Erstellen Sie im Eingabeaufforderungsfenster der nfs-client-Instanz eine Datei mit dem Namen testfile:

    echo 'This is a test' > Z:\testfile
    
  2. Überprüfen Sie mit dem folgenden Befehl, ob die Datei erstellt wurde.

    dir Z:
    

    und prüfen sie, ob sich testfile im zurückgegebenen Verzeichnisinhalt befindet.

Bereinigen

Löschen Sie das Google Cloud-Projekt mit den Ressourcen, damit Ihrem Google Cloud-Konto die auf dieser Seite verwendeten Ressourcen nicht in Rechnung gestellt werden.

Google Cloud-Projekt löschen

    Google Cloud-Projekt löschen:

    gcloud projects delete PROJECT_ID

Filestore-Instanz löschen

Löschen Sie die nfs-server-Instanz:

gcloud filestore instances delete nfs-server --zone=us-central1-c

Compute Engine-Instanz löschen

Löschen Sie die Instanz:
gcloud compute instances delete nfs-client

Nächste Schritte