Skip to content
URL:
https://<root>/system/volumes/configurations/create
Methods:
POST
Version Introduced:
11.2

Access requirements

Required privileges

The Enterprise Administrator API requires privilege-based access. An administrator must be assigned a specific user privilege, or role, to access any given endpoint. Listed below are the user privileges or roles an administrator can be assigned that provides access to this endpoint. If multiple privileges are listed, only one needs to be assigned to gain access.


Tokens

This API requires token-based authentication. A token is automatically generated for administrators who sign in to the Enterprise Administrator API directory's HTML interface. Tokens generated in this way are stored for the entirety of the session.

Those accessing the API directory outside of the HTML interface will need to acquire a session token from the generateToken operation in the Enterprise Directory API. For security reasons, all POST requests made to the Enterprise Administrator API must include a token in the request body.


Learn how to generate a token

Description

The create operation is used to configure PersistentVolumeClaim (PVC) volume templates that are used to create on-demand volumes for each pod associated with a specific deployment.

Administrators will need to define the name of the volume and define the properties in the spec JSON object. For more information on the configurable properties and their accepted values, see the Spec properties section below.

To configure a GIS service to use a configure PVC template, the template's ID (which is returned by the Configurations resource) and purpose will need to be added to a deployment's JSON. For more information, see the Edit Deployment documentation.

Ephemeral volumes

At ArcGIS Enterprise 11.2 on Kubernetes, the create operation can be used to create PVC volume templates that will generate multiple ephemeral volumes on-demand for the pods of a deployment. Each pod is then able to use its own ephemeral volume, providing each pod with its own resources to draw from. Once the pods are deleted, and the ephemeral volumes are no longer needed, the volumes are also removed.

Ephemeral volumes are ideal for services, such as raster analytics, that do not need to have access to persisted data, but rather perform large analysis jobs that need to load data to a temporary space for processing.

Ephemeral volumes are not useful for cases where data needs to be read by all pods of a particular service or deployment. For those cases, administrators should consider creating persistent volumes.

Request parameters

ParameterDetails

volumeJson

The JSON object that specifies the volume's configuration information. The name property and spec JSON object will need to be updated. All other information should not be modified.

Example
Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
volumeJson={
  "name": "ephemeral-test",
  "type": "PVC_TEMPLATE",
  "spec": {
    "storageClassName": "managed-premium",
    "resources": {"requests": {"storage": "8Gi"}},
    "accessModes": ["ReadWriteOnce"],
    "volumeMode": "Filesystem",
    "volumeName": "example-name",
    "labels": {
      "label1": "value1",
      "label2": "value2"
    }
  }
}

f

The response format. The default format is html.

Values: html | json | pjson

Spec properties

PropertyDetails

accessModes

Specifies how the volume can be mounted. This property accepts the following values:

  • ReadWriteOnce: The volume can be mounted as read-write to one node. The volume is accessible to all pods scheduled to, and running on, that node.
  • ReadOnlyMany: The volume can be mounted as read-only to multiple nodes.
  • ReadWriteMany: The volume can be mounted as read-write to many nodes.

resources

Specifies the amount of storage the pods can request from the volume.

storageClassName

Reflects the name of a defined StorageClass that the PVC volume is connection to.

volumeMode

Specifies the volume type. This property accepts the following values:

  • Filesystem: The volume is mounted in the pod as a directory in the pod's file system.
  • Block: The volume is inserted as a raw data block into the pod.

volumeName

Specifies the name of the associated PV that the PVC will refer and bind to.

labels

Lists labels that match with the associated PV's labels.

Example usage

The following is a sample POST request for the create operation:

Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
POST /<context>/admin/system/volumes/configurations/create HTTP/1.1
Host: organization.example.com
Content-Type: application/x-www-form-urlencoded
Content-Length: []

volumeJson={
  "name": "ephemeral-test",
  "type": "PVC_TEMPLATE",
  "spec": {
    "storageClassName": "managed-premium",
    "resources": {"requests": {"storage": "8Gi"}},
    "accessModes": ["ReadWriteOnce"],
    "volumeMode": "Filesystem",
    "volumeName": "example-name",
    "labels": {
      "label1": "value1",
      "label2": "value2"
    }
  },
  "revision": 1
}&f=pjson&token= 08_b0sXFBn7UYUmkEwXNiaKY6frp0GZGyxY6JJdEGWenjP0u_rXvr6EGGCwEsiZbcn-Nbhk7B9itJSDGJAOeY1RYFDJp68R6WaU243A7HNMDFzbduAiuonrKStg9AxnhD8xU8gebu0PNJXMPTHO_dCby8v86fiTW_-xsR-yyWrspjdiu8q2rt4qPB0by1Q3jL6I6J540dFNDvP-yfvlrmLRUEvXRQfORXqxKbJrOazLOTnWD5ZWjJNDwQ800vkQK

JSON Response example

Use dark colors for code blocksCopy
1
{"status": "success"}

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.