Skip to content

Commit 721e700

Browse files
authored
chore(ec2): add missing instance types and sizes (#32658)
### Issue # (if applicable) None that I could find ### Reason for this change Update the CDK EC2 instance class and size enums to match the current availability ### Description of changes Added the missing instance classes and sizes ### Describe any new or updated permissions being added None ### Description of how you validated change Used`DescribeInstanceTypes` API command in multiple regions (`us-east-1`, `us-east-2`, `us-west-1`, `eu-west-1`,) and compared the results to the classes and sizes available in the CDK. Again, the union of `us-east-1` and `us-east-2` should cover all possible instance classes and sizes. ### Checklist - [x] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md) ---- *By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
1 parent efe7c2e commit 721e700

File tree

1 file changed

+225
-2
lines changed

1 file changed

+225
-2
lines changed

packages/aws-cdk-lib/aws-ec2/lib/instance-types.ts

+225-2
Original file line numberDiff line numberDiff line change
@@ -288,6 +288,78 @@ export enum InstanceClass {
288288
*/
289289
U_24TB1 = 'u-24tb1',
290290

291+
/**
292+
* High memory instances (6TB) based on 4th Generation Intel Xeon Scalable processors (Sapphire Rapids), 7th generation
293+
*/
294+
HIGH_MEMORY_6TB_7 = 'high-memory-6tb-7',
295+
296+
/**
297+
* High memory instances (6TB) based on 4th Generation Intel Xeon Scalable processors (Sapphire Rapids), 7th generation
298+
*/
299+
U7I_6TB = 'u7i-6tb',
300+
301+
/**
302+
* High memory instances (8TB) based on 4th Generation Intel Xeon Scalable processors (Sapphire Rapids), 7th generation
303+
*/
304+
HIGH_MEMORY_8TB_7 = 'high-memory-8tb-7',
305+
306+
/**
307+
* High memory instances (8TB) based on 4th Generation Intel Xeon Scalable processors (Sapphire Rapids), 7th generation
308+
*/
309+
U7I_8TB = 'u7i-8tb',
310+
311+
/**
312+
* High memory instances (12TB) based on 4th Generation Intel Xeon Scalable processors (Sapphire Rapids), 7th generation
313+
*/
314+
HIGH_MEMORY_12TB_7 = 'high-memory-12tb-7',
315+
316+
/**
317+
* High memory instances (12TB) based on 4th Generation Intel Xeon Scalable processors (Sapphire Rapids), 7th generation
318+
*/
319+
U7I_12TB = 'u7i-12tb',
320+
321+
/**
322+
* High memory, network-intensive instances (16TB) based on 4th Generation Intel Xeon Scalable processors (Sapphire Rapids), 7th generation
323+
*/
324+
HIGH_MEMORY_HIGH_NETWORK_16TB_7 = 'high-memory-high-network-16tb-7',
325+
326+
/**
327+
* High memory, network-intensive instances (16TB) based on 4th Generation Intel Xeon Scalable processors (Sapphire Rapids), 7th generation
328+
*/
329+
U7IN_16TB = 'u7in-16tb',
330+
331+
/**
332+
* High memory, network-intensive instances (24TB) based on 4th Generation Intel Xeon Scalable processors (Sapphire Rapids), 7th generation
333+
*/
334+
HIGH_MEMORY_HIGH_NETWORK_24TB_7 = 'high-memory-high-network-24tb-7',
335+
336+
/**
337+
* High memory, network-intensive instances (24TB) based on 4th Generation Intel Xeon Scalable processors (Sapphire Rapids), 7th generation
338+
*/
339+
U7IN_24TB = 'u7in-24tb',
340+
341+
/**
342+
* High memory, network-intensive instances (32TB) based on 4th Generation Intel Xeon Scalable processors (Sapphire Rapids), 7th generation
343+
*/
344+
HIGH_MEMORY_HIGH_NETWORK_32TB_7 = 'high-memory-high-network-32tb-7',
345+
346+
/**
347+
* High memory, network-intensive instances (32TB) based on 4th Generation Intel Xeon Scalable processors (Sapphire Rapids), 7th generation
348+
*/
349+
U7IN_32TB = 'u7in-32tb',
350+
351+
/**
352+
* High memory, network-intensive instances (32TB) based on 4th Generation Intel Xeon Scalable processors (Sapphire Rapids), 7th generation
353+
* U7inh instances use Hewlett Packard Enterprise (HPE) Compute Scale Up Server 3200.
354+
*/
355+
HIGH_MEMORY_HIGH_NETWORK_HPE_32TB_7 = 'high-memory-high-network-hpe-32tb-7',
356+
357+
/**
358+
* High memory, network-intensive instances (32TB) based on 4th Generation Intel Xeon Scalable processors (Sapphire Rapids), 7th generation
359+
* U7inh instances use Hewlett Packard Enterprise (HPE) Compute Scale Up Server 3200.
360+
*/
361+
U7INH_32TB = 'u7inh-32tb',
362+
291363
/**
292364
* Memory optimized instances that are also EBS-optimized, 5th generation
293365
*/
@@ -590,6 +662,18 @@ export enum InstanceClass {
590662
*/
591663
C7I = 'c7i',
592664

665+
/**
666+
* Compute optimized instances based on Intel Xeon Scalable (Sapphire Rapids) processors, 7th generation
667+
* C7i-flex instances efficiently use compute resources to deliver a baseline level of performance with the ability to scale up to the full compute performance a majority of the time.
668+
*/
669+
COMPUTE7_INTEL_FLEX = 'compute7-intel-flex',
670+
671+
/**
672+
* Compute optimized instances based on Intel Xeon Scalable (Sapphire Rapids) processors, 7th generation
673+
* C7i-flex instances efficiently use compute resources to deliver a baseline level of performance with the ability to scale up to the full compute performance a majority of the time.
674+
*/
675+
C7I_FLEX = 'c7i-flex',
676+
593677
/**
594678
* Compute optimized instances based on 4th generation AMD EPYC (codename Genoa), 7th generation
595679
*/
@@ -660,6 +744,28 @@ export enum InstanceClass {
660744
*/
661745
TRN1N = 'trn1n',
662746

747+
/**
748+
* High performance computing powered by AWS Trainium2, 2nd generation
749+
*/
750+
TRAINING_ACCELERATOR2 = 'training-accelerator2',
751+
752+
/**
753+
* High performance computing powered by AWS Trainium2, 2nd generation
754+
*/
755+
TRN2 = 'trn2',
756+
757+
/**
758+
* High performance computing powered by AWS Trainium2 and EC2 Ultra Servers, 2nd generation
759+
* UltraServers connect multiple EC2 instances using a dedicated, high-bandwidth, low-latency accelerator interconnect
760+
*/
761+
TRAINING_ACCELERATOR2_ULTRASERVER = 'training-accelerator2-ultraserver',
762+
763+
/**
764+
* High performance computing powered by AWS Trainium2 and EC2 Ultra Servers, 2nd generation
765+
* UltraServers connect multiple EC2 instances using a dedicated, high-bandwidth, low-latency accelerator interconnect
766+
*/
767+
TRN2U = 'trn2u',
768+
663769
/**
664770
* I/O-optimized instances, 3rd generation
665771
*/
@@ -720,6 +826,26 @@ export enum InstanceClass {
720826
*/
721827
IS4GEN = 'is4gen',
722828

829+
/**
830+
* Storage optimized instances powered by 5th generation Intel Xeon Scalable processors, 7th generation
831+
*/
832+
STORAGE7_INTEL_STORAGE_OPTIMIZED = 'storage7-intel-storage-optimized',
833+
834+
/**
835+
* Storage optimized instances powered by 5th generation Intel Xeon Scalable processors, 7th generation
836+
*/
837+
I7IE = 'i7ie',
838+
839+
/**
840+
* Storage optimized instances powered by Graviton4 processor, 8th generation
841+
*/
842+
STORAGE8_GRAVITON = 'storage8-graviton',
843+
844+
/**
845+
* Storage optimized instances powered by Graviton4 processor, 8th generation
846+
*/
847+
I8G = 'i8g',
848+
723849
/**
724850
* Burstable instances, 2nd generation
725851
*/
@@ -834,6 +960,16 @@ export enum InstanceClass {
834960
*/
835961
X2IEZN = 'x2iezn',
836962

963+
/**
964+
* Memory-intensive instances powered by Graviton4 processors, 8th generation
965+
*/
966+
MEMORY_INTENSIVE_8_GRAVITON = 'memory-intensive-8-graviton',
967+
968+
/**
969+
* Memory-intensive instances powered by Graviton4 processors, 8th generation
970+
*/
971+
X8G = 'x8g',
972+
837973
/**
838974
* Instances with customizable hardware acceleration, 1st generation
839975
*/
@@ -844,6 +980,16 @@ export enum InstanceClass {
844980
*/
845981
F1 = 'f1',
846982

983+
/**
984+
* Instances with customizable hardware acceleration, 2nd generation
985+
*/
986+
FPGA2 = 'fpga2',
987+
988+
/**
989+
* Instances with customizable hardware acceleration, 2nd generation
990+
*/
991+
F2 = 'f2',
992+
847993
/**
848994
* Graphics-optimized instances, 3rd generation
849995
*/
@@ -924,6 +1070,18 @@ export enum InstanceClass {
9241070
*/
9251071
G6E = 'g6e',
9261072

1073+
/**
1074+
* Graphics-optimized instances, 6th generation
1075+
* Gr6 instances offer a 1:8 vCPU to RAM ratio, making them better suited for graphics workloads with higher memory requirements.
1076+
*/
1077+
GRAPHICS_RAM_6 = 'graphics-ram-6',
1078+
1079+
/**
1080+
* Graphics-optimized instances, 6th generation
1081+
* Gr6 instances offer a 1:8 vCPU to RAM ratio, making them better suited for graphics workloads with higher memory requirements.
1082+
*/
1083+
GR6 = 'gr6',
1084+
9271085
/**
9281086
* Parallel-processing optimized instances, 2nd generation
9291087
*/
@@ -975,15 +1133,36 @@ export enum InstanceClass {
9751133
P4D = 'p4d',
9761134

9771135
/**
978-
* Parallel-processing optimized instances, 5th generation
1136+
* Parallel-processing optimized instances powered by NVIDIA H100 Tensor Core GPUs, 5th generation
9791137
*/
9801138
PARALLEL5 = 'parallel5',
9811139

9821140
/**
983-
* Parallel-processing optimized instances, 5th generation
1141+
* Parallel-processing optimized instances powered by NVIDIA H100 Tensor Core GPUs, 5th generation
9841142
*/
9851143
P5 = 'p5',
9861144

1145+
/**
1146+
* Parallel-processing optimized instances powered by NVIDIA H200 Tensor Core GPUs, 5th generation
1147+
*/
1148+
PARALLEL5_EXTENDED = 'parallel5-extended',
1149+
1150+
/**
1151+
* Parallel-processing optimized instances, 5th generation
1152+
*/
1153+
P5E = 'p5e',
1154+
1155+
/**
1156+
* Parallel-processing, network-optimized instances powered by NVIDIA H200 Tensor Core GPUs, 5th generation
1157+
* P5en instances pair NVIDIA H200 Tensor Core GPUs with Intel Sapphire Rapids CPU, enabling Gen5 PCIe between CPU and GPU
1158+
*/
1159+
PARALLEL5_EXTENDED_NETWORK = 'parallel5-extended-network',
1160+
1161+
/**
1162+
* Parallel-processing optimized instances, 5th generation
1163+
*/
1164+
P5EN = 'p5en',
1165+
9871166
/**
9881167
* Arm processor based instances, 1st generation
9891168
*/
@@ -1418,6 +1597,16 @@ export enum InstanceSize {
14181597
*/
14191598
XLARGE112 = '112xlarge',
14201599

1600+
/**
1601+
* Instance size XLARGE224 (224xlarge)
1602+
*/
1603+
XLARGE224 = '224xlarge',
1604+
1605+
/**
1606+
* Instance size XLARGE480 (480xlarge)
1607+
*/
1608+
XLARGE480 = '480xlarge',
1609+
14211610
/**
14221611
* Instance size METAL (metal)
14231612
*/
@@ -1518,6 +1707,20 @@ export class InstanceType {
15181707
[InstanceClass.U_18TB1]: 'u-18tb1',
15191708
[InstanceClass.HIGH_MEMORY_24TB_1]: 'u-24tb1',
15201709
[InstanceClass.U_24TB1]: 'u-24tb1',
1710+
[InstanceClass.HIGH_MEMORY_6TB_7]: 'u7i-6tb',
1711+
[InstanceClass.U7I_6TB]: 'u7i-6tb',
1712+
[InstanceClass.HIGH_MEMORY_8TB_7]: 'u7i-8tb',
1713+
[InstanceClass.U7I_8TB]: 'u7i-8tb',
1714+
[InstanceClass.HIGH_MEMORY_12TB_7]: 'u7i-12tb',
1715+
[InstanceClass.U7I_12TB]: 'u7i-12tb',
1716+
[InstanceClass.HIGH_MEMORY_HIGH_NETWORK_16TB_7]: 'u7in-16tb',
1717+
[InstanceClass.U7IN_16TB]: 'u7in-16tb',
1718+
[InstanceClass.HIGH_MEMORY_HIGH_NETWORK_24TB_7]: 'u7in-24tb',
1719+
[InstanceClass.U7IN_24TB]: 'u7in-24tb',
1720+
[InstanceClass.HIGH_MEMORY_HIGH_NETWORK_32TB_7]: 'u7in-32tb',
1721+
[InstanceClass.U7IN_32TB]: 'u7in-32tb',
1722+
[InstanceClass.HIGH_MEMORY_HIGH_NETWORK_HPE_32TB_7]: 'u7inh-32tb',
1723+
[InstanceClass.U7INH_32TB]: 'u7inh-32tb',
15211724
[InstanceClass.MEMORY5_EBS_OPTIMIZED]: 'r5b',
15221725
[InstanceClass.R5B]: 'r5b',
15231726
[InstanceClass.MEMORY6_GRAVITON]: 'r6g',
@@ -1572,6 +1775,8 @@ export class InstanceType {
15721775
[InstanceClass.C7GN]: 'c7gn',
15731776
[InstanceClass.COMPUTE7_INTEL]: 'c7i',
15741777
[InstanceClass.C7I]: 'c7i',
1778+
[InstanceClass.COMPUTE7_INTEL_FLEX]: 'c7i-flex',
1779+
[InstanceClass.C7I_FLEX]: 'c7i-flex',
15751780
[InstanceClass.COMPUTE7_AMD]: 'c7a',
15761781
[InstanceClass.C7A]: 'c7a',
15771782
[InstanceClass.COMPUTE8_GRAVITON4]: 'c8g',
@@ -1586,6 +1791,10 @@ export class InstanceType {
15861791
[InstanceClass.TRN1]: 'trn1',
15871792
[InstanceClass.TRAINING_ACCELERATOR1_ENHANCED_NETWORK]: 'trn1n',
15881793
[InstanceClass.TRN1N]: 'trn1n',
1794+
[InstanceClass.TRAINING_ACCELERATOR2]: 'trn2',
1795+
[InstanceClass.TRN2]: 'trn2',
1796+
[InstanceClass.TRAINING_ACCELERATOR2_ULTRASERVER]: 'trn2u',
1797+
[InstanceClass.TRN2U]: 'trn2u',
15891798
[InstanceClass.STORAGE_COMPUTE_1]: 'h1',
15901799
[InstanceClass.H1]: 'h1',
15911800
[InstanceClass.IO3]: 'i3',
@@ -1598,6 +1807,10 @@ export class InstanceType {
15981807
[InstanceClass.IM4GN]: 'im4gn',
15991808
[InstanceClass.STORAGE4_GRAVITON_NETWORK_STORAGE_OPTIMIZED]: 'is4gen',
16001809
[InstanceClass.IS4GEN]: 'is4gen',
1810+
[InstanceClass.STORAGE7_INTEL_STORAGE_OPTIMIZED]: 'i7ie',
1811+
[InstanceClass.I7IE]: 'i7ie',
1812+
[InstanceClass.STORAGE8_GRAVITON]: 'i8g',
1813+
[InstanceClass.I8G]: 'i8g',
16011814
[InstanceClass.BURSTABLE2]: 't2',
16021815
[InstanceClass.T2]: 't2',
16031816
[InstanceClass.BURSTABLE3]: 't3',
@@ -1616,6 +1829,8 @@ export class InstanceType {
16161829
[InstanceClass.X2GD]: 'x2gd',
16171830
[InstanceClass.FPGA1]: 'f1',
16181831
[InstanceClass.F1]: 'f1',
1832+
[InstanceClass.FPGA2]: 'f2',
1833+
[InstanceClass.F2]: 'f2',
16191834
[InstanceClass.GRAPHICS3_SMALL]: 'g3s',
16201835
[InstanceClass.G3S]: 'g3s',
16211836
[InstanceClass.GRAPHICS3]: 'g3',
@@ -1632,6 +1847,8 @@ export class InstanceType {
16321847
[InstanceClass.G6]: 'g6',
16331848
[InstanceClass.GRAPHICS6_EFFICIENT]: 'g6e',
16341849
[InstanceClass.G6E]: 'g6e',
1850+
[InstanceClass.GRAPHICS_RAM_6]: 'gr6',
1851+
[InstanceClass.GR6]: 'gr6',
16351852
[InstanceClass.PARALLEL2]: 'p2',
16361853
[InstanceClass.P2]: 'p2',
16371854
[InstanceClass.PARALLEL3]: 'p3',
@@ -1644,6 +1861,10 @@ export class InstanceType {
16441861
[InstanceClass.P4D]: 'p4d',
16451862
[InstanceClass.PARALLEL5]: 'p5',
16461863
[InstanceClass.P5]: 'p5',
1864+
[InstanceClass.PARALLEL5_EXTENDED]: 'parallel5-extended',
1865+
[InstanceClass.P5E]: 'p5e',
1866+
[InstanceClass.PARALLEL5_EXTENDED_NETWORK]: 'parallel5-extended-network',
1867+
[InstanceClass.P5EN]: 'p5en',
16471868
[InstanceClass.ARM1]: 'a1',
16481869
[InstanceClass.A1]: 'a1',
16491870
[InstanceClass.STANDARD6_GRAVITON]: 'm6g',
@@ -1705,6 +1926,8 @@ export class InstanceType {
17051926
[InstanceClass.X2IDN]: 'x2idn',
17061927
[InstanceClass.MEMORY_INTENSIVE_2_INTEL]: 'x2idn',
17071928
[InstanceClass.X2IEZN]: 'x2iezn',
1929+
[InstanceClass.MEMORY_INTENSIVE_8_GRAVITON]: 'x8g',
1930+
[InstanceClass.X8G]: 'x8g',
17081931
[InstanceClass.MEMORY_INTENSIVE_2_XTZ_INTEL]: 'x2iezn',
17091932
[InstanceClass.DEEP_LEARNING1]: 'dl1',
17101933
[InstanceClass.DL1]: 'dl1',

0 commit comments

Comments
 (0)