REST Resource: projects.locations.instances

Resource: Instance

A Filestore instance.

JSON representation
{
  "name": string,
  "description": string,
  "state": enum (State),
  "statusMessage": string,
  "createTime": string,
  "tier": enum (Tier),
  "labels": {
    string: string,
    ...
  },
  "fileShares": [
    {
      object (FileShareConfig)
    }
  ],
  "networks": [
    {
      object (NetworkConfig)
    }
  ],
  "etag": string,
  "satisfiesPzs": boolean,
  "satisfiesPzi": boolean,
  "kmsKeyName": string,
  "suspensionReasons": [
    enum (SuspensionReason)
  ],
  "maxCapacityGb": string,
  "capacityStepSizeGb": string,
  "maxShareCount": string,
  "capacityGb": string,
  "multiShareEnabled": boolean,
  "protocol": enum (FileProtocol),
  "directoryServices": {
    object (DirectoryServicesConfig)
  }
}
Fields
name

string

Output only. The resource name of the instance, in the format projects/{projectId}/locations/{locationId}/instances/{instanceId}.

description

string

The description of the instance (2048 characters or less).

state

enum (State)

Output only. The instance state.

statusMessage

string

Output only. Additional information about the instance state, if available.

createTime

string (Timestamp format)

Output only. The time when the instance was created.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

tier

enum (Tier)

The service tier of the instance.

labels

map (key: string, value: string)

Resource labels to represent user provided metadata.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

fileShares[]

object (FileShareConfig)

File system shares on the instance. For this version, only a single file share is supported.

networks[]

object (NetworkConfig)

VPC networks to which the instance is connected. For this version, only a single network is supported.

etag

string

Server-specified ETag for the instance resource to prevent simultaneous updates from overwriting each other.

satisfiesPzs

boolean

Output only. Reserved for future use.

satisfiesPzi

boolean

Output only. Reserved for future use.

kmsKeyName

string

KMS key name used for data encryption.

suspensionReasons[]

enum (SuspensionReason)

Output only. Field indicates all the reasons the instance is in "SUSPENDED" state.

maxCapacityGb

string (int64 format)

Output only. The max capacity of the instance.

capacityStepSizeGb

string (int64 format)

Output only. The increase/decrease capacity step size.

maxShareCount

string (int64 format)

The max number of shares allowed.

capacityGb

string (int64 format)

The storage capacity of the instance in gigabytes (GB = 1024^3 bytes). This capacity can be increased up to maxCapacityGb GB in multipliers of capacityStepSizeGb GB.

multiShareEnabled

boolean

Indicates whether this instance uses a multi-share configuration with which it can have more than one file-share or none at all. File-shares are added, updated and removed through the separate file-share APIs.

protocol

enum (FileProtocol)

Immutable. The protocol indicates the access protocol for all shares in the instance. This field is immutable and it cannot be changed after the instance has been created. Default value: NFS_V3.

directoryServices

object (DirectoryServicesConfig)

Optional. Directory Services configuration for Kerberos-based authentication. Should only be set if protocol is "NFS_V4_1".

State

The instance state.

Enums
STATE_UNSPECIFIED State not set.
CREATING The instance is being created.
READY The instance is available for use.
REPAIRING Work is being done on the instance. You can get further details from the statusMessage field of the Instance resource.
DELETING The instance is shutting down.
ERROR The instance is experiencing an issue and might be unusable. You can get further details from the statusMessage field of the Instance resource.
RESTORING The instance is restoring a snapshot or backup to an existing file share and may be unusable during this time.
SUSPENDED The instance is suspended. You can get further details from the suspensionReasons field of the Instance resource.
REVERTING The instance is reverting to a snapshot.
SUSPENDING The instance is in the process of becoming suspended.
RESUMING The instance is in the process of becoming active.

FileShareConfig

File share configuration for the instance.

JSON representation
{
  "name": string,
  "capacityGb": string,
  "nfsExportOptions": [
    {
      object (NfsExportOptions)
    }
  ],

  // Union field source can be only one of the following:
  "sourceBackup": string
  // End of list of possible types for union field source.
}
Fields
name

string

Required. The name of the file share. Must use 1-16 characters for the basic service tier and 1-63 characters for all other service tiers. Must use lowercase letters, numbers, or underscores [a-z0-9_]. Must start with a letter. Immutable.

capacityGb

string (int64 format)

File share capacity in gigabytes (GB). Filestore defines 1 GB as 1024^3 bytes.

