github.com/openshift/installer@v1.4.17/docs/user/aws/customization.md (about)

     1  # AWS Platform Customization
     2  
     3  Beyond the [platform-agnostic `install-config.yaml` properties](../customization.md#platform-customization), the installer supports additional, AWS-specific properties.
     4  
     5  ## Cluster-scoped properties
     6  
     7  * `amiID` (optional string): The AMI that should be used to boot machines for the cluster.
     8      If set, the AMI should belong to the same region as the cluster. This field is now deprecated and `defaultMachinePlatform` should be used instead.
     9  * `region` (required string): The AWS region where the cluster will be created.
    10  * `subnets` (optional array of strings): Existing subnets (by ID) where cluster resources will be created.
    11      Leave unset to have the installer create subnets in a new VPC on your behalf.
    12  * `userTags` (optional object): Additional keys and values that the installer will add as tags to all resources that it creates.
    13      Resources created by the cluster itself may not include these tags.
    14  * `defaultMachinePlatform` (optional object): Default [AWS-specific machine pool properties](#machine-pools) which applies to [machine pools](../customization.md#machine-pools) that do not define their own AWS-specific properties.
    15  
    16  ## Machine pools
    17  
    18  * `rootVolume` (optional object): Defines the root volume for EC2 instances in the machine pool.
    19      * `iops` (optional integer): The amount of provisioned [IOPS][volume-iops].
    20          This is only valid for `type` `io1`.
    21      * `size` (optional integer): Size of the root volume in gibibytes (GiB).
    22      * `type` (optional string):  The [type of volume][volume-type].
    23      * `kmsKeyARN` (optional string): The [ARN of KMS key][kms-key] that should be used to encrypt the EBS volume.
    24          When no key is specified by user, the account's [default KMS Key][kms-key-default] for the region will be used.
    25          Example ARN values are: `arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab` or `arn:aws:kms:us-east-1:111122223333:alias/my-key`
    26  * `type` (optional string): The [EC2 instance type][instance-type].
    27  * `zones` (optional array of strings): The availability zones used for machines in the pool.
    28  * `amiID` (optional string): The AMI that should be used to boot machines.
    29      If set, the AMI should belong to the same region as the cluster.
    30  
    31  ## Installing to Existing VPC & Subnetworks
    32  
    33  The installer can use an existing VPC and subnets when provisioning an OpenShift cluster. A VPC will be inferred from the provided subnets. For a standard installation, a private and public subnet should be specified. ([see example below](#pre-existing-vpc--subnets)). Both of the subnets must be within the IP range specified in `networking.machineNetwork`. 
    34  
    35  ## Examples
    36  
    37  Some example `install-config.yaml` are shown below.
    38  For examples of platform-agnostic configuration fragments, see [here](../customization.md#examples).
    39  
    40  ### Minimal
    41  
    42  An example minimal AWS install config is:
    43  
    44  ```yaml
    45  apiVersion: v1
    46  baseDomain: example.com
    47  metadata:
    48    name: test-cluster
    49  platform:
    50    aws:
    51      region: us-west-2
    52  pullSecret: '{"auths": ...}'
    53  sshKey: ssh-ed25519 AAAA...
    54  ```
    55  
    56  ### Custom machine pools
    57  
    58  An example AWS install config with custom machine pools:
    59  
    60  ```yaml
    61  apiVersion: v1
    62  baseDomain: example.com
    63  controlPlane:
    64    name: master
    65    platform:
    66      aws:
    67        zones:
    68        - us-west-2a
    69        - us-west-2b
    70        type: m5.xlarge
    71    replicas: 3
    72  compute:
    73  - name: worker
    74    platform:
    75      aws:
    76        amiID: ami-123456
    77        rootVolume:
    78          iops: 4000
    79          size: 500
    80          type: io1
    81          kmsKeyARN: arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
    82        type: c5.9xlarge
    83        zones:
    84        - us-west-2c
    85    replicas: 5
    86  metadata:
    87    name: test-cluster
    88  platform:
    89    aws:
    90      region: us-west-2
    91  pullSecret: '{"auths": ...}'
    92  sshKey: ssh-ed25519 AAAA...
    93  ```
    94  
    95  ### Pre-existing VPC & Subnets
    96  
    97  An example install config for installing to an existing VPC and subnets is:
    98  
    99  ```yaml
   100  apiVersion: v1
   101  baseDomain: example.com
   102  metadata:
   103    name: test-cluster
   104  networking:
   105    machineNetwork:
   106    - cidr: 10.190.0.0/16
   107  platform:
   108    aws:
   109      region: us-west-2
   110      subnets:
   111      - subnet-0e953079d31ec4c74
   112      - subnet-05e6864f66a954c27
   113  pullSecret: '{"auths": ...}'
   114  sshKey: ssh-ed25519 AAAA...
   115  ```
   116  
   117  [availablity-zones]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html
   118  [instance-type]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html
   119  [kms-key-default]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetEbsDefaultKmsKeyId.html
   120  [kms-key]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html
   121  [volume-iops]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-io-characteristics.html
   122  [volume-type]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html