Remote Mount Backends

A Remote Mount Backend is used to provide high availability for a Remote Server Mount Folder Behavior.

List Remote Mount Backends

SDK Method

\Files\Model\RemoteMountBackend::list;

Return Object

RemoteMountBackend[]

Authorization Requirement

Available to all authenticated keys or sessions.

Additional Arguments

Example Request

try {
  $remote_mount_backends = \Files\Model\RemoteMountBackend::list();
  foreach ($remote_mount_backends as $remote_mount_backend) {
    // Operate on $remote_mount_backend
  }
} catch (\Files\NotAuthenticated\InvalidUsernameOrPasswordException $e) {
  echo 'Authentication Error Occurred (' . get_class($e) . '): ', $e->getMessage(), "\n";
} catch (\Files\FilesException $e) {
  echo 'Unknown Error Occurred (' . get_class($e) . '): ', $e->getMessage(), "\n";
}

Show Remote Mount Backend

SDK Method

\Files\Model\RemoteMountBackend::find;

Return Object

RemoteMountBackend

Authorization Requirement

Available to all authenticated keys or sessions.

Method Arguments

ArgumentDescription
id
int64
Required
Remote Mount Backend ID.

Example Request

try {
  $remote_mount_backend = \Files\Model\RemoteMountBackend::find($id);
  // Operate on $remote_mount_backend
} catch (\Files\NotAuthenticated\InvalidUsernameOrPasswordException $e) {
  echo 'Authentication Error Occurred (' . get_class($e) . '): ', $e->getMessage(), "\n";
} catch (\Files\FilesException $e) {
  echo 'Unknown Error Occurred (' . get_class($e) . '): ', $e->getMessage(), "\n";
}

Create Remote Mount Backend

SDK Method

\Files\Model\RemoteMountBackend::create;

Return Object

RemoteMountBackend

Authorization Requirement

Available to all authenticated keys or sessions.

Method Arguments

ArgumentDefaultDescription
enabled
boolean
trueTrue if this backend is enabled.
fall
int64
1Number of consecutive failures before considering the backend unhealthy.
health_check_enabled
boolean
trueTrue if health checks are enabled for this backend.
health_check_type
string
"active"Type of health check to perform.
Possible values: active, passive
interval
int64
60Interval in seconds between health checks.
min_free_cpu
double
Minimum free CPU percentage required for this backend to be considered healthy.
min_free_mem
double
Minimum free memory percentage required for this backend to be considered healthy.
priority
int64
1Priority of this backend.
remote_path
string
""Path on the remote server to treat as the root of this mount.
rise
int64
1Number of consecutive successes before considering the backend healthy.
canary_file_path
string
Required
Path to the canary file used for health checks.
remote_server_mount_id
int64
Required
The mount ID of the Remote Server Mount that this backend is associated with.
remote_server_id
int64
Required
The remote server that this backend is associated with.

Example Request

try {
  $remote_mount_backend = \Files\Model\RemoteMountBackend::create([
    'canary_file_path' => "backend1.txt",
    'remote_server_mount_id' => 1,
    'remote_server_id' => 1
  ]);
  // Operate on $remote_mount_backend
} catch (\Files\NotAuthenticated\InvalidUsernameOrPasswordException $e) {
  echo 'Authentication Error Occurred (' . get_class($e) . '): ', $e->getMessage(), "\n";
} catch (\Files\FilesException $e) {
  echo 'Unknown Error Occurred (' . get_class($e) . '): ', $e->getMessage(), "\n";
}

Reset backend status to healthy

SDK Method

$remote_mount_backend->resetStatus;

Return Object

No return value.

Authorization Requirement

Available to all authenticated keys or sessions.

Example Request

