
NetApp ONTAP CreateRelationship
CertifiedEnterprise EditionCreate an ONTAP SnapMirror relationship
NetApp ONTAP CreateRelationship
Create an ONTAP SnapMirror relationship
Creates a SnapMirror replication relationship between a source and destination volume via
POST /api/snapmirror/relationships. Both source and destination are identified by SVM name and volume name.
ONTAP may return HTTP 202 (async job); this task polls the job to completion before returning.
type: io.kestra.plugin.ee.netapp.ontap.replication.CreateRelationshipExamples
Create a SnapMirror relationship between two volumes.
id: ontap_create_snapmirror
namespace: company.team
tasks:
- id: create_relationship
type: io.kestra.plugin.ee.netapp.ontap.replication.CreateRelationship
host: "{{ secret('ONTAP_HOST') }}"
username: admin
password: "{{ secret('ONTAP_PASSWORD') }}"
sourceSvmName: svm_source
sourceVolumeName: vol_primary
destinationSvmName: svm_dest
destinationVolumeName: vol_replica
policyName: MirrorAllSnapshots
Properties
destinationSvmName *Requiredstring
Destination SVM name
Name of the destination SVM (for example: svm_dest).
destinationVolumeName *Requiredstring
Destination volume name
Name of the destination volume (for example: vol_replica).
host *Requiredstring
ONTAP cluster management IP or hostname
Hostname or IP address of the ONTAP cluster management interface (for example: ontap.example.com or 192.168.1.10).
The REST API is reached at https://{host}/api/.
password *Requiredstring
ONTAP password
Password used for HTTP Basic authentication.
Store this value as a Kestra secret and reference it via {{ secret('ONTAP_PASSWORD') }}.
sourceSvmName *Requiredstring
Source SVM name
Name of the source SVM (for example: svm_source).
sourceVolumeName *Requiredstring
Source volume name
Name of the source volume (for example: vol_primary).
username *Requiredstring
ONTAP username
Username used for HTTP Basic authentication (for example: admin).
options Non-dynamic
HTTP client configuration
Optional HTTP client overrides such as timeouts, TLS settings, and proxy. For example:
options:
timeout:
connectTimeout: PT10S
readIdleTimeout: PT30S
ssl:
insecureTrustAllCertificates: true # accept self-signed cluster certs (insecure — lab use only)
io.kestra.core.http.client.configurations.HttpConfiguration
falseIf true, allow a failed response code (response code >= 400)
List of response code allowed for this request
The authentication to use.
io.kestra.core.http.client.configurations.BasicAuthConfiguration
The password for HTTP basic authentication.
The username for HTTP basic authentication.
io.kestra.core.http.client.configurations.BearerAuthConfiguration
The token for bearer token authentication.
io.kestra.core.http.client.configurations.DigestAuthConfiguration
The password for HTTP Digest authentication.
The username for HTTP Digest authentication.
The password for HTTP basic authentication. Deprecated, use auth property with a BasicAuthConfiguration instance instead.
The username for HTTP basic authentication. Deprecated, use auth property with a BasicAuthConfiguration instance instead.
durationThe time allowed to establish a connection to the server before failing.
durationThe time an idle connection can remain in the client's connection pool before being closed.
UTF-8The default charset for the request.
java.nio.charset.Charset
trueWhether to enable TCP Keep-Alive extended socket options (TCP_KEEPIDLE, TCP_KEEPINTERVAL, TCP_KEEPCOUNT).
Set to false when running on Windows workers, as these extended socket options are not supported by the Windows JDK and will cause connection failures.
trueWhether redirects should be followed automatically.
ALLTRACEDEBUGINFOWARNERROROFFNOT_SPECIFIEDThe log level for the HTTP client.
REQUEST_HEADERSREQUEST_BODYRESPONSE_HEADERSRESPONSE_BODYThe enabled log.
The maximum content length of the response.
The proxy configuration.
io.kestra.core.http.client.configurations.ProxyConfiguration
The address of the proxy server.
The password for proxy authentication.
The port of the proxy server.
DIRECTDIRECTHTTPSOCKSThe type of proxy to use.
The username for proxy authentication.
The address of the proxy server.
The password for proxy authentication.
The port of the proxy server.
DIRECTHTTPSOCKSThe type of proxy to use.
The username for proxy authentication.
durationThe time allowed for a read connection to remain idle before closing it.
durationThe maximum time allowed for reading data from the server before failing.
The SSL request options
io.kestra.core.http.client.configurations.SslOptions
Whether to disable checking of the remote SSL certificate.
Only applies if no trust store is configured. Note: This makes the SSL connection insecure and should only be used for testing. If you are using a self-signed certificate, set up a trust store instead.
The timeout configuration.
io.kestra.core.http.client.configurations.TimeoutConfiguration
The time allowed to establish a connection to the server before failing.
PT5MThe time allowed for a read connection to remain idle before closing it.
pluginDefaultsRef Non-dynamicstring
Reference (ref) of the pluginDefaults to apply to this task.
policyName string
MirrorAllSnapshotsSnapMirror policy name
Name of the SnapMirror policy to use (for example: MirrorAllSnapshots, MirrorLatest). Defaults to MirrorAllSnapshots.
port integerstring
443ONTAP port
Port for the ONTAP REST API. Defaults to 443.
scheme string
httpsHTTP scheme
Protocol scheme used to reach the ONTAP REST API. Defaults to https.
Set to http only for testing against local stubs; production clusters always use https.
waitTimeout string
PT5MAsync job wait timeout
Maximum time to wait for ONTAP asynchronous jobs (those that return HTTP 202 + a job UUID) to reach a terminal
state. Defaults to PT5M (5 minutes). The job is polled every 2 seconds within this window.
Outputs
destinationPath string
Destination path
Destination path in svm: volume format.
relationshipUuid string
Relationship UUID
UUID assigned by ONTAP to the SnapMirror relationship.
May be null when the creation completed via an asynchronous job (HTTP 202) and ONTAP did not
return the record UUID in the job response.
sourcePath string
Source path
Source path in svm: volume format.