Class BastionHostLinuxProps.Jsii$Proxy

java.lang.Object
software.amazon.jsii.JsiiObject
software.amazon.awscdk.services.ec2.BastionHostLinuxProps.Jsii$Proxy
All Implemented Interfaces:
BastionHostLinuxProps, software.amazon.jsii.JsiiSerializable
Enclosing interface:
BastionHostLinuxProps

@Stability(Stable) @Internal public static final class BastionHostLinuxProps.Jsii$Proxy extends software.amazon.jsii.JsiiObject implements BastionHostLinuxProps
An implementation for BastionHostLinuxProps
  • Constructor Details

    • Jsii$Proxy

      protected Jsii$Proxy(software.amazon.jsii.JsiiObjectRef objRef)
      Constructor that initializes the object based on values retrieved from the JsiiObject.
      Parameters:
      objRef - Reference to the JSII managed object.
    • Jsii$Proxy

      protected Jsii$Proxy(BastionHostLinuxProps.Builder builder)
      Constructor that initializes the object based on literal property values passed by the BastionHostLinuxProps.Builder.
  • Method Details

    • getVpc

      public final IVpc getVpc()
      Description copied from interface: BastionHostLinuxProps
      VPC to launch the instance in.
      Specified by:
      getVpc in interface BastionHostLinuxProps
    • getAvailabilityZone

      public final String getAvailabilityZone()
      Description copied from interface: BastionHostLinuxProps
      In which AZ to place the instance within the VPC.

      Default: - Random zone.

      Specified by:
      getAvailabilityZone in interface BastionHostLinuxProps
    • getBlockDevices

      public final List<BlockDevice> getBlockDevices()
      Description copied from interface: BastionHostLinuxProps
      Specifies how block devices are exposed to the instance. You can specify virtual devices and EBS volumes.

      Each instance that is launched has an associated root device volume, either an Amazon EBS volume or an instance store volume. You can use block device mappings to specify additional EBS volumes or instance store volumes to attach to an instance when it is launched.

      Default: - Uses the block device mapping of the AMI

      Specified by:
      getBlockDevices in interface BastionHostLinuxProps
      See Also:
    • getInit

      public final CloudFormationInit getInit()
      Description copied from interface: BastionHostLinuxProps
      Apply the given CloudFormation Init configuration to the instance at startup.

      Default: - no CloudFormation init

      Specified by:
      getInit in interface BastionHostLinuxProps
    • getInitOptions

      public final ApplyCloudFormationInitOptions getInitOptions()
      Description copied from interface: BastionHostLinuxProps
      Use the given options for applying CloudFormation Init.

      Describes the configsets to use and the timeout to wait

      Default: - default options

      Specified by:
      getInitOptions in interface BastionHostLinuxProps
    • getInstanceName

      public final String getInstanceName()
      Description copied from interface: BastionHostLinuxProps
      The name of the instance.

      Default: 'BastionHost'

      Specified by:
      getInstanceName in interface BastionHostLinuxProps
    • getInstanceType

      public final InstanceType getInstanceType()
      Description copied from interface: BastionHostLinuxProps
      Type of instance to launch.

      Default: 't3.nano'

      Specified by:
      getInstanceType in interface BastionHostLinuxProps
    • getMachineImage

      public final IMachineImage getMachineImage()
      Description copied from interface: BastionHostLinuxProps
      The machine image to use, assumed to have SSM Agent preinstalled.

      Default: - An Amazon Linux 2023 image if the `@aws-cdk/aws-ec2:bastionHostUseAmazonLinux2023ByDefault` feature flag is enabled. Otherwise, an Amazon Linux 2 image. In both cases, the image is kept up-to-date automatically (the instance may be replaced on every deployment) and already has SSM Agent installed.

      Specified by:
      getMachineImage in interface BastionHostLinuxProps
    • getRequireImdsv2

      public final Boolean getRequireImdsv2()
      Description copied from interface: BastionHostLinuxProps
      Whether IMDSv2 should be required on this instance.

      Default: - false

      Specified by:
      getRequireImdsv2 in interface BastionHostLinuxProps
    • getSecurityGroup

      public final ISecurityGroup getSecurityGroup()
      Description copied from interface: BastionHostLinuxProps
      Security Group to assign to this instance.

      Default: - create new security group with no inbound and all outbound traffic allowed

      Specified by:
      getSecurityGroup in interface BastionHostLinuxProps
    • getSubnetSelection

      public final SubnetSelection getSubnetSelection()
      Description copied from interface: BastionHostLinuxProps
      Select the subnets to run the bastion host in.

      Set this to PUBLIC if you need to connect to this instance via the internet and cannot use SSM. You have to allow port 22 manually by using the connections field

      Default: - private subnets of the supplied VPC

      Specified by:
      getSubnetSelection in interface BastionHostLinuxProps
    • getUserDataCausesReplacement

      public final Boolean getUserDataCausesReplacement()
      Description copied from interface: BastionHostLinuxProps
      Determines whether changes to the UserData will force instance replacement.

      Depending on the EC2 instance type, modifying the UserData may either restart or replace the instance:

      • Instance store-backed instances are replaced.
      • EBS-backed instances are restarted.

      Note that by default, restarting does not execute the updated UserData, so an alternative mechanism is needed to ensure the instance re-executes the UserData.

      When set to true, the instance's Logical ID will depend on the UserData, causing CloudFormation to replace the instance if the UserData changes.

      Default: - `true` if `initOptions` is specified, otherwise `false`.

      Specified by:
      getUserDataCausesReplacement in interface BastionHostLinuxProps
    • $jsii$toJson

      @Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson()
      Specified by:
      $jsii$toJson in interface software.amazon.jsii.JsiiSerializable
    • equals

      public final boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object