Class CfnNotebookInstance

java.lang.Object
software.amazon.jsii.JsiiObject
All Implemented Interfaces:
IConstruct, IDependable, IInspectable, software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct

@Generated(value="jsii-pacmak/1.84.0 (build 5404dcf)", date="2023-06-19T16:30:35.507Z") @Stability(Stable) public class CfnNotebookInstance extends CfnResource implements IInspectable
A CloudFormation AWS::SageMaker::NotebookInstance.

The AWS::SageMaker::NotebookInstance resource creates an Amazon SageMaker notebook instance. A notebook instance is a machine learning (ML) compute instance running on a Jupyter notebook. For more information, see Use Notebook Instances .

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.sagemaker.*;
 CfnNotebookInstance cfnNotebookInstance = CfnNotebookInstance.Builder.create(this, "MyCfnNotebookInstance")
         .instanceType("instanceType")
         .roleArn("roleArn")
         // the properties below are optional
         .acceleratorTypes(List.of("acceleratorTypes"))
         .additionalCodeRepositories(List.of("additionalCodeRepositories"))
         .defaultCodeRepository("defaultCodeRepository")
         .directInternetAccess("directInternetAccess")
         .instanceMetadataServiceConfiguration(InstanceMetadataServiceConfigurationProperty.builder()
                 .minimumInstanceMetadataServiceVersion("minimumInstanceMetadataServiceVersion")
                 .build())
         .kmsKeyId("kmsKeyId")
         .lifecycleConfigName("lifecycleConfigName")
         .notebookInstanceName("notebookInstanceName")
         .platformIdentifier("platformIdentifier")
         .rootAccess("rootAccess")
         .securityGroupIds(List.of("securityGroupIds"))
         .subnetId("subnetId")
         .tags(List.of(CfnTag.builder()
                 .key("key")
                 .value("value")
                 .build()))
         .volumeSizeInGb(123)
         .build();
 
  • Field Details

    • CFN_RESOURCE_TYPE_NAME

      @Stability(Stable) public static final String CFN_RESOURCE_TYPE_NAME
      The CloudFormation resource type name for this resource class.
  • Constructor Details

    • CfnNotebookInstance

      protected CfnNotebookInstance(software.amazon.jsii.JsiiObjectRef objRef)
    • CfnNotebookInstance

      protected CfnNotebookInstance(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • CfnNotebookInstance

      @Stability(Stable) public CfnNotebookInstance(@NotNull Construct scope, @NotNull String id, @NotNull CfnNotebookInstanceProps props)
      Create a new AWS::SageMaker::NotebookInstance.

      Parameters:
      scope -
      • scope in which this resource is defined.
      This parameter is required.
      id -
      • scoped id of the resource.
      This parameter is required.
      props -
      • resource properties.
      This parameter is required.
  • Method Details

    • inspect

      @Stability(Stable) public void inspect(@NotNull TreeInspector inspector)
      Examines the CloudFormation resource and discloses attributes.

      Specified by:
      inspect in interface IInspectable
      Parameters:
      inspector -
      • tree inspector to collect and process attributes.
      This parameter is required.
    • renderProperties

      @Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String,Object> props)
      Overrides:
      renderProperties in class CfnResource
      Parameters:
      props - This parameter is required.
    • getAttrNotebookInstanceName

      @Stability(Stable) @NotNull public String getAttrNotebookInstanceName()
      The name of the notebook instance, such as MyNotebookInstance .
    • getCfnProperties

      @Stability(Stable) @NotNull protected Map<String,Object> getCfnProperties()
      Overrides:
      getCfnProperties in class CfnResource
    • getTags

      @Stability(Stable) @NotNull public TagManager getTags()
      A list of key-value pairs to apply to this resource.

      For more information, see Resource Tag and Using Cost Allocation Tags .

      You can add tags later by using the CreateTags API.

    • getInstanceType

      @Stability(Stable) @NotNull public String getInstanceType()
      The type of ML compute instance to launch for the notebook instance.

      Expect some interruption of service if this parameter is changed as CloudFormation stops a notebook instance and starts it up again to update it.

    • setInstanceType

      @Stability(Stable) public void setInstanceType(@NotNull String value)
      The type of ML compute instance to launch for the notebook instance.

      Expect some interruption of service if this parameter is changed as CloudFormation stops a notebook instance and starts it up again to update it.

    • getRoleArn

      @Stability(Stable) @NotNull public String getRoleArn()
      When you send any requests to AWS resources from the notebook instance, SageMaker assumes this role to perform tasks on your behalf.

      You must grant this role necessary permissions so SageMaker can perform these tasks. The policy must allow the SageMaker service principal (sagemaker.amazonaws.com) permissions to assume this role. For more information, see SageMaker Roles .

      To be able to pass this role to SageMaker, the caller of this API must have the iam:PassRole permission.

    • setRoleArn

      @Stability(Stable) public void setRoleArn(@NotNull String value)
      When you send any requests to AWS resources from the notebook instance, SageMaker assumes this role to perform tasks on your behalf.

      You must grant this role necessary permissions so SageMaker can perform these tasks. The policy must allow the SageMaker service principal (sagemaker.amazonaws.com) permissions to assume this role. For more information, see SageMaker Roles .

      To be able to pass this role to SageMaker, the caller of this API must have the iam:PassRole permission.

    • getAcceleratorTypes

      @Stability(Stable) @Nullable public List<String> getAcceleratorTypes()
      A list of Amazon Elastic Inference (EI) instance types to associate with the notebook instance.

      Currently, only one instance type can be associated with a notebook instance. For more information, see Using Elastic Inference in Amazon SageMaker .

      Valid Values: ml.eia1.medium | ml.eia1.large | ml.eia1.xlarge | ml.eia2.medium | ml.eia2.large | ml.eia2.xlarge .

    • setAcceleratorTypes

      @Stability(Stable) public void setAcceleratorTypes(@Nullable List<String> value)
      A list of Amazon Elastic Inference (EI) instance types to associate with the notebook instance.

      Currently, only one instance type can be associated with a notebook instance. For more information, see Using Elastic Inference in Amazon SageMaker .

      Valid Values: ml.eia1.medium | ml.eia1.large | ml.eia1.xlarge | ml.eia2.medium | ml.eia2.large | ml.eia2.xlarge .

    • getAdditionalCodeRepositories

      @Stability(Stable) @Nullable public List<String> getAdditionalCodeRepositories()
      An array of up to three Git repositories associated with the notebook instance.

      These can be either the names of Git repositories stored as resources in your account, or the URL of Git repositories in AWS CodeCommit or in any other Git repository. These repositories are cloned at the same level as the default repository of your notebook instance. For more information, see Associating Git Repositories with SageMaker Notebook Instances .

    • setAdditionalCodeRepositories

      @Stability(Stable) public void setAdditionalCodeRepositories(@Nullable List<String> value)
      An array of up to three Git repositories associated with the notebook instance.

      These can be either the names of Git repositories stored as resources in your account, or the URL of Git repositories in AWS CodeCommit or in any other Git repository. These repositories are cloned at the same level as the default repository of your notebook instance. For more information, see Associating Git Repositories with SageMaker Notebook Instances .

    • getDefaultCodeRepository

      @Stability(Stable) @Nullable public String getDefaultCodeRepository()
      The Git repository associated with the notebook instance as its default code repository.

      This can be either the name of a Git repository stored as a resource in your account, or the URL of a Git repository in AWS CodeCommit or in any other Git repository. When you open a notebook instance, it opens in the directory that contains this repository. For more information, see Associating Git Repositories with SageMaker Notebook Instances .

    • setDefaultCodeRepository

      @Stability(Stable) public void setDefaultCodeRepository(@Nullable String value)
      The Git repository associated with the notebook instance as its default code repository.

      This can be either the name of a Git repository stored as a resource in your account, or the URL of a Git repository in AWS CodeCommit or in any other Git repository. When you open a notebook instance, it opens in the directory that contains this repository. For more information, see Associating Git Repositories with SageMaker Notebook Instances .

    • getDirectInternetAccess

      @Stability(Stable) @Nullable public String getDirectInternetAccess()
      Sets whether SageMaker provides internet access to the notebook instance.

      If you set this to Disabled this notebook instance is able to access resources only in your VPC, and is not be able to connect to SageMaker training and endpoint services unless you configure a NAT Gateway in your VPC.

      For more information, see Notebook Instances Are Internet-Enabled by Default . You can set the value of this parameter to Disabled only if you set a value for the SubnetId parameter.

    • setDirectInternetAccess

      @Stability(Stable) public void setDirectInternetAccess(@Nullable String value)
      Sets whether SageMaker provides internet access to the notebook instance.

      If you set this to Disabled this notebook instance is able to access resources only in your VPC, and is not be able to connect to SageMaker training and endpoint services unless you configure a NAT Gateway in your VPC.

      For more information, see Notebook Instances Are Internet-Enabled by Default . You can set the value of this parameter to Disabled only if you set a value for the SubnetId parameter.

    • getInstanceMetadataServiceConfiguration

      @Stability(Stable) @Nullable public Object getInstanceMetadataServiceConfiguration()
      Information on the IMDS configuration of the notebook instance.
    • setInstanceMetadataServiceConfiguration

      @Stability(Stable) public void setInstanceMetadataServiceConfiguration(@Nullable IResolvable value)
      Information on the IMDS configuration of the notebook instance.
    • setInstanceMetadataServiceConfiguration

      @Stability(Stable) public void setInstanceMetadataServiceConfiguration(@Nullable CfnNotebookInstance.InstanceMetadataServiceConfigurationProperty value)
      Information on the IMDS configuration of the notebook instance.
    • getKmsKeyId

      @Stability(Stable) @Nullable public String getKmsKeyId()
      The Amazon Resource Name (ARN) of a AWS Key Management Service key that SageMaker uses to encrypt data on the storage volume attached to your notebook instance.

      The KMS key you provide must be enabled. For information, see Enabling and Disabling Keys in the AWS Key Management Service Developer Guide .

    • setKmsKeyId

      @Stability(Stable) public void setKmsKeyId(@Nullable String value)
      The Amazon Resource Name (ARN) of a AWS Key Management Service key that SageMaker uses to encrypt data on the storage volume attached to your notebook instance.

      The KMS key you provide must be enabled. For information, see Enabling and Disabling Keys in the AWS Key Management Service Developer Guide .

    • getLifecycleConfigName

      @Stability(Stable) @Nullable public String getLifecycleConfigName()
      The name of a lifecycle configuration to associate with the notebook instance.

      For information about lifecycle configurations, see Customize a Notebook Instance in the Amazon SageMaker Developer Guide .

    • setLifecycleConfigName

      @Stability(Stable) public void setLifecycleConfigName(@Nullable String value)
      The name of a lifecycle configuration to associate with the notebook instance.

      For information about lifecycle configurations, see Customize a Notebook Instance in the Amazon SageMaker Developer Guide .

    • getNotebookInstanceName

      @Stability(Stable) @Nullable public String getNotebookInstanceName()
      The name of the new notebook instance.
    • setNotebookInstanceName

      @Stability(Stable) public void setNotebookInstanceName(@Nullable String value)
      The name of the new notebook instance.
    • getPlatformIdentifier

      @Stability(Stable) @Nullable public String getPlatformIdentifier()
      The platform identifier of the notebook instance runtime environment.
    • setPlatformIdentifier

      @Stability(Stable) public void setPlatformIdentifier(@Nullable String value)
      The platform identifier of the notebook instance runtime environment.
    • getRootAccess

      @Stability(Stable) @Nullable public String getRootAccess()
      Whether root access is enabled or disabled for users of the notebook instance. The default value is Enabled .

      Lifecycle configurations need root access to be able to set up a notebook instance. Because of this, lifecycle configurations associated with a notebook instance always run with root access even if you disable root access for users.

    • setRootAccess

      @Stability(Stable) public void setRootAccess(@Nullable String value)
      Whether root access is enabled or disabled for users of the notebook instance. The default value is Enabled .

      Lifecycle configurations need root access to be able to set up a notebook instance. Because of this, lifecycle configurations associated with a notebook instance always run with root access even if you disable root access for users.

    • getSecurityGroupIds

      @Stability(Stable) @Nullable public List<String> getSecurityGroupIds()
      The VPC security group IDs, in the form sg-xxxxxxxx.

      The security groups must be for the same VPC as specified in the subnet.

    • setSecurityGroupIds

      @Stability(Stable) public void setSecurityGroupIds(@Nullable List<String> value)
      The VPC security group IDs, in the form sg-xxxxxxxx.

      The security groups must be for the same VPC as specified in the subnet.

    • getSubnetId

      @Stability(Stable) @Nullable public String getSubnetId()
      The ID of the subnet in a VPC to which you would like to have a connectivity from your ML compute instance.
    • setSubnetId

      @Stability(Stable) public void setSubnetId(@Nullable String value)
      The ID of the subnet in a VPC to which you would like to have a connectivity from your ML compute instance.
    • getVolumeSizeInGb

      @Stability(Stable) @Nullable public Number getVolumeSizeInGb()
      The size, in GB, of the ML storage volume to attach to the notebook instance.

      The default value is 5 GB.

      Expect some interruption of service if this parameter is changed as CloudFormation stops a notebook instance and starts it up again to update it.

    • setVolumeSizeInGb

      @Stability(Stable) public void setVolumeSizeInGb(@Nullable Number value)
      The size, in GB, of the ML storage volume to attach to the notebook instance.

      The default value is 5 GB.

      Expect some interruption of service if this parameter is changed as CloudFormation stops a notebook instance and starts it up again to update it.