Interface ICfnDomainProps
Properties for defining a CfnDomain
.
Namespace: Amazon.CDK.AWS.Sagemaker
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public interface ICfnDomainProps
Syntax (vb)
Public Interface ICfnDomainProps
Remarks
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-domain.html
ExampleMetadata: fixture=_generated
Examples
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.Sagemaker;
var cfnDomainProps = new CfnDomainProps {
AuthMode = "authMode",
DefaultUserSettings = new UserSettingsProperty {
ExecutionRole = "executionRole",
// the properties below are optional
CodeEditorAppSettings = new CodeEditorAppSettingsProperty {
CustomImages = new [] { new CustomImageProperty {
AppImageConfigName = "appImageConfigName",
ImageName = "imageName",
// the properties below are optional
ImageVersionNumber = 123
} },
DefaultResourceSpec = new ResourceSpecProperty {
InstanceType = "instanceType",
LifecycleConfigArn = "lifecycleConfigArn",
SageMakerImageArn = "sageMakerImageArn",
SageMakerImageVersionArn = "sageMakerImageVersionArn"
},
LifecycleConfigArns = new [] { "lifecycleConfigArns" }
},
CustomFileSystemConfigs = new [] { new CustomFileSystemConfigProperty {
EfsFileSystemConfig = new EFSFileSystemConfigProperty {
FileSystemId = "fileSystemId",
// the properties below are optional
FileSystemPath = "fileSystemPath"
}
} },
CustomPosixUserConfig = new CustomPosixUserConfigProperty {
Gid = 123,
Uid = 123
},
DefaultLandingUri = "defaultLandingUri",
JupyterLabAppSettings = new JupyterLabAppSettingsProperty {
CodeRepositories = new [] { new CodeRepositoryProperty {
RepositoryUrl = "repositoryUrl"
} },
CustomImages = new [] { new CustomImageProperty {
AppImageConfigName = "appImageConfigName",
ImageName = "imageName",
// the properties below are optional
ImageVersionNumber = 123
} },
DefaultResourceSpec = new ResourceSpecProperty {
InstanceType = "instanceType",
LifecycleConfigArn = "lifecycleConfigArn",
SageMakerImageArn = "sageMakerImageArn",
SageMakerImageVersionArn = "sageMakerImageVersionArn"
},
LifecycleConfigArns = new [] { "lifecycleConfigArns" }
},
JupyterServerAppSettings = new JupyterServerAppSettingsProperty {
DefaultResourceSpec = new ResourceSpecProperty {
InstanceType = "instanceType",
LifecycleConfigArn = "lifecycleConfigArn",
SageMakerImageArn = "sageMakerImageArn",
SageMakerImageVersionArn = "sageMakerImageVersionArn"
}
},
KernelGatewayAppSettings = new KernelGatewayAppSettingsProperty {
CustomImages = new [] { new CustomImageProperty {
AppImageConfigName = "appImageConfigName",
ImageName = "imageName",
// the properties below are optional
ImageVersionNumber = 123
} },
DefaultResourceSpec = new ResourceSpecProperty {
InstanceType = "instanceType",
LifecycleConfigArn = "lifecycleConfigArn",
SageMakerImageArn = "sageMakerImageArn",
SageMakerImageVersionArn = "sageMakerImageVersionArn"
}
},
RSessionAppSettings = new RSessionAppSettingsProperty {
CustomImages = new [] { new CustomImageProperty {
AppImageConfigName = "appImageConfigName",
ImageName = "imageName",
// the properties below are optional
ImageVersionNumber = 123
} },
DefaultResourceSpec = new ResourceSpecProperty {
InstanceType = "instanceType",
LifecycleConfigArn = "lifecycleConfigArn",
SageMakerImageArn = "sageMakerImageArn",
SageMakerImageVersionArn = "sageMakerImageVersionArn"
}
},
RStudioServerProAppSettings = new RStudioServerProAppSettingsProperty {
AccessStatus = "accessStatus",
UserGroup = "userGroup"
},
SecurityGroups = new [] { "securityGroups" },
SharingSettings = new SharingSettingsProperty {
NotebookOutputOption = "notebookOutputOption",
S3KmsKeyId = "s3KmsKeyId",
S3OutputPath = "s3OutputPath"
},
SpaceStorageSettings = new DefaultSpaceStorageSettingsProperty {
DefaultEbsStorageSettings = new DefaultEbsStorageSettingsProperty {
DefaultEbsVolumeSizeInGb = 123,
MaximumEbsVolumeSizeInGb = 123
}
},
StudioWebPortal = "studioWebPortal"
},
DomainName = "domainName",
SubnetIds = new [] { "subnetIds" },
VpcId = "vpcId",
// the properties below are optional
AppNetworkAccessType = "appNetworkAccessType",
AppSecurityGroupManagement = "appSecurityGroupManagement",
DefaultSpaceSettings = new DefaultSpaceSettingsProperty {
ExecutionRole = "executionRole",
// the properties below are optional
JupyterServerAppSettings = new JupyterServerAppSettingsProperty {
DefaultResourceSpec = new ResourceSpecProperty {
InstanceType = "instanceType",
LifecycleConfigArn = "lifecycleConfigArn",
SageMakerImageArn = "sageMakerImageArn",
SageMakerImageVersionArn = "sageMakerImageVersionArn"
}
},
KernelGatewayAppSettings = new KernelGatewayAppSettingsProperty {
CustomImages = new [] { new CustomImageProperty {
AppImageConfigName = "appImageConfigName",
ImageName = "imageName",
// the properties below are optional
ImageVersionNumber = 123
} },
DefaultResourceSpec = new ResourceSpecProperty {
InstanceType = "instanceType",
LifecycleConfigArn = "lifecycleConfigArn",
SageMakerImageArn = "sageMakerImageArn",
SageMakerImageVersionArn = "sageMakerImageVersionArn"
}
},
SecurityGroups = new [] { "securityGroups" }
},
DomainSettings = new DomainSettingsProperty {
DockerSettings = new DockerSettingsProperty {
EnableDockerAccess = "enableDockerAccess",
VpcOnlyTrustedAccounts = new [] { "vpcOnlyTrustedAccounts" }
},
RStudioServerProDomainSettings = new RStudioServerProDomainSettingsProperty {
DomainExecutionRoleArn = "domainExecutionRoleArn",
// the properties below are optional
DefaultResourceSpec = new ResourceSpecProperty {
InstanceType = "instanceType",
LifecycleConfigArn = "lifecycleConfigArn",
SageMakerImageArn = "sageMakerImageArn",
SageMakerImageVersionArn = "sageMakerImageVersionArn"
},
RStudioConnectUrl = "rStudioConnectUrl",
RStudioPackageManagerUrl = "rStudioPackageManagerUrl"
},
SecurityGroupIds = new [] { "securityGroupIds" }
},
KmsKeyId = "kmsKeyId",
Tags = new [] { new CfnTag {
Key = "key",
Value = "value"
} }
};
Synopsis
Properties
AppNetworkAccessType | Specifies the VPC used for non-EFS traffic. The default value is |
AppSecurityGroupManagement | The entity that creates and manages the required security groups for inter-app communication in |
AuthMode | The mode of authentication that members use to access the Domain. |
DefaultSpaceSettings | A collection of settings that apply to spaces created in the domain. |
DefaultUserSettings | The default user settings. |
DomainName | The domain name. |
DomainSettings | A collection of settings that apply to the |
KmsKeyId | SageMaker uses AWS KMS to encrypt the EFS volume attached to the Domain with an AWS managed customer master key (CMK) by default. |
SubnetIds | The VPC subnets that Studio uses for communication. |
Tags | Tags to associated with the Domain. |
VpcId | The ID of the Amazon Virtual Private Cloud (Amazon VPC) that Studio uses for communication. |
Properties
AppNetworkAccessType
Specifies the VPC used for non-EFS traffic. The default value is PublicInternetOnly
.
virtual string AppNetworkAccessType { get; }
Property Value
System.String
Remarks
Valid Values : PublicInternetOnly | VpcOnly
AppSecurityGroupManagement
The entity that creates and manages the required security groups for inter-app communication in VpcOnly
mode.
virtual string AppSecurityGroupManagement { get; }
Property Value
System.String
Remarks
Required when CreateDomain.AppNetworkAccessType
is VpcOnly
and DomainSettings.RStudioServerProDomainSettings.DomainExecutionRoleArn
is provided. If setting up the domain for use with RStudio, this value must be set to Service
.
Allowed Values : Service
| Customer
AuthMode
The mode of authentication that members use to access the Domain.
string AuthMode { get; }
Property Value
System.String
Remarks
DefaultSpaceSettings
A collection of settings that apply to spaces created in the domain.
virtual object DefaultSpaceSettings { get; }
Property Value
System.Object
Remarks
DefaultUserSettings
The default user settings.
object DefaultUserSettings { get; }
Property Value
System.Object
Remarks
DomainName
The domain name.
string DomainName { get; }
Property Value
System.String
Remarks
DomainSettings
A collection of settings that apply to the SageMaker Domain
.
virtual object DomainSettings { get; }
Property Value
System.Object
Remarks
These settings are specified through the CreateDomain
API call.
KmsKeyId
SageMaker uses AWS KMS to encrypt the EFS volume attached to the Domain with an AWS managed customer master key (CMK) by default.
virtual string KmsKeyId { get; }
Property Value
System.String
Remarks
For more control, specify a customer managed CMK.
Length Constraints : Maximum length of 2048.
Pattern : .*
SubnetIds
The VPC subnets that Studio uses for communication.
string[] SubnetIds { get; }
Property Value
System.String[]
Remarks
Length Constraints : Maximum length of 32.
Array members : Minimum number of 1 item. Maximum number of 16 items.
Pattern : [-0-9a-zA-Z]+
Tags
Tags to associated with the Domain.
virtual ICfnTag[] Tags { get; }
Property Value
ICfnTag[]
Remarks
Each tag consists of a key and an optional value. Tag keys must be unique per resource. Tags are searchable using the Search API.
Tags that you specify for the Domain are also added to all apps that are launched in the Domain.
Array members : Minimum number of 0 items. Maximum number of 50 items.
VpcId
The ID of the Amazon Virtual Private Cloud (Amazon VPC) that Studio uses for communication.
string VpcId { get; }
Property Value
System.String
Remarks
Length Constraints : Maximum length of 32.
Pattern : [-0-9a-zA-Z]+