try {
  // Find the remote_mount_backend object by its id.
  $remote_mount_backend = \Files\Model\RemoteMountBackend::find(id);
  $remote_mount_backend->resetStatus();
} catch (\Files\NotAuthenticated\InvalidUsernameOrPasswordException $e) {
  echo 'Authentication Error Occurred (' . get_class($e) . '): ', $e->getMessage(), "\n";
} catch (\Files\FilesException $e) {
  echo 'Unknown Error Occurred (' . get_class($e) . '): ', $e->getMessage(), "\n";
}

Update Remote Mount Backend

SDK Method

$remote_mount_backend->update;

Return Object

RemoteMountBackend

Authorization Requirement

Available to all authenticated keys or sessions.

Method Arguments

ArgumentDescription
enabled
boolean
True if this backend is enabled.
fall
int64
Number of consecutive failures before considering the backend unhealthy.
health_check_enabled
boolean
True if health checks are enabled for this backend.
health_check_type
string
Type of health check to perform.
Possible values: active, passive
interval
int64
Interval in seconds between health checks.
min_free_cpu
double
Minimum free CPU percentage required for this backend to be considered healthy.
min_free_mem
double
Minimum free memory percentage required for this backend to be considered healthy.
priority
int64
Priority of this backend.
remote_path
string
Path on the remote server to treat as the root of this mount.
rise
int64
Number of consecutive successes before considering the backend healthy.
canary_file_path
string
Path to the canary file used for health checks.
remote_server_id
int64
The remote server that this backend is associated with.

Example Request

try {
  // Find the remote_mount_backend object by its id.
  $remote_mount_backend = \Files\Model\RemoteMountBackend::find(id);
  $remote_mount_backend->update([
    'enabled' => true
  ]);
} catch (\Files\NotAuthenticated\InvalidUsernameOrPasswordException $e) {
  echo 'Authentication Error Occurred (' . get_class($e) . '): ', $e->getMessage(), "\n";
} catch (\Files\FilesException $e) {
  echo 'Unknown Error Occurred (' . get_class($e) . '): ', $e->getMessage(), "\n";
}

Delete Remote Mount Backend

SDK Method

$remote_mount_backend->delete;

Return Object

No return value.

Authorization Requirement

Available to all authenticated keys or sessions.

Example Request

try {
  // Find the remote_mount_backend object by its id.
  $remote_mount_backend = \Files\Model\RemoteMountBackend::find(id);
  $remote_mount_backend->delete();
} catch (\Files\NotAuthenticated\InvalidUsernameOrPasswordException $e) {
  echo 'Authentication Error Occurred (' . get_class($e) . '): ', $e->getMessage(), "\n";
} catch (\Files\FilesException $e) {
  echo 'Unknown Error Occurred (' . get_class($e) . '): ', $e->getMessage(), "\n";
}

The RemoteMountBackend Object

Some of the methods above return a RemoteMountBackend object. The attributes of this object are listed below.

AttributeDescription
canary_file_path
string
Path to the canary file used for health checks.
enabled
boolean
True if this backend is enabled.
fall
int64
Number of consecutive failures before considering the backend unhealthy.
health_check_enabled
boolean
True if health checks are enabled for this backend.
health_check_results
array(object)
Array of recent health check results.
health_check_type
string
Type of health check to perform.
Possible values: active, passive
id
int64
Unique identifier for this backend.
interval
int64
Interval in seconds between health checks.
min_free_cpu
decimal
Minimum free CPU percentage required for this backend to be considered healthy.
min_free_mem
decimal
Minimum free memory percentage required for this backend to be considered healthy.
priority
int64
Priority of this backend.
remote_path
string
Path on the remote server to treat as the root of this mount.
remote_server_id
int64
The remote server that this backend is associated with.
remote_server_mount_id
int64
The mount ID of the Remote Server Mount that this backend is associated with.
rise
int64
Number of consecutive successes before considering the backend healthy.
status
string
Status of this backend.
Possible values: healthy, degraded, failed, desynced
undergoing_maintenance
boolean
True if this backend is undergoing maintenance.