Documentation
¶
Index ¶
- func CfnFileSystem_CFN_RESOURCE_TYPE_NAME() *string
- func CfnFileSystem_IsCfnElement(x interface{}) *bool
- func CfnFileSystem_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnFileSystem_IsConstruct(x interface{}) *bool
- func FileSystemBase_IsConstruct(x interface{}) *bool
- func FileSystemBase_IsResource(construct awscdk.IConstruct) *bool
- func LustreFileSystem_IsConstruct(x interface{}) *bool
- func LustreFileSystem_IsResource(construct awscdk.IConstruct) *bool
- func NewCfnFileSystem_Override(c CfnFileSystem, scope awscdk.Construct, id *string, props *CfnFileSystemProps)
- func NewFileSystemBase_Override(f FileSystemBase, scope constructs.Construct, id *string, ...)
- func NewLustreFileSystem_Override(l LustreFileSystem, scope constructs.Construct, id *string, ...)
- func NewLustreMaintenanceTime_Override(l LustreMaintenanceTime, props *LustreMaintenanceTimeProps)
- type CfnFileSystem
- type CfnFileSystemProps
- type CfnFileSystem_LustreConfigurationProperty
- type CfnFileSystem_SelfManagedActiveDirectoryConfigurationProperty
- type CfnFileSystem_WindowsConfigurationProperty
- type FileSystemAttributes
- type FileSystemBase
- type FileSystemProps
- type IFileSystem
- type LustreConfiguration
- type LustreDeploymentType
- type LustreFileSystem
- type LustreFileSystemProps
- type LustreMaintenanceTime
- type LustreMaintenanceTimeProps
- type Weekday
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CfnFileSystem_CFN_RESOURCE_TYPE_NAME ¶
func CfnFileSystem_CFN_RESOURCE_TYPE_NAME() *string
func CfnFileSystem_IsCfnElement ¶
func CfnFileSystem_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnFileSystem_IsCfnResource ¶
func CfnFileSystem_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnFileSystem_IsConstruct ¶
func CfnFileSystem_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func FileSystemBase_IsConstruct ¶
func FileSystemBase_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func FileSystemBase_IsResource ¶
func FileSystemBase_IsResource(construct awscdk.IConstruct) *bool
Check whether the given construct is a Resource. Experimental.
func LustreFileSystem_IsConstruct ¶
func LustreFileSystem_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func LustreFileSystem_IsResource ¶
func LustreFileSystem_IsResource(construct awscdk.IConstruct) *bool
Check whether the given construct is a Resource. Experimental.
func NewCfnFileSystem_Override ¶
func NewCfnFileSystem_Override(c CfnFileSystem, scope awscdk.Construct, id *string, props *CfnFileSystemProps)
Create a new `AWS::FSx::FileSystem`.
func NewFileSystemBase_Override ¶
func NewFileSystemBase_Override(f FileSystemBase, scope constructs.Construct, id *string, props *awscdk.ResourceProps)
Experimental.
func NewLustreFileSystem_Override ¶
func NewLustreFileSystem_Override(l LustreFileSystem, scope constructs.Construct, id *string, props *LustreFileSystemProps)
Experimental.
func NewLustreMaintenanceTime_Override ¶
func NewLustreMaintenanceTime_Override(l LustreMaintenanceTime, props *LustreMaintenanceTimeProps)
Experimental.
Types ¶
type CfnFileSystem ¶
type CfnFileSystem interface {
awscdk.CfnResource
awscdk.IInspectable
AttrLustreMountName() *string
BackupId() *string
SetBackupId(val *string)
CfnOptions() awscdk.ICfnResourceOptions
CfnProperties() *map[string]interface{}
CfnResourceType() *string
CreationStack() *[]*string
FileSystemType() *string
SetFileSystemType(val *string)
KmsKeyId() *string
SetKmsKeyId(val *string)
LogicalId() *string
LustreConfiguration() interface{}
SetLustreConfiguration(val interface{})
Node() awscdk.ConstructNode
Ref() *string
SecurityGroupIds() *[]*string
SetSecurityGroupIds(val *[]*string)
Stack() awscdk.Stack
StorageCapacity() *float64
SetStorageCapacity(val *float64)
StorageType() *string
SetStorageType(val *string)
SubnetIds() *[]*string
SetSubnetIds(val *[]*string)
Tags() awscdk.TagManager
UpdatedProperites() *map[string]interface{}
WindowsConfiguration() interface{}
SetWindowsConfiguration(val interface{})
AddDeletionOverride(path *string)
AddDependsOn(target awscdk.CfnResource)
AddMetadata(key *string, value interface{})
AddOverride(path *string, value interface{})
AddPropertyDeletionOverride(propertyPath *string)
AddPropertyOverride(propertyPath *string, value interface{})
ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
GetAtt(attributeName *string) awscdk.Reference
GetMetadata(key *string) interface{}
Inspect(inspector awscdk.TreeInspector)
OnPrepare()
OnSynthesize(session constructs.ISynthesisSession)
OnValidate() *[]*string
OverrideLogicalId(newLogicalId *string)
Prepare()
RenderProperties(props *map[string]interface{}) *map[string]interface{}
ShouldSynthesize() *bool
Synthesize(session awscdk.ISynthesisSession)
ToString() *string
Validate() *[]*string
ValidateProperties(_properties interface{})
}
A CloudFormation `AWS::FSx::FileSystem`.
func NewCfnFileSystem ¶
func NewCfnFileSystem(scope awscdk.Construct, id *string, props *CfnFileSystemProps) CfnFileSystem
Create a new `AWS::FSx::FileSystem`.
type CfnFileSystemProps ¶
type CfnFileSystemProps struct {
// `AWS::FSx::FileSystem.FileSystemType`.
FileSystemType *string `json:"fileSystemType"`
// `AWS::FSx::FileSystem.SubnetIds`.
SubnetIds *[]*string `json:"subnetIds"`
// `AWS::FSx::FileSystem.BackupId`.
BackupId *string `json:"backupId"`
// `AWS::FSx::FileSystem.KmsKeyId`.
KmsKeyId *string `json:"kmsKeyId"`
// `AWS::FSx::FileSystem.LustreConfiguration`.
LustreConfiguration interface{} `json:"lustreConfiguration"`
// `AWS::FSx::FileSystem.SecurityGroupIds`.
SecurityGroupIds *[]*string `json:"securityGroupIds"`
// `AWS::FSx::FileSystem.StorageCapacity`.
StorageCapacity *float64 `json:"storageCapacity"`
// `AWS::FSx::FileSystem.StorageType`.
StorageType *string `json:"storageType"`
// `AWS::FSx::FileSystem.Tags`.
Tags *[]*awscdk.CfnTag `json:"tags"`
// `AWS::FSx::FileSystem.WindowsConfiguration`.
WindowsConfiguration interface{} `json:"windowsConfiguration"`
}
Properties for defining a `AWS::FSx::FileSystem`.
type CfnFileSystem_LustreConfigurationProperty ¶
type CfnFileSystem_LustreConfigurationProperty struct {
// `CfnFileSystem.LustreConfigurationProperty.AutoImportPolicy`.
AutoImportPolicy *string `json:"autoImportPolicy"`
// `CfnFileSystem.LustreConfigurationProperty.AutomaticBackupRetentionDays`.
AutomaticBackupRetentionDays *float64 `json:"automaticBackupRetentionDays"`
// `CfnFileSystem.LustreConfigurationProperty.CopyTagsToBackups`.
CopyTagsToBackups interface{} `json:"copyTagsToBackups"`
// `CfnFileSystem.LustreConfigurationProperty.DailyAutomaticBackupStartTime`.
DailyAutomaticBackupStartTime *string `json:"dailyAutomaticBackupStartTime"`
// `CfnFileSystem.LustreConfigurationProperty.DeploymentType`.
DeploymentType *string `json:"deploymentType"`
// `CfnFileSystem.LustreConfigurationProperty.DriveCacheType`.
DriveCacheType *string `json:"driveCacheType"`
// `CfnFileSystem.LustreConfigurationProperty.ExportPath`.
ExportPath *string `json:"exportPath"`
// `CfnFileSystem.LustreConfigurationProperty.ImportedFileChunkSize`.
ImportedFileChunkSize *float64 `json:"importedFileChunkSize"`
// `CfnFileSystem.LustreConfigurationProperty.ImportPath`.
ImportPath *string `json:"importPath"`
// `CfnFileSystem.LustreConfigurationProperty.PerUnitStorageThroughput`.
PerUnitStorageThroughput *float64 `json:"perUnitStorageThroughput"`
// `CfnFileSystem.LustreConfigurationProperty.WeeklyMaintenanceStartTime`.
WeeklyMaintenanceStartTime *string `json:"weeklyMaintenanceStartTime"`
}
type CfnFileSystem_SelfManagedActiveDirectoryConfigurationProperty ¶
type CfnFileSystem_SelfManagedActiveDirectoryConfigurationProperty struct {
// `CfnFileSystem.SelfManagedActiveDirectoryConfigurationProperty.DnsIps`.
DnsIps *[]*string `json:"dnsIps"`
// `CfnFileSystem.SelfManagedActiveDirectoryConfigurationProperty.DomainName`.
DomainName *string `json:"domainName"`
// `CfnFileSystem.SelfManagedActiveDirectoryConfigurationProperty.FileSystemAdministratorsGroup`.
FileSystemAdministratorsGroup *string `json:"fileSystemAdministratorsGroup"`
// `CfnFileSystem.SelfManagedActiveDirectoryConfigurationProperty.OrganizationalUnitDistinguishedName`.
OrganizationalUnitDistinguishedName *string `json:"organizationalUnitDistinguishedName"`
// `CfnFileSystem.SelfManagedActiveDirectoryConfigurationProperty.Password`.
Password *string `json:"password"`
// `CfnFileSystem.SelfManagedActiveDirectoryConfigurationProperty.UserName`.
UserName *string `json:"userName"`
}
type CfnFileSystem_WindowsConfigurationProperty ¶
type CfnFileSystem_WindowsConfigurationProperty struct {
// `CfnFileSystem.WindowsConfigurationProperty.ThroughputCapacity`.
ThroughputCapacity *float64 `json:"throughputCapacity"`
// `CfnFileSystem.WindowsConfigurationProperty.ActiveDirectoryId`.
ActiveDirectoryId *string `json:"activeDirectoryId"`
// `CfnFileSystem.WindowsConfigurationProperty.Aliases`.
Aliases *[]*string `json:"aliases"`
// `CfnFileSystem.WindowsConfigurationProperty.AutomaticBackupRetentionDays`.
AutomaticBackupRetentionDays *float64 `json:"automaticBackupRetentionDays"`
// `CfnFileSystem.WindowsConfigurationProperty.CopyTagsToBackups`.
CopyTagsToBackups interface{} `json:"copyTagsToBackups"`
// `CfnFileSystem.WindowsConfigurationProperty.DailyAutomaticBackupStartTime`.
DailyAutomaticBackupStartTime *string `json:"dailyAutomaticBackupStartTime"`
// `CfnFileSystem.WindowsConfigurationProperty.DeploymentType`.
DeploymentType *string `json:"deploymentType"`
// `CfnFileSystem.WindowsConfigurationProperty.PreferredSubnetId`.
PreferredSubnetId *string `json:"preferredSubnetId"`
// `CfnFileSystem.WindowsConfigurationProperty.SelfManagedActiveDirectoryConfiguration`.
SelfManagedActiveDirectoryConfiguration interface{} `json:"selfManagedActiveDirectoryConfiguration"`
// `CfnFileSystem.WindowsConfigurationProperty.WeeklyMaintenanceStartTime`.
WeeklyMaintenanceStartTime *string `json:"weeklyMaintenanceStartTime"`
}
type FileSystemAttributes ¶
type FileSystemAttributes struct {
// The DNS name assigned to this file system.
// Experimental.
DnsName *string `json:"dnsName"`
// The ID of the file system, assigned by Amazon FSx.
// Experimental.
FileSystemId *string `json:"fileSystemId"`
// The security group of the file system.
// Experimental.
SecurityGroup awsec2.ISecurityGroup `json:"securityGroup"`
}
Properties that describe an existing FSx file system. Experimental.
type FileSystemBase ¶
type FileSystemBase interface {
awscdk.Resource
IFileSystem
Connections() awsec2.Connections
DnsName() *string
Env() *awscdk.ResourceEnvironment
FileSystemId() *string
Node() awscdk.ConstructNode
PhysicalName() *string
Stack() awscdk.Stack
ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
GeneratePhysicalName() *string
GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
GetResourceNameAttribute(nameAttr *string) *string
OnPrepare()
OnSynthesize(session constructs.ISynthesisSession)
OnValidate() *[]*string
Prepare()
Synthesize(session awscdk.ISynthesisSession)
ToString() *string
Validate() *[]*string
}
A new or imported FSx file system. Experimental.
type FileSystemProps ¶
type FileSystemProps struct {
// The storage capacity of the file system being created.
//
// For Windows file systems, valid values are 32 GiB to 65,536 GiB.
// For SCRATCH_1 deployment types, valid values are 1,200, 2,400, 3,600, then continuing in increments of 3,600 GiB.
// For SCRATCH_2 and PERSISTENT_1 types, valid values are 1,200, 2,400, then continuing in increments of 2,400 GiB.
// Experimental.
StorageCapacityGiB *float64 `json:"storageCapacityGiB"`
// The VPC to launch the file system in.
// Experimental.
Vpc awsec2.IVpc `json:"vpc"`
// The ID of the backup.
//
// Specifies the backup to use if you're creating a file system from an existing backup.
// Experimental.
BackupId *string `json:"backupId"`
// The KMS key used for encryption to protect your data at rest.
// Experimental.
KmsKey awskms.IKey `json:"kmsKey"`
// Policy to apply when the file system is removed from the stack.
// Experimental.
RemovalPolicy awscdk.RemovalPolicy `json:"removalPolicy"`
// Security Group to assign to this file system.
// Experimental.
SecurityGroup awsec2.ISecurityGroup `json:"securityGroup"`
}
Properties for the FSx file system. See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html
Experimental.
type IFileSystem ¶
type IFileSystem interface {
awsec2.IConnectable
// The ID of the file system, assigned by Amazon FSx.
// Experimental.
FileSystemId() *string
}
Interface to implement FSx File Systems. Experimental.
func LustreFileSystem_FromLustreFileSystemAttributes ¶
func LustreFileSystem_FromLustreFileSystemAttributes(scope constructs.Construct, id *string, attrs *FileSystemAttributes) IFileSystem
Import an existing FSx for Lustre file system from the given properties. Experimental.
type LustreConfiguration ¶
type LustreConfiguration struct {
// The type of backing file system deployment used by FSx.
// Experimental.
DeploymentType LustreDeploymentType `json:"deploymentType"`
// The path in Amazon S3 where the root of your Amazon FSx file system is exported.
//
// The path must use the same
// Amazon S3 bucket as specified in ImportPath. If you only specify a bucket name, such as s3://import-bucket, you
// get a 1:1 mapping of file system objects to S3 bucket objects. This mapping means that the input data in S3 is
// overwritten on export. If you provide a custom prefix in the export path, such as
// s3://import-bucket/[custom-optional-prefix], Amazon FSx exports the contents of your file system to that export
// prefix in the Amazon S3 bucket.
// Experimental.
ExportPath *string `json:"exportPath"`
// For files imported from a data repository, this value determines the stripe count and maximum amount of data per file (in MiB) stored on a single physical disk.
//
// Allowed values are between 1 and 512,000.
// Experimental.
ImportedFileChunkSizeMiB *float64 `json:"importedFileChunkSizeMiB"`
// The path to the Amazon S3 bucket (including the optional prefix) that you're using as the data repository for your Amazon FSx for Lustre file system.
//
// Must be of the format "s3://{bucketName}/optional-prefix" and cannot
// exceed 900 characters.
// Experimental.
ImportPath *string `json:"importPath"`
// Required for the PERSISTENT_1 deployment type, describes the amount of read and write throughput for each 1 tebibyte of storage, in MB/s/TiB.
//
// Valid values are 50, 100, 200.
// Experimental.
PerUnitStorageThroughput *float64 `json:"perUnitStorageThroughput"`
// The preferred day and time to perform weekly maintenance.
//
// The first digit is the day of the week, starting at 0
// for Sunday, then the following are hours and minutes in the UTC time zone, 24 hour clock. For example: '2:20:30'
// is Tuesdays at 20:30.
// Experimental.
WeeklyMaintenanceStartTime LustreMaintenanceTime `json:"weeklyMaintenanceStartTime"`
}
The configuration for the Amazon FSx for Lustre file system. See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html
Experimental.
type LustreDeploymentType ¶
type LustreDeploymentType string
The different kinds of file system deployments used by Lustre. Experimental.
const ( LustreDeploymentType_SCRATCH_1 LustreDeploymentType = "SCRATCH_1" LustreDeploymentType_SCRATCH_2 LustreDeploymentType = "SCRATCH_2" LustreDeploymentType_PERSISTENT_1 LustreDeploymentType = "PERSISTENT_1" )
type LustreFileSystem ¶
type LustreFileSystem interface {
FileSystemBase
Connections() awsec2.Connections
DnsName() *string
Env() *awscdk.ResourceEnvironment
FileSystemId() *string
MountName() *string
Node() awscdk.ConstructNode
PhysicalName() *string
Stack() awscdk.Stack
ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
GeneratePhysicalName() *string
GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
GetResourceNameAttribute(nameAttr *string) *string
OnPrepare()
OnSynthesize(session constructs.ISynthesisSession)
OnValidate() *[]*string
Prepare()
Synthesize(session awscdk.ISynthesisSession)
ToString() *string
Validate() *[]*string
}
The FSx for Lustre File System implementation of IFileSystem. See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html
Experimental.
func NewLustreFileSystem ¶
func NewLustreFileSystem(scope constructs.Construct, id *string, props *LustreFileSystemProps) LustreFileSystem
Experimental.
type LustreFileSystemProps ¶
type LustreFileSystemProps struct {
// The storage capacity of the file system being created.
//
// For Windows file systems, valid values are 32 GiB to 65,536 GiB.
// For SCRATCH_1 deployment types, valid values are 1,200, 2,400, 3,600, then continuing in increments of 3,600 GiB.
// For SCRATCH_2 and PERSISTENT_1 types, valid values are 1,200, 2,400, then continuing in increments of 2,400 GiB.
// Experimental.
StorageCapacityGiB *float64 `json:"storageCapacityGiB"`
// The VPC to launch the file system in.
// Experimental.
Vpc awsec2.IVpc `json:"vpc"`
// The ID of the backup.
//
// Specifies the backup to use if you're creating a file system from an existing backup.
// Experimental.
BackupId *string `json:"backupId"`
// The KMS key used for encryption to protect your data at rest.
// Experimental.
KmsKey awskms.IKey `json:"kmsKey"`
// Policy to apply when the file system is removed from the stack.
// Experimental.
RemovalPolicy awscdk.RemovalPolicy `json:"removalPolicy"`
// Security Group to assign to this file system.
// Experimental.
SecurityGroup awsec2.ISecurityGroup `json:"securityGroup"`
// Additional configuration for FSx specific to Lustre.
// Experimental.
LustreConfiguration *LustreConfiguration `json:"lustreConfiguration"`
// The subnet that the file system will be accessible from.
// Experimental.
VpcSubnet awsec2.ISubnet `json:"vpcSubnet"`
}
Properties specific to the Lustre version of the FSx file system. Experimental.
type LustreMaintenanceTime ¶
type LustreMaintenanceTime interface {
ToTimestamp() *string
}
Class for scheduling a weekly manitenance time. Experimental.
func NewLustreMaintenanceTime ¶
func NewLustreMaintenanceTime(props *LustreMaintenanceTimeProps) LustreMaintenanceTime
Experimental.
type LustreMaintenanceTimeProps ¶
type LustreMaintenanceTimeProps struct {
// The day of the week for maintenance to be performed.
// Experimental.
Day Weekday `json:"day"`
// The hour of the day (from 0-24) for maintenance to be performed.
// Experimental.
Hour *float64 `json:"hour"`
// The minute of the hour (from 0-59) for maintenance to be performed.
// Experimental.
Minute *float64 `json:"minute"`
}
Properties required for setting up a weekly maintenance time. Experimental.