Cette page explique comment modifier une instance Filestore à l'aide de la consoleGoogle Cloud ou de gcloud CLI.
Une fois créée, vous pouvez modifier une instance Filestore comme suit :
- Augmenter sa capacité
- Diminuez la capacité des niveaux de service suivants :
- Zonal
- Régional
- Entreprise
- Configurer les performances
- Modifier sa description
- Gérer les règles de contrôle des accès basées sur les adresses IP
- Gérer les libellés
- Pour en savoir plus, consultez Gérer les libellés.
Pour en savoir plus sur le scaling de la capacité, consultez la section Scaling de la capacité.
Certaines spécifications, comme l'adresse IP de l'instance, sont immuables.
Instructions pour modifier une instance
Console Google Cloud
Pour modifier des instances Filestore à l'aide de la console Google Cloud , accédez à la page Modifier l'instance, dans laquelle vous pouvez modifier la description de l'instance, gérer les règles de contrôle des accès basé sur les adresses IP et procéder au scaling des performances du partage de fichiers:
Dans la console Google Cloud , accédez à la page "Instances Filestore".
Cliquez sur l'ID de l'instance à modifier.
Sur la page Détails de l'instance, cliquez sur Modifier pour accéder à la page Modifier l'instance.
Modifiez la description de l'instance, les règles de contrôle des accès basé sur l'adresse IP et la capacité selon vos besoins. Pour en savoir plus, consultez la section Créer des instances.
Cliquez sur Save.
gcloud
Avant de commencer
Pour utiliser gcloud CLI, vous devez installer gcloud CLI ou utiliser Cloud Shell , intégré à la console Google Cloud :
Accéder à la Google Cloud console
Commande gcloud
pour modifier une instance
Vous pouvez modifier une instance Filestore en exécutant la commande instances
update
. Si vous devez mettre à jour les règles de configuration pour le contrôle des accès basé sur l'adresse IP, vous devez utiliser l'option --flags-file
et spécifier un fichier de configuration JSON. Si vous choisissez cette méthode, vous n'avez pas besoin d'utiliser l'indicateur --file-share
, car il est déjà inclus dans le fichier de configuration JSON.
gcloud filestore instances update INSTANCE_ID
--[project="PROJECT_ID"]
--[location=LOCATION]
--[performance=PERFORMANCE] \
--[file-share=name="FILE_SHARE_NAME",CAPACITY=FILE_SHARE_SIZE]
--[description="DESCRIPTION"]
--[flags-file=FILE_NAME.json]
où :
- INSTANCE_ID est l'ID de l'instance Filestore que vous souhaitez modifier.
PROJECT_ID est l'ID du projet Google Cloud contenant l'instance Filestore. Vous pouvez ignorer cette option si l'instance Filestore se trouve dans le projet par défaut
gcloud
. Vous pouvez définir le projet par défaut en exécutant la commande suivante :gcloud config set project project-id
LOCATION est l'emplacement où se trouve l'instance Filestore. Pour les instances régionales et Enterprise, spécifiez une région. Pour toutes les autres instances, spécifiez une zone. Exécutez la commande
gcloud filestore zones list
pour obtenir la liste des zones compatibles. Vous pouvez ignorer cette option si l'instance Filestore se trouve dans la zone par défautgcloud
. Vous pouvez définir la zone par défaut en exécutant la commande suivante :gcloud config set filestore/zone zone
PERFORMANCE est la configuration de performances utilisée pour spécifier des paramètres de performances personnalisés indépendamment de la capacité choisie.
Vous ne pouvez utiliser qu'une seule des options suivantes:
max-iops-per-tb
spécifie un taux d'IOPS par TiB qui évolue de manière linéaire en fonction de la capacité de l'instance.max-iops
spécifie un taux d'IOPS fixe qui ne s'adapte pas à la capacité de l'instance.Le format se présente comme suit:
--performance=max-iops-per-tb=17000
{FILE_SHARE_NAME est le nom du partage de fichiers diffusé à partir de l'instance Filestore. Les noms de partage de fichiers ne peuvent pas être modifiés après la création de l'instance.
FILE_SHARE_SIZE correspond à la nouvelle taille voulue pour le partage de fichiers. Vous pouvez exprimer la taille du partage de fichiers sous la forme d'un nombre entier de gigaoctets (
GiB
, par défaut) ou de téraoctets (TiB
).Pour afficher votre quota disponible, accédez à la page "Quotas" de la console Google Cloud :
DESCRIPTION correspond à la description facultative de l'instance Filestore.
FILE_NAME est le nom du fichier de configuration json pour le contrôle des accès basé sur les adresses IP.
Exemple de fichier de configuration json :
{ "--file-share": { "capacity": "4096", "name": "my_vol", "nfs-export-options": [ { "access-mode": "READ_WRITE", "ip-ranges": [ "10.0.0.0", "10.2.0.0" ], "squash-mode": "ROOT_SQUASH", "anon_uid": 1003, "anon_gid": 1003 }, { "access-mode": "READ_ONLY", "ip-ranges": [ "10.0.1.0/28" ], "squash-mode": "NO_ROOT_SQUASH" } ], } }
où :
- ip-ranges est l'adresse IP ou la plage à laquelle accorder l'accès. Vous pouvez spécifier plusieurs adresses IP ou plages en les séparant par une virgule.
Seuls les niveaux de service suivants sont compatibles avec les paramètres de configuration des plages d'adresses IP qui se chevauchent :
- Zonal
- Régional
- Entreprise
- access-mode est le niveau d'accès à accorder aux clients dont l'adresse IP est comprise dans la plage d'adresses IP (ip-range). Il peut correspondre aux valeurs
READ_WRITE
ouREAD_ONLY
. La valeur par défaut estREAD_WRITE
. - Les valeurs
ROOT_SQUASH
ouNO_ROOT_SQUASH
peuvent être définies pour squash-mode.ROOT_SQUASH
supprime l'accès au niveau racine pour le(s) client(s) dont l'adresse IP appartient à la plage ip-range, tandis queNO_ROOT_SQUASH
active l'accès root. La valeur par défaut estNO_ROOT_SQUASH
. - anon_uid est la valeur de l'ID utilisateur que vous souhaitez mapper sur
anon_uid
. La valeur par défaut est65534
. - anon_gid est la valeur de l'ID de groupe que vous souhaitez mapper sur
anon_gid
. La valeur par défaut est65534
.
- ip-ranges est l'adresse IP ou la plage à laquelle accorder l'accès. Vous pouvez spécifier plusieurs adresses IP ou plages en les séparant par une virgule.
Seuls les niveaux de service suivants sont compatibles avec les paramètres de configuration des plages d'adresses IP qui se chevauchent :
Exemple
L'exemple suivant met à jour l'instance nfs-server
en augmentant la taille du partage de fichiers à 3 To (TiB
).
gcloud filestore instances update nfs-server --zone=us-central1-c --file-share=name="vol1",capacity=3TiB
```
API REST
Vous devez installer et initialiser gcloud CLI, ce qui vous permet de générer un jeton d'accès pour l'en-tête
Authorization
.Utilisez
cURL
pour appeler l'API Filestore:curl --request PATCH \ 'https://file.googleapis.com/v1/projects/PROJECT/locations/LOCATION/instances?instanceId=NAME?updateMask=performanceConfig%2CdeletionProtectionReason%2CdeletionProtectionEnabled&key=YOUR_API_KEY' \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --data '{ "tier":"TIER", "networks":[ { "network":"NETWORK" } ], "performanceConfig": {"PERFORMANCE"} "fileShares":[ {"capacityGb":CAPACITY,"name":"SHARE_NAME"} ], "deletionProtectionEnabled": true, "deletionProtectionReason": "PROTECTION_REASON"}' \ --compressed
Où :
PROJECT
est le nom du projet dans lequel votre instance résidera. Exemple :my-genomics-project
LOCATION
est l'emplacement où l'instance résidera. Par exemple,us-east1
ouus-central1-a
.NAME
est le nom de l'instance que vous souhaitez créer. Exemple :my-genomics-instance
PERFORMANCE
est la configuration des performances utilisée pour spécifier des paramètres de performances personnalisés.Vous ne pouvez utiliser qu'une seule des options proposées.
iopsPerTB
permet de personnaliser les performances avec un taux d'IOPS défini par l'utilisateur qui évolue en fonction de la capacité de l'instance. Pour définir les IOPS par téraoctet, utilisez le champmaxIopsPerTb
.fixedIops
permet de définir des performances personnalisées avec un taux d'IOPS fixe qui ne s'adapte pas à la capacité de l'instance. Pour définir une valeur d'IOPS fixe, utilisez le champmaxIops
.Le format est le suivant :
"performanceConfig": { "iopsPerTb" : { "maxIopsPerTb":17000 } }
CAPACITY
correspond à la taille, en Gio, que vous souhaitez allouer à l'instance. Exemple :1024
SHARE_NAME
est le nom du partage de fichiers. Exemple :vol1
.PROTECTION_REASON
Si vous choisissez d'utiliser l'indicateurdeletionProtectionEnabled
, vous pouvez ajouter une note concernant le paramètre. Pour ajouter la note, utilisez l'option facultativedeletionProtectionReason
et incluez une description de la justification du paramètre que vous avez choisi. Par exemple, "Toutes les données de génomique doivent respecter les règles actuelles de l'organisation." Pour en savoir plus, consultez la section Protection contre la suppression.
Exemple
L'exemple suivant met à jour l'instance
nfs-server
en réduisant le ratio IOPS par TiB à12000
.curl --request PATCH \ 'https://file.googleapis.com/v1/projects/my-project/locations/us-central1/instances?instanceId=nfs-server?updateMask=performanceConfig%2CdeletionProtectionReason&key=12334fr232' \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --data '{ "performanceConfig": { "iopsPerTb": { "maxIopsPerTb":12000 } }, "deletionProtectionReason":"Deletion+not+allowed"}' \ --compressed
Étape suivante
- Créez une autre instance.
- Installez le partage de fichiers Filestore sur une instance de VM Compute Engine.
- Accéder aux instances Filestore avec le pilote CSI Filestore
- Évolutivité de la capacité