nfsExportOptions[]

object (NfsExportOptions)

Nfs Export Options. There is a limit of 10 export options per file share.

Union field source. The source that this file share has been restored from. Empty if the file share is created from scratch. source can be only one of the following:
sourceBackup

string

The resource name of the backup, in the format projects/{projectId}/locations/{locationId}/backups/{backupId}, that this file share has been restored from.

NetworkConfig

Network configuration for the instance.

JSON representation
{
  "network": string,
  "modes": [
    enum (AddressMode)
  ],
  "reservedIpRange": string,
  "ipAddresses": [
    string
  ],
  "connectMode": enum (ConnectMode)
}
Fields
network

string

The name of the Google Compute Engine VPC network to which the instance is connected.

modes[]

enum (AddressMode)

Internet protocol versions for which the instance has IP addresses assigned. For this version, only MODE_IPV4 is supported.

reservedIpRange

string

Optional, reservedIpRange can have one of the following two types of values.

  • CIDR range value when using DIRECT_PEERING connect mode.
  • Allocated IP address range when using PRIVATE_SERVICE_ACCESS connect mode.

When the name of an allocated IP address range is specified, it must be one of the ranges associated with the private service access connection. When specified as a direct CIDR value, it must be a /29 CIDR block for Basic tier, a /24 CIDR block for High Scale tier, or a /26 CIDR block for Enterprise tier in one of the internal IP address ranges that identifies the range of IP addresses reserved for this instance. For example, 10.0.0.0/29, 192.168.0.0/24, or 192.168.0.0/26, respectively. The range you specify can't overlap with either existing subnets or assigned IP address ranges for other Filestore instances in the selected VPC network.

ipAddresses[]

string

Output only. IPv4 addresses in the format {octet1}.{octet2}.{octet3}.{octet4} or IPv6 addresses in the format {block1}:{block2}:{block3}:{block4}:{block5}:{block6}:{block7}:{block8}.

connectMode

enum (ConnectMode)

The network connect mode of the Filestore instance. If not provided, the connect mode defaults to DIRECT_PEERING.

AddressMode

Internet protocol versions supported by Filestore.

Enums
ADDRESS_MODE_UNSPECIFIED Internet protocol not set.
MODE_IPV4 Use the IPv4 internet protocol.

ConnectMode

Available connection modes.

Enums
CONNECT_MODE_UNSPECIFIED ConnectMode not set.
DIRECT_PEERING Connect via direct peering to the Filestore service.
PRIVATE_SERVICE_ACCESS Connect to your Filestore instance using Private Service Access. Private services access provides an IP address range for multiple Google Cloud services, including Filestore.

SuspensionReason

SuspensionReason contains the possible reasons for a suspension.

Enums
SUSPENSION_REASON_UNSPECIFIED Not set.
KMS_KEY_ISSUE The KMS key used by the instance is either revoked or denied access to.

FileProtocol

File access protocol.

Enums
FILE_PROTOCOL_UNSPECIFIED FILE_PROTOCOL_UNSPECIFIED serves a "not set" default value when a FileProtocol is a separate field in a message.
NFS_V3 NFS 3.0.
NFS_V4_1 NFS 4.1.

DirectoryServicesConfig

Directory Services configuration for Kerberos-based authentication.

JSON representation
{

  // Union field config can be only one of the following:
  "managedActiveDirectory": {
    object (ManagedActiveDirectoryConfig)
  }
  // End of list of possible types for union field config.
}
Fields

Union field config.

config can be only one of the following:

managedActiveDirectory

object (ManagedActiveDirectoryConfig)

Configuration for Managed Service for Microsoft Active Directory.

ManagedActiveDirectoryConfig

ManagedActiveDirectoryConfig contains all the parameters for connecting to Managed Active Directory.

JSON representation
{
  "domain": string,
  "computer": string
}
Fields
domain

string

Required. The domain resource name, in the format projects/{projectId}/locations/global/domains/{domain}.

computer

string

Required. The computer name is used as a prefix to the mount remote target. Example: if the computer is my-computer, the mount command will look like: $mount -o vers=4.1,sec=krb5 my-computer.filestore.<domain>:<share> <mount point>.

Methods

create

Creates an instance.

delete

Deletes an instance.

get

Gets the details of a specific instance.

list

Lists all instances in a project for either a specified location or for all locations.

patch

Updates the settings of a specific instance.

restore

Restores an existing instance's file share from a backup.

revert

Revert an existing instance's file system to a specified snapshot.