Repository: getmoto/moto
Pull request #8381 (2024-12-08 00:46:49)

Kafka V1 Support


Patch:
diff --git a/moto/athena/responses.py b/moto/athena/responses.py
index 23b074160..727711167 100644
--- a/moto/athena/responses.py
+++ b/moto/athena/responses.py
@@ -89,7 +89,7 @@ class AthenaResponse(BaseResponse):
                     "QueryPlanningTimeInMillis": 0,
                     "ServiceProcessingTimeInMillis": 0,
                 },
-                "WorkGroup": execution.workgroup,
+                "WorkGroup": execution.workgroup.name if execution.workgroup else None,
             }
         }
         if execution.execution_parameters is not None:
diff --git a/moto/backend_index.py b/moto/backend_index.py
index 781aeeb2a..8b4452cb7 100644
--- a/moto/backend_index.py
+++ b/moto/backend_index.py
@@ -96,6 +96,7 @@ backend_url_patterns = [
     ("iotdata", re.compile("https?://data\\.iot\\.(.+)\\.amazonaws.com")),
     ("iotdata", re.compile("https?://data-ats\\.iot\\.(.+)\\.amazonaws.com")),
     ("ivs", re.compile("https?://ivs\\.(.+)\\.amazonaws\\.com")),
+    ("kafka", re.compile("https?://kafka\\.(.+)\\.amazonaws\\.com")),
     ("kinesis", re.compile("https?://kinesis\\.(.+)\\.amazonaws\\.com")),
     ("kinesis", re.compile("https?://(.+)\\.control-kinesis\\.(.+)\\.amazonaws\\.com")),
     ("kinesis", re.compile("https?://(.+)\\.data-kinesis\\.(.+)\\.amazonaws\\.com")),
diff --git a/moto/backends.py b/moto/backends.py
index 4142a8ad6..e81b7d53d 100644
--- a/moto/backends.py
+++ b/moto/backends.py
@@ -80,6 +80,7 @@ if TYPE_CHECKING:
     from moto.iot.models import IoTBackend
     from moto.iotdata.models import IoTDataPlaneBackend
     from moto.ivs.models import IVSBackend
+    from moto.kafka.models import KafkaBackend
     from moto.kinesis.models import KinesisBackend
     from moto.kinesisvideo.models import KinesisVideoBackend
     from moto.kinesisvideoarchivedmedia.models import KinesisVideoArchivedMediaBackend
@@ -258,6 +259,7 @@ SERVICE_NAMES = Union[
     "Literal['iot']",
     "Literal['iot-data']",
     "Literal['ivs']",
+    "Literal['kafka']",
     "Literal['kinesis']",
     "Literal['kinesisvideo']",
     "Literal['kinesis-video-archived-media']",
@@ -528,6 +530,8 @@ def get_backend(name: "Literal['iot-data']") -> "BackendDict[IoTDataPlaneBackend
 @overload
 def get_backend(name: "Literal['ivs']") -> "BackendDict[IVSBackend]": ...
 @overload
+def get_backend(name: "Literal['kafka']") -> "BackendDict[KafkaBackend]": ...
+@overload
 def get_backend(name: "Literal['kinesis']") -> "BackendDict[KinesisBackend]": ...
 @overload
 def get_backend(
diff --git a/moto/cognitoidp/models.py b/moto/cognitoidp/models.py
index dd750542c..4439041a7 100644
--- a/moto/cognitoidp/models.py
+++ b/moto/cognitoidp/models.py
@@ -1354,10 +1354,54 @@ class CognitoIdpBackend(BaseBackend):
         raise NotAuthorizedError("Invalid token")
 
     @paginate(pagination_model=PAGINATION_MODEL)
-    def list_users(self, user_pool_id: str) -> List[CognitoIdpUser]:
+    def list_users(self, user_pool_id: str, filt: str) -> List[CognitoIdpUser]:
         user_pool = self.describe_user_pool(user_pool_id)
+        users = list(user_pool.users.values())
+        if filt:
+            inherent_attributes: Dict[str, Any] = {
+                "cognito:user_status": lambda u: u.status,
+                "status": lambda u: "Enabled" if u.enabled else "Disabled",
+                "username": lambda u: u.username,
+            }
+            comparisons: Dict[str, Any] = {
+                "=": lambda x, y: x == y,
+                "^=": lambda x, y: x.startswith(y),
+            }
+            allowed_attributes = [
+                "username",
+                "email",
+                "phone_number",
+                "name",
+                "given_name",
+                "family_name",
+                "preferred_username",
+                "cognito:user_status",
+                "status",
+                "sub",
+            ]
 
-        return list(user_pool.users.values())
+            match = re.match(r"([\w:]+)\s*(=|\^=)\s*\"(.*)\"", filt)
+            if match:
+                name, op, value = match.groups()
+            else:
+                raise InvalidParameterException("Error while parsing filter")
+            if name not in allowed_attributes:
+                raise InvalidParameterException(f"Invalid search attribute: {name}")
+            compare = comparisons[op]
+            users = [
+                user
+                for user in users
+                if [
+                    attr
+                    for attr in user.attributes
+                    if attr["Name"] == name and compare(attr["Value"], value)
+                ]
+                or (
+                    name in inherent_attributes
+                    and compare(inherent_attributes[name](user), value)
+                )
+            ]
+        return users
 
     def admin_disable_user(self, user_pool_id: str, username: str) -> None:
         user = self.admin_get_user(user_pool_id, username)
diff --git a/moto/cognitoidp/responses.py b/moto/cognitoidp/responses.py
index 33245817a..afdee5081 100644
--- a/moto/cognitoidp/responses.py
+++ b/moto/cognitoidp/responses.py
@@ -1,5 +1,4 @@
 import json
-import re
 from typing import Any, Dict
 
 from moto.core.responses import TYPE_RESPONSE, BaseResponse
@@ -371,52 +370,8 @@ class CognitoIdpResponse(BaseResponse):
         filt = self._get_param("Filter")
         attributes_to_get = self._get_param("AttributesToGet")
         users, token = self.backend.list_users(
-            user_pool_id, limit=limit, pagination_token=token
-        )
-        if filt:
-            inherent_attributes: Dict[str, Any] = {
-                "cognito:user_status": lambda u: u.status,
-                "status": lambda u: "Enabled" if u.enabled else "Disabled",
-                "username": lambda u: u.username,
-            }
-            comparisons: Dict[str, Any] = {
-                "=": lambda x, y: x == y,
-                "^=": lambda x, y: x.startswith(y),
-            }
-            allowed_attributes = [
-                "username",
-                "email",
-                "phone_number",
-                "name",
-                "given_name",
-                "family_name",
-                "preferred_username",
-                "cognito:user_status",
-                "status",
-                "sub",
-            ]
-
-            match = re.match(r"([\w:]+)\s*(=|\^=)\s*\"(.*)\"", filt)
-            if match:
-                name, op, value = match.groups()
-            else:
-                raise InvalidParameterException("Error while parsing filter")
-            if name not in allowed_attributes:
-                raise InvalidParameterException(f"Invalid search attribute: {name}")
-            compare = comparisons[op]
-            users = [
-                user
-                for user in users
-                if [
-                    attr
-                    for attr in user.attributes
-                    if attr["Name"] == name and compare(attr["Value"], value)
-                ]
-                or (
-                    name in inherent_attributes
-                    and compare(inherent_attributes[name](user), value)
-                )
-            ]
+            user_pool_id, filt, limit=limit, pagination_token=token
+        )
         response: Dict[str, Any] = {
             "Users": [
                 user.to_json(extended=True, attributes_to_get=attributes_to_get)
diff --git a/moto/dynamodb/models/__init__.py b/moto/dynamodb/models/__init__.py
index d3d1a71e8..74e76f1fa 100644
--- a/moto/dynamodb/models/__init__.py
+++ b/moto/dynamodb/models/__init__.py
@@ -87,7 +87,7 @@ class DynamoDBBackend(BaseBackend):
         billing_mode: str,
         sse_specification: Optional[Dict[str, Any]],
         tags: List[Dict[str, str]],
-        deletion_protection_enabled: bool,
+        deletion_protection_enabled: Optional[bool],
     ) -> Table:
         if name in self.tables:
             raise ResourceInUseException(f"Table already exists: {name}")
@@ -182,7 +182,7 @@ class DynamoDBBackend(BaseBackend):
         throughput: Dict[str, Any],
         billing_mode: str,
         stream_spec: Dict[str, Any],
-        deletion_protection_enabled: bool,
+        deletion_protection_enabled: Optional[bool],
     ) -> Table:
         table = self.get_table(name)
         if attr_definitions:
@@ -195,7 +195,7 @@ class DynamoDBBackend(BaseBackend):
             table.billing_mode = billing_mode
         if stream_spec:
             self.update_table_streams(table, stream_spec)
-        if deletion_protection_enabled:
+        if deletion_protection_enabled in {True, False}:
             table.deletion_protection_enabled = deletion_protection_enabled
         return table
 
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-northeast-1.json b/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-northeast-1.json
index 77bf920cd..95fcda986 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-northeast-1.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-northeast-1.json
@@ -7343,6 +7343,10 @@
   "InstanceType": "p4d.24xlarge",
   "Location": "apne1-az4"
  },
+ {
+  "InstanceType": "p5en.48xlarge",
+  "Location": "apne1-az4"
+ },
  {
   "InstanceType": "r3.2xlarge",
   "Location": "apne1-az4"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone-id/eu-west-3.json b/moto/ec2/resources/instance_type_offerings/availability-zone-id/eu-west-3.json
index dcd906aaf..f84d21a42 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone-id/eu-west-3.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone-id/eu-west-3.json
@@ -463,6 +463,26 @@
   "InstanceType": "g4dn.xlarge",
   "Location": "euw3-az1"
  },
+ {
+  "InstanceType": "hpc6id.32xlarge",
+  "Location": "euw3-az1"
+ },
+ {
+  "InstanceType": "hpc7a.12xlarge",
+  "Location": "euw3-az1"
+ },
+ {
+  "InstanceType": "hpc7a.24xlarge",
+  "Location": "euw3-az1"
+ },
+ {
+  "InstanceType": "hpc7a.48xlarge",
+  "Location": "euw3-az1"
+ },
+ {
+  "InstanceType": "hpc7a.96xlarge",
+  "Location": "euw3-az1"
+ },
  {
   "InstanceType": "i3.16xlarge",
   "Location": "euw3-az1"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone-id/us-east-1.json b/moto/ec2/resources/instance_type_offerings/availability-zone-id/us-east-1.json
index 55ba62e8e..95f6f704f 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone-id/us-east-1.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone-id/us-east-1.json
@@ -1103,6 +1103,42 @@
   "InstanceType": "i4i.xlarge",
   "Location": "use1-az1"
  },
+ {
+  "InstanceType": "i7ie.12xlarge",
+  "Location": "use1-az1"
+ },
+ {
+  "InstanceType": "i7ie.18xlarge",
+  "Location": "use1-az1"
+ },
+ {
+  "InstanceType": "i7ie.24xlarge",
+  "Location": "use1-az1"
+ },
+ {
+  "InstanceType": "i7ie.2xlarge",
+  "Location": "use1-az1"
+ },
+ {
+  "InstanceType": "i7ie.3xlarge",
+  "Location": "use1-az1"
+ },
+ {
+  "InstanceType": "i7ie.48xlarge",
+  "Location": "use1-az1"
+ },
+ {
+  "InstanceType": "i7ie.6xlarge",
+  "Location": "use1-az1"
+ },
+ {
+  "InstanceType": "i7ie.large",
+  "Location": "use1-az1"
+ },
+ {
+  "InstanceType": "i7ie.xlarge",
+  "Location": "use1-az1"
+ },
  {
   "InstanceType": "im4gn.16xlarge",
   "Location": "use1-az1"
@@ -4331,6 +4367,78 @@
   "InstanceType": "i4i.xlarge",
   "Location": "use1-az2"
  },
+ {
+  "InstanceType": "i7ie.12xlarge",
+  "Location": "use1-az2"
+ },
+ {
+  "InstanceType": "i7ie.18xlarge",
+  "Location": "use1-az2"
+ },
+ {
+  "InstanceType": "i7ie.24xlarge",
+  "Location": "use1-az2"
+ },
+ {
+  "InstanceType": "i7ie.2xlarge",
+  "Location": "use1-az2"
+ },
+ {
+  "InstanceType": "i7ie.3xlarge",
+  "Location": "use1-az2"
+ },
+ {
+  "InstanceType": "i7ie.48xlarge",
+  "Location": "use1-az2"
+ },
+ {
+  "InstanceType": "i7ie.6xlarge",
+  "Location": "use1-az2"
+ },
+ {
+  "InstanceType": "i7ie.large",
+  "Location": "use1-az2"
+ },
+ {
+  "InstanceType": "i7ie.xlarge",
+  "Location": "use1-az2"
+ },
+ {
+  "InstanceType": "i8g.12xlarge",
+  "Location": "use1-az2"
+ },
+ {
+  "InstanceType": "i8g.16xlarge",
+  "Location": "use1-az2"
+ },
+ {
+  "InstanceType": "i8g.24xlarge",
+  "Location": "use1-az2"
+ },
+ {
+  "InstanceType": "i8g.2xlarge",
+  "Location": "use1-az2"
+ },
+ {
+  "InstanceType": "i8g.4xlarge",
+  "Location": "use1-az2"
+ },
+ {
+  "InstanceType": "i8g.8xlarge",
+  "Location": "use1-az2"
+ },
+ {
+  "InstanceType": "i8g.large",
+  "Location": "use1-az2"
+ },
+ {
+  "InstanceType": "i8g.metal-24xl",
+  "Location": "use1-az2"
+ },
+ {
+  "InstanceType": "i8g.xlarge",
+  "Location": "use1-az2"
+ },
  {
   "InstanceType": "im4gn.16xlarge",
   "Location": "use1-az2"
@@ -7807,6 +7915,78 @@
   "InstanceType": "i4i.xlarge",
   "Location": "use1-az4"
  },
+ {
+  "InstanceType": "i7ie.12xlarge",
+  "Location": "use1-az4"
+ },
+ {
+  "InstanceType": "i7ie.18xlarge",
+  "Location": "use1-az4"
+ },
+ {
+  "InstanceType": "i7ie.24xlarge",
+  "Location": "use1-az4"
+ },
+ {
+  "InstanceType": "i7ie.2xlarge",
+  "Location": "use1-az4"
+ },
+ {
+  "InstanceType": "i7ie.3xlarge",
+  "Location": "use1-az4"
+ },
+ {
+  "InstanceType": "i7ie.48xlarge",
+  "Location": "use1-az4"
+ },
+ {
+  "InstanceType": "i7ie.6xlarge",
+  "Location": "use1-az4"
+ },
+ {
+  "InstanceType": "i7ie.large",
+  "Location": "use1-az4"
+ },
+ {
+  "InstanceType": "i7ie.xlarge",
+  "Location": "use1-az4"
+ },
+ {
+  "InstanceType": "i8g.12xlarge",
+  "Location": "use1-az4"
+ },
+ {
+  "InstanceType": "i8g.16xlarge",
+  "Location": "use1-az4"
+ },
+ {
+  "InstanceType": "i8g.24xlarge",
+  "Location": "use1-az4"
+ },
+ {
+  "InstanceType": "i8g.2xlarge",
+  "Location": "use1-az4"
+ },
+ {
+  "InstanceType": "i8g.4xlarge",
+  "Location": "use1-az4"
+ },
+ {
+  "InstanceType": "i8g.8xlarge",
+  "Location": "use1-az4"
+ },
+ {
+  "InstanceType": "i8g.large",
+  "Location": "use1-az4"
+ },
+ {
+  "InstanceType": "i8g.metal-24xl",
+  "Location": "use1-az4"
+ },
+ {
+  "InstanceType": "i8g.xlarge",
+  "Location": "use1-az4"
+ },
  {
   "InstanceType": "im4gn.16xlarge",
   "Location": "use1-az4"
@@ -10799,6 +10979,42 @@
   "InstanceType": "i4i.xlarge",
   "Location": "use1-az5"
  },
+ {
+  "InstanceType": "i7ie.12xlarge",
+  "Location": "use1-az5"
+ },
+ {
+  "InstanceType": "i7ie.18xlarge",
+  "Location": "use1-az5"
+ },
+ {
+  "InstanceType": "i7ie.24xlarge",
+  "Location": "use1-az5"
+ },
+ {
+  "InstanceType": "i7ie.2xlarge",
+  "Location": "use1-az5"
+ },
+ {
+  "InstanceType": "i7ie.3xlarge",
+  "Location": "use1-az5"
+ },
+ {
+  "InstanceType": "i7ie.48xlarge",
+  "Location": "use1-az5"
+ },
+ {
+  "InstanceType": "i7ie.6xlarge",
+  "Location": "use1-az5"
+ },
+ {
+  "InstanceType": "i7ie.large",
+  "Location": "use1-az5"
+ },
+ {
+  "InstanceType": "i7ie.xlarge",
+  "Location": "use1-az5"
+ },
  {
   "InstanceType": "inf1.24xlarge",
   "Location": "use1-az5"
@@ -13707,6 +13923,78 @@
   "InstanceType": "i4i.xlarge",
   "Location": "use1-az6"
  },
+ {
+  "InstanceType": "i7ie.12xlarge",
+  "Location": "use1-az6"
+ },
+ {
+  "InstanceType": "i7ie.18xlarge",
+  "Location": "use1-az6"
+ },
+ {
+  "InstanceType": "i7ie.24xlarge",
+  "Location": "use1-az6"
+ },
+ {
+  "InstanceType": "i7ie.2xlarge",
+  "Location": "use1-az6"
+ },
+ {
+  "InstanceType": "i7ie.3xlarge",
+  "Location": "use1-az6"
+ },
+ {
+  "InstanceType": "i7ie.48xlarge",
+  "Location": "use1-az6"
+ },
+ {
+  "InstanceType": "i7ie.6xlarge",
+  "Location": "use1-az6"
+ },
+ {
+  "InstanceType": "i7ie.large",
+  "Location": "use1-az6"
+ },
+ {
+  "InstanceType": "i7ie.xlarge",
+  "Location": "use1-az6"
+ },
+ {
+  "InstanceType": "i8g.12xlarge",
+  "Location": "use1-az6"
+ },
+ {
+  "InstanceType": "i8g.16xlarge",
+  "Location": "use1-az6"
+ },
+ {
+  "InstanceType": "i8g.24xlarge",
+  "Location": "use1-az6"
+ },
+ {
+  "InstanceType": "i8g.2xlarge",
+  "Location": "use1-az6"
+ },
+ {
+  "InstanceType": "i8g.4xlarge",
+  "Location": "use1-az6"
+ },
+ {
+  "InstanceType": "i8g.8xlarge",
+  "Location": "use1-az6"
+ },
+ {
+  "InstanceType": "i8g.large",
+  "Location": "use1-az6"
+ },
+ {
+  "InstanceType": "i8g.metal-24xl",
+  "Location": "use1-az6"
+ },
+ {
+  "InstanceType": "i8g.xlarge",
+  "Location": "use1-az6"
+ },
  {
   "InstanceType": "im4gn.16xlarge",
   "Location": "use1-az6"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone-id/us-east-2.json b/moto/ec2/resources/instance_type_offerings/availability-zone-id/us-east-2.json
index c0186215d..aabc8c280 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone-id/us-east-2.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone-id/us-east-2.json
@@ -2895,6 +2895,10 @@
   "InstanceType": "t4g.xlarge",
   "Location": "use2-az1"
  },
+ {
+  "InstanceType": "trn2.48xlarge",
+  "Location": "use2-az1"
+ },
  {
   "InstanceType": "u-12tb1.112xlarge",
   "Location": "use2-az1"
@@ -5063,6 +5067,10 @@
   "InstanceType": "p5.48xlarge",
   "Location": "use2-az2"
  },
+ {
+  "InstanceType": "p5en.48xlarge",
+  "Location": "use2-az2"
+ },
  {
   "InstanceType": "r3.2xlarge",
   "Location": "use2-az2"
@@ -8063,6 +8071,10 @@
   "InstanceType": "p5e.48xlarge",
   "Location": "use2-az3"
  },
+ {
+  "InstanceType": "p5en.48xlarge",
+  "Location": "use2-az3"
+ },
  {
   "InstanceType": "r3.2xlarge",
   "Location": "use2-az3"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone-id/us-west-2.json b/moto/ec2/resources/instance_type_offerings/availability-zone-id/us-west-2.json
index d52464cde..7005e3510 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone-id/us-west-2.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone-id/us-west-2.json
@@ -1151,6 +1151,42 @@
   "InstanceType": "i4i.xlarge",
   "Location": "usw2-az1"
  },
+ {
+  "InstanceType": "i8g.12xlarge",
+  "Location": "usw2-az1"
+ },
+ {
+  "InstanceType": "i8g.16xlarge",
+  "Location": "usw2-az1"
+ },
+ {
+  "InstanceType": "i8g.24xlarge",
+  "Location": "usw2-az1"
+ },
+ {
+  "InstanceType": "i8g.2xlarge",
+  "Location": "usw2-az1"
+ },
+ {
+  "InstanceType": "i8g.4xlarge",
+  "Location": "usw2-az1"
+ },
+ {
+  "InstanceType": "i8g.8xlarge",
+  "Location": "usw2-az1"
+ },
+ {
+  "InstanceType": "i8g.large",
+  "Location": "usw2-az1"
+ },
+ {
+  "InstanceType": "i8g.metal-24xl",
+  "Location": "usw2-az1"
+ },
+ {
+  "InstanceType": "i8g.xlarge",
+  "Location": "usw2-az1"
+ },
  {
   "InstanceType": "im4gn.16xlarge",
   "Location": "usw2-az1"
@@ -4427,6 +4463,42 @@
   "InstanceType": "i4i.xlarge",
   "Location": "usw2-az2"
  },
+ {
+  "InstanceType": "i8g.12xlarge",
+  "Location": "usw2-az2"
+ },
+ {
+  "InstanceType": "i8g.16xlarge",
+  "Location": "usw2-az2"
+ },
+ {
+  "InstanceType": "i8g.24xlarge",
+  "Location": "usw2-az2"
+ },
+ {
+  "InstanceType": "i8g.2xlarge",
+  "Location": "usw2-az2"
+ },
+ {
+  "InstanceType": "i8g.4xlarge",
+  "Location": "usw2-az2"
+ },
+ {
+  "InstanceType": "i8g.8xlarge",
+  "Location": "usw2-az2"
+ },
+ {
+  "InstanceType": "i8g.large",
+  "Location": "usw2-az2"
+ },
+ {
+  "InstanceType": "i8g.metal-24xl",
+  "Location": "usw2-az2"
+ },
+ {
+  "InstanceType": "i8g.xlarge",
+  "Location": "usw2-az2"
+ },
  {
   "InstanceType": "im4gn.16xlarge",
   "Location": "usw2-az2"
@@ -5359,6 +5431,10 @@
   "InstanceType": "p5.48xlarge",
   "Location": "usw2-az2"
  },
+ {
+  "InstanceType": "p5en.48xlarge",
+  "Location": "usw2-az2"
+ },
  {
   "InstanceType": "r3.2xlarge",
   "Location": "usw2-az2"
@@ -7627,6 +7703,42 @@
   "InstanceType": "i4i.xlarge",
   "Location": "usw2-az3"
  },
+ {
+  "InstanceType": "i8g.12xlarge",
+  "Location": "usw2-az3"
+ },
+ {
+  "InstanceType": "i8g.16xlarge",
+  "Location": "usw2-az3"
+ },
+ {
+  "InstanceType": "i8g.24xlarge",
+  "Location": "usw2-az3"
+ },
+ {
+  "InstanceType": "i8g.2xlarge",
+  "Location": "usw2-az3"
+ },
+ {
+  "InstanceType": "i8g.4xlarge",
+  "Location": "usw2-az3"
+ },
+ {
+  "InstanceType": "i8g.8xlarge",
+  "Location": "usw2-az3"
+ },
+ {
+  "InstanceType": "i8g.large",
+  "Location": "usw2-az3"
+ },
+ {
+  "InstanceType": "i8g.metal-24xl",
+  "Location": "usw2-az3"
+ },
+ {
+  "InstanceType": "i8g.xlarge",
+  "Location": "usw2-az3"
+ },
  {
   "InstanceType": "im4gn.16xlarge",
   "Location": "usw2-az3"
@@ -10639,6 +10751,42 @@
   "InstanceType": "i4i.xlarge",
   "Location": "usw2-az4"
  },
+ {
+  "InstanceType": "i8g.12xlarge",
+  "Location": "usw2-az4"
+ },
+ {
+  "InstanceType": "i8g.16xlarge",
+  "Location": "usw2-az4"
+ },
+ {
+  "InstanceType": "i8g.24xlarge",
+  "Location": "usw2-az4"
+ },
+ {
+  "InstanceType": "i8g.2xlarge",
+  "Location": "usw2-az4"
+ },
+ {
+  "InstanceType": "i8g.4xlarge",
+  "Location": "usw2-az4"
+ },
+ {
+  "InstanceType": "i8g.8xlarge",
+  "Location": "usw2-az4"
+ },
+ {
+  "InstanceType": "i8g.large",
+  "Location": "usw2-az4"
+ },
+ {
+  "InstanceType": "i8g.metal-24xl",
+  "Location": "usw2-az4"
+ },
+ {
+  "InstanceType": "i8g.xlarge",
+  "Location": "usw2-az4"
+ },
  {
   "InstanceType": "inf1.24xlarge",
   "Location": "usw2-az4"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone/ap-northeast-1.json b/moto/ec2/resources/instance_type_offerings/availability-zone/ap-northeast-1.json
index 70a4c00f9..b85d4200e 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone/ap-northeast-1.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone/ap-northeast-1.json
@@ -1907,6 +1907,10 @@
   "InstanceType": "p4d.24xlarge",
   "Location": "ap-northeast-1a"
  },
+ {
+  "InstanceType": "p5en.48xlarge",
+  "Location": "ap-northeast-1a"
+ },
  {
   "InstanceType": "r3.2xlarge",
   "Location": "ap-northeast-1a"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone/eu-west-3.json b/moto/ec2/resources/instance_type_offerings/availability-zone/eu-west-3.json
index 08f78075e..630cc9a88 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone/eu-west-3.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone/eu-west-3.json
@@ -463,6 +463,26 @@
   "InstanceType": "g4dn.xlarge",
   "Location": "eu-west-3a"
  },
+ {
+  "InstanceType": "hpc6id.32xlarge",
+  "Location": "eu-west-3a"
+ },
+ {
+  "InstanceType": "hpc7a.12xlarge",
+  "Location": "eu-west-3a"
+ },
+ {
+  "InstanceType": "hpc7a.24xlarge",
+  "Location": "eu-west-3a"
+ },
+ {
+  "InstanceType": "hpc7a.48xlarge",
+  "Location": "eu-west-3a"
+ },
+ {
+  "InstanceType": "hpc7a.96xlarge",
+  "Location": "eu-west-3a"
+ },
  {
   "InstanceType": "i3.16xlarge",
   "Location": "eu-west-3a"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone/us-east-1.json b/moto/ec2/resources/instance_type_offerings/availability-zone/us-east-1.json
index 5b9912052..b5080f575 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone/us-east-1.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone/us-east-1.json
@@ -1175,6 +1175,78 @@
   "InstanceType": "i4i.xlarge",
   "Location": "us-east-1a"
  },
+ {
+  "InstanceType": "i7ie.12xlarge",
+  "Location": "us-east-1a"
+ },
+ {
+  "InstanceType": "i7ie.18xlarge",
+  "Location": "us-east-1a"
+ },
+ {
+  "InstanceType": "i7ie.24xlarge",
+  "Location": "us-east-1a"
+ },
+ {
+  "InstanceType": "i7ie.2xlarge",
+  "Location": "us-east-1a"
+ },
+ {
+  "InstanceType": "i7ie.3xlarge",
+  "Location": "us-east-1a"
+ },
+ {
+  "InstanceType": "i7ie.48xlarge",
+  "Location": "us-east-1a"
+ },
+ {
+  "InstanceType": "i7ie.6xlarge",
+  "Location": "us-east-1a"
+ },
+ {
+  "InstanceType": "i7ie.large",
+  "Location": "us-east-1a"
+ },
+ {
+  "InstanceType": "i7ie.xlarge",
+  "Location": "us-east-1a"
+ },
+ {
+  "InstanceType": "i8g.12xlarge",
+  "Location": "us-east-1a"
+ },
+ {
+  "InstanceType": "i8g.16xlarge",
+  "Location": "us-east-1a"
+ },
+ {
+  "InstanceType": "i8g.24xlarge",
+  "Location": "us-east-1a"
+ },
+ {
+  "InstanceType": "i8g.2xlarge",
+  "Location": "us-east-1a"
+ },
+ {
+  "InstanceType": "i8g.4xlarge",
+  "Location": "us-east-1a"
+ },
+ {
+  "InstanceType": "i8g.8xlarge",
+  "Location": "us-east-1a"
+ },
+ {
+  "InstanceType": "i8g.large",
+  "Location": "us-east-1a"
+ },
+ {
+  "InstanceType": "i8g.metal-24xl",
+  "Location": "us-east-1a"
+ },
+ {
+  "InstanceType": "i8g.xlarge",
+  "Location": "us-east-1a"
+ },
  {
   "InstanceType": "im4gn.16xlarge",
   "Location": "us-east-1a"
@@ -4411,6 +4483,78 @@
   "InstanceType": "i4i.xlarge",
   "Location": "us-east-1b"
  },
+ {
+  "InstanceType": "i7ie.12xlarge",
+  "Location": "us-east-1b"
+ },
+ {
+  "InstanceType": "i7ie.18xlarge",
+  "Location": "us-east-1b"
+ },
+ {
+  "InstanceType": "i7ie.24xlarge",
+  "Location": "us-east-1b"
+ },
+ {
+  "InstanceType": "i7ie.2xlarge",
+  "Location": "us-east-1b"
+ },
+ {
+  "InstanceType": "i7ie.3xlarge",
+  "Location": "us-east-1b"
+ },
+ {
+  "InstanceType": "i7ie.48xlarge",
+  "Location": "us-east-1b"
+ },
+ {
+  "InstanceType": "i7ie.6xlarge",
+  "Location": "us-east-1b"
+ },
+ {
+  "InstanceType": "i7ie.large",
+  "Location": "us-east-1b"
+ },
+ {
+  "InstanceType": "i7ie.xlarge",
+  "Location": "us-east-1b"
+ },
+ {
+  "InstanceType": "i8g.12xlarge",
+  "Location": "us-east-1b"
+ },
+ {
+  "InstanceType": "i8g.16xlarge",
+  "Location": "us-east-1b"
+ },
+ {
+  "InstanceType": "i8g.24xlarge",
+  "Location": "us-east-1b"
+ },
+ {
+  "InstanceType": "i8g.2xlarge",
+  "Location": "us-east-1b"
+ },
+ {
+  "InstanceType": "i8g.4xlarge",
+  "Location": "us-east-1b"
+ },
+ {
+  "InstanceType": "i8g.8xlarge",
+  "Location": "us-east-1b"
+ },
+ {
+  "InstanceType": "i8g.large",
+  "Location": "us-east-1b"
+ },
+ {
+  "InstanceType": "i8g.metal-24xl",
+  "Location": "us-east-1b"
+ },
+ {
+  "InstanceType": "i8g.xlarge",
+  "Location": "us-east-1b"
+ },
  {
   "InstanceType": "im4gn.16xlarge",
   "Location": "us-east-1b"
@@ -7711,6 +7855,78 @@
   "InstanceType": "i4i.xlarge",
   "Location": "us-east-1c"
  },
+ {
+  "InstanceType": "i7ie.12xlarge",
+  "Location": "us-east-1c"
+ },
+ {
+  "InstanceType": "i7ie.18xlarge",
+  "Location": "us-east-1c"
+ },
+ {
+  "InstanceType": "i7ie.24xlarge",
+  "Location": "us-east-1c"
+ },
+ {
+  "InstanceType": "i7ie.2xlarge",
+  "Location": "us-east-1c"
+ },
+ {
+  "InstanceType": "i7ie.3xlarge",
+  "Location": "us-east-1c"
+ },
+ {
+  "InstanceType": "i7ie.48xlarge",
+  "Location": "us-east-1c"
+ },
+ {
+  "InstanceType": "i7ie.6xlarge",
+  "Location": "us-east-1c"
+ },
+ {
+  "InstanceType": "i7ie.large",
+  "Location": "us-east-1c"
+ },
+ {
+  "InstanceType": "i7ie.xlarge",
+  "Location": "us-east-1c"
+ },
+ {
+  "InstanceType": "i8g.12xlarge",
+  "Location": "us-east-1c"
+ },
+ {
+  "InstanceType": "i8g.16xlarge",
+  "Location": "us-east-1c"
+ },
+ {
+  "InstanceType": "i8g.24xlarge",
+  "Location": "us-east-1c"
+ },
+ {
+  "InstanceType": "i8g.2xlarge",
+  "Location": "us-east-1c"
+ },
+ {
+  "InstanceType": "i8g.4xlarge",
+  "Location": "us-east-1c"
+ },
+ {
+  "InstanceType": "i8g.8xlarge",
+  "Location": "us-east-1c"
+ },
+ {
+  "InstanceType": "i8g.large",
+  "Location": "us-east-1c"
+ },
+ {
+  "InstanceType": "i8g.metal-24xl",
+  "Location": "us-east-1c"
+ },
+ {
+  "InstanceType": "i8g.xlarge",
+  "Location": "us-east-1c"
+ },
  {
   "InstanceType": "im4gn.16xlarge",
   "Location": "us-east-1c"
@@ -10951,6 +11167,42 @@
   "InstanceType": "i4i.xlarge",
   "Location": "us-east-1d"
  },
+ {
+  "InstanceType": "i7ie.12xlarge",
+  "Location": "us-east-1d"
+ },
+ {
+  "InstanceType": "i7ie.18xlarge",
+  "Location": "us-east-1d"
+ },
+ {
+  "InstanceType": "i7ie.24xlarge",
+  "Location": "us-east-1d"
+ },
+ {
+  "InstanceType": "i7ie.2xlarge",
+  "Location": "us-east-1d"
+ },
+ {
+  "InstanceType": "i7ie.3xlarge",
+  "Location": "us-east-1d"
+ },
+ {
+  "InstanceType": "i7ie.48xlarge",
+  "Location": "us-east-1d"
+ },
+ {
+  "InstanceType": "i7ie.6xlarge",
+  "Location": "us-east-1d"
+ },
+ {
+  "InstanceType": "i7ie.large",
+  "Location": "us-east-1d"
+ },
+ {
+  "InstanceType": "i7ie.xlarge",
+  "Location": "us-east-1d"
+ },
  {
   "InstanceType": "im4gn.16xlarge",
   "Location": "us-east-1d"
@@ -14119,6 +14371,42 @@
   "InstanceType": "i4i.xlarge",
   "Location": "us-east-1f"
  },
+ {
+  "InstanceType": "i7ie.12xlarge",
+  "Location": "us-east-1f"
+ },
+ {
+  "InstanceType": "i7ie.18xlarge",
+  "Location": "us-east-1f"
+ },
+ {
+  "InstanceType": "i7ie.24xlarge",
+  "Location": "us-east-1f"
+ },
+ {
+  "InstanceType": "i7ie.2xlarge",
+  "Location": "us-east-1f"
+ },
+ {
+  "InstanceType": "i7ie.3xlarge",
+  "Location": "us-east-1f"
+ },
+ {
+  "InstanceType": "i7ie.48xlarge",
+  "Location": "us-east-1f"
+ },
+ {
+  "InstanceType": "i7ie.6xlarge",
+  "Location": "us-east-1f"
+ },
+ {
+  "InstanceType": "i7ie.large",
+  "Location": "us-east-1f"
+ },
+ {
+  "InstanceType": "i7ie.xlarge",
+  "Location": "us-east-1f"
+ },
  {
   "InstanceType": "inf1.24xlarge",
   "Location": "us-east-1f"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone/us-east-2.json b/moto/ec2/resources/instance_type_offerings/availability-zone/us-east-2.json
index b9aec2207..ab2913ec9 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone/us-east-2.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone/us-east-2.json
@@ -2895,6 +2895,10 @@
   "InstanceType": "t4g.xlarge",
   "Location": "us-east-2a"
  },
+ {
+  "InstanceType": "trn2.48xlarge",
+  "Location": "us-east-2a"
+ },
  {
   "InstanceType": "u-12tb1.112xlarge",
   "Location": "us-east-2a"
@@ -5063,6 +5067,10 @@
   "InstanceType": "p5.48xlarge",
   "Location": "us-east-2b"
  },
+ {
+  "InstanceType": "p5en.48xlarge",
+  "Location": "us-east-2b"
+ },
  {
   "InstanceType": "r3.2xlarge",
   "Location": "us-east-2b"
@@ -8063,6 +8071,10 @@
   "InstanceType": "p5e.48xlarge",
   "Location": "us-east-2c"
  },
+ {
+  "InstanceType": "p5en.48xlarge",
+  "Location": "us-east-2c"
+ },
  {
   "InstanceType": "r3.2xlarge",
   "Location": "us-east-2c"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone/us-west-2.json b/moto/ec2/resources/instance_type_offerings/availability-zone/us-west-2.json
index 012fa9a26..fb2473d26 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone/us-west-2.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone/us-west-2.json
@@ -1115,6 +1115,42 @@
   "InstanceType": "i4i.xlarge",
   "Location": "us-west-2a"
  },
+ {
+  "InstanceType": "i8g.12xlarge",
+  "Location": "us-west-2a"
+ },
+ {
+  "InstanceType": "i8g.16xlarge",
+  "Location": "us-west-2a"
+ },
+ {
+  "InstanceType": "i8g.24xlarge",
+  "Location": "us-west-2a"
+ },
+ {
+  "InstanceType": "i8g.2xlarge",
+  "Location": "us-west-2a"
+ },
+ {
+  "InstanceType": "i8g.4xlarge",
+  "Location": "us-west-2a"
+ },
+ {
+  "InstanceType": "i8g.8xlarge",
+  "Location": "us-west-2a"
+ },
+ {
+  "InstanceType": "i8g.large",
+  "Location": "us-west-2a"
+ },
+ {
+  "InstanceType": "i8g.metal-24xl",
+  "Location": "us-west-2a"
+ },
+ {
+  "InstanceType": "i8g.xlarge",
+  "Location": "us-west-2a"
+ },
  {
   "InstanceType": "im4gn.16xlarge",
   "Location": "us-west-2a"
@@ -2047,6 +2083,10 @@
   "InstanceType": "p5.48xlarge",
   "Location": "us-west-2a"
  },
+ {
+  "InstanceType": "p5en.48xlarge",
+  "Location": "us-west-2a"
+ },
  {
   "InstanceType": "r3.2xlarge",
   "Location": "us-west-2a"
@@ -4327,6 +4367,42 @@
   "InstanceType": "i4i.xlarge",
   "Location": "us-west-2b"
  },
+ {
+  "InstanceType": "i8g.12xlarge",
+  "Location": "us-west-2b"
+ },
+ {
+  "InstanceType": "i8g.16xlarge",
+  "Location": "us-west-2b"
+ },
+ {
+  "InstanceType": "i8g.24xlarge",
+  "Location": "us-west-2b"
+ },
+ {
+  "InstanceType": "i8g.2xlarge",
+  "Location": "us-west-2b"
+ },
+ {
+  "InstanceType": "i8g.4xlarge",
+  "Location": "us-west-2b"
+ },
+ {
+  "InstanceType": "i8g.8xlarge",
+  "Location": "us-west-2b"
+ },
+ {
+  "InstanceType": "i8g.large",
+  "Location": "us-west-2b"
+ },
+ {
+  "InstanceType": "i8g.metal-24xl",
+  "Location": "us-west-2b"
+ },
+ {
+  "InstanceType": "i8g.xlarge",
+  "Location": "us-west-2b"
+ },
  {
   "InstanceType": "im4gn.16xlarge",
   "Location": "us-west-2b"
@@ -7627,6 +7703,42 @@
   "InstanceType": "i4i.xlarge",
   "Location": "us-west-2c"
  },
+ {
+  "InstanceType": "i8g.12xlarge",
+  "Location": "us-west-2c"
+ },
+ {
+  "InstanceType": "i8g.16xlarge",
+  "Location": "us-west-2c"
+ },
+ {
+  "InstanceType": "i8g.24xlarge",
+  "Location": "us-west-2c"
+ },
+ {
+  "InstanceType": "i8g.2xlarge",
+  "Location": "us-west-2c"
+ },
+ {
+  "InstanceType": "i8g.4xlarge",
+  "Location": "us-west-2c"
+ },
+ {
+  "InstanceType": "i8g.8xlarge",
+  "Location": "us-west-2c"
+ },
+ {
+  "InstanceType": "i8g.large",
+  "Location": "us-west-2c"
+ },
+ {
+  "InstanceType": "i8g.metal-24xl",
+  "Location": "us-west-2c"
+ },
+ {
+  "InstanceType": "i8g.xlarge",
+  "Location": "us-west-2c"
+ },
  {
   "InstanceType": "im4gn.16xlarge",
   "Location": "us-west-2c"
@@ -10639,6 +10751,42 @@
   "InstanceType": "i4i.xlarge",
   "Location": "us-west-2d"
  },
+ {
+  "InstanceType": "i8g.12xlarge",
+  "Location": "us-west-2d"
+ },
+ {
+  "InstanceType": "i8g.16xlarge",
+  "Location": "us-west-2d"
+ },
+ {
+  "InstanceType": "i8g.24xlarge",
+  "Location": "us-west-2d"
+ },
+ {
+  "InstanceType": "i8g.2xlarge",
+  "Location": "us-west-2d"
+ },
+ {
+  "InstanceType": "i8g.4xlarge",
+  "Location": "us-west-2d"
+ },
+ {
+  "InstanceType": "i8g.8xlarge",
+  "Location": "us-west-2d"
+ },
+ {
+  "InstanceType": "i8g.large",
+  "Location": "us-west-2d"
+ },
+ {
+  "InstanceType": "i8g.metal-24xl",
+  "Location": "us-west-2d"
+ },
+ {
+  "InstanceType": "i8g.xlarge",
+  "Location": "us-west-2d"
+ },
  {
   "InstanceType": "inf1.24xlarge",
   "Location": "us-west-2d"
diff --git a/moto/ec2/resources/instance_type_offerings/region/ap-northeast-1.json b/moto/ec2/resources/instance_type_offerings/region/ap-northeast-1.json
index d3ad93217..4c322180c 100644
--- a/moto/ec2/resources/instance_type_offerings/region/ap-northeast-1.json
+++ b/moto/ec2/resources/instance_type_offerings/region/ap-northeast-1.json
@@ -1935,6 +1935,10 @@
   "InstanceType": "p5.48xlarge",
   "Location": "ap-northeast-1"
  },
+ {
+  "InstanceType": "p5en.48xlarge",
+  "Location": "ap-northeast-1"
+ },
  {
   "InstanceType": "r3.2xlarge",
   "Location": "ap-northeast-1"
diff --git a/moto/ec2/resources/instance_type_offerings/region/eu-west-3.json b/moto/ec2/resources/instance_type_offerings/region/eu-west-3.json
index c3affc3f4..d82d86326 100644
--- a/moto/ec2/resources/instance_type_offerings/region/eu-west-3.json
+++ b/moto/ec2/resources/instance_type_offerings/region/eu-west-3.json
@@ -463,6 +463,26 @@
   "InstanceType": "g4dn.xlarge",
   "Location": "eu-west-3"
  },
+ {
+  "InstanceType": "hpc6id.32xlarge",
+  "Location": "eu-west-3"
+ },
+ {
+  "InstanceType": "hpc7a.12xlarge",
+  "Location": "eu-west-3"
+ },
+ {
+  "InstanceType": "hpc7a.24xlarge",
+  "Location": "eu-west-3"
+ },
+ {
+  "InstanceType": "hpc7a.48xlarge",
+  "Location": "eu-west-3"
+ },
+ {
+  "InstanceType": "hpc7a.96xlarge",
+  "Location": "eu-west-3"
+ },
  {
   "InstanceType": "i3.16xlarge",
   "Location": "eu-west-3"
diff --git a/moto/ec2/resources/instance_type_offerings/region/us-east-1.json b/moto/ec2/resources/instance_type_offerings/region/us-east-1.json
index 7f4f0081a..abfc7366c 100644
--- a/moto/ec2/resources/instance_type_offerings/region/us-east-1.json
+++ b/moto/ec2/resources/instance_type_offerings/region/us-east-1.json
@@ -1187,6 +1187,78 @@
   "InstanceType": "i4i.xlarge",
   "Location": "us-east-1"
  },
+ {
+  "InstanceType": "i7ie.12xlarge",
+  "Location": "us-east-1"
+ },
+ {
+  "InstanceType": "i7ie.18xlarge",
+  "Location": "us-east-1"
+ },
+ {
+  "InstanceType": "i7ie.24xlarge",
+  "Location": "us-east-1"
+ },
+ {
+  "InstanceType": "i7ie.2xlarge",
+  "Location": "us-east-1"
+ },
+ {
+  "InstanceType": "i7ie.3xlarge",
+  "Location": "us-east-1"
+ },
+ {
+  "InstanceType": "i7ie.48xlarge",
+  "Location": "us-east-1"
+ },
+ {
+  "InstanceType": "i7ie.6xlarge",
+  "Location": "us-east-1"
+ },
+ {
+  "InstanceType": "i7ie.large",
+  "Location": "us-east-1"
+ },
+ {
+  "InstanceType": "i7ie.xlarge",
+  "Location": "us-east-1"
+ },
+ {
+  "InstanceType": "i8g.12xlarge",
+  "Location": "us-east-1"
+ },
+ {
+  "InstanceType": "i8g.16xlarge",
+  "Location": "us-east-1"
+ },
+ {
+  "InstanceType": "i8g.24xlarge",
+  "Location": "us-east-1"
+ },
+ {
+  "InstanceType": "i8g.2xlarge",
+  "Location": "us-east-1"
+ },
+ {
+  "InstanceType": "i8g.4xlarge",
+  "Location": "us-east-1"
+ },
+ {
+  "InstanceType": "i8g.8xlarge",
+  "Location": "us-east-1"
+ },
+ {
+  "InstanceType": "i8g.large",
+  "Location": "us-east-1"
+ },
+ {
+  "InstanceType": "i8g.metal-24xl",
+  "Location": "us-east-1"
+ },
+ {
+  "InstanceType": "i8g.xlarge",
+  "Location": "us-east-1"
+ },
  {
   "InstanceType": "im4gn.16xlarge",
   "Location": "us-east-1"
diff --git a/moto/ec2/resources/instance_type_offerings/region/us-east-2.json b/moto/ec2/resources/instance_type_offerings/region/us-east-2.json
index 0914efd41..ce1d64458 100644
--- a/moto/ec2/resources/instance_type_offerings/region/us-east-2.json
+++ b/moto/ec2/resources/instance_type_offerings/region/us-east-2.json
@@ -2007,6 +2007,10 @@
   "InstanceType": "p5e.48xlarge",
   "Location": "us-east-2"
  },
+ {
+  "InstanceType": "p5en.48xlarge",
+  "Location": "us-east-2"
+ },
  {
   "InstanceType": "r3.2xlarge",
   "Location": "us-east-2"
@@ -2947,6 +2951,10 @@
   "InstanceType": "trn1n.32xlarge",
   "Location": "us-east-2"
  },
+ {
+  "InstanceType": "trn2.48xlarge",
+  "Location": "us-east-2"
+ },
  {
   "InstanceType": "u-12tb1.112xlarge",
   "Location": "us-east-2"
diff --git a/moto/ec2/resources/instance_type_offerings/region/us-west-2.json b/moto/ec2/resources/instance_type_offerings/region/us-west-2.json
index da5aa5bb4..67935d11c 100644
--- a/moto/ec2/resources/instance_type_offerings/region/us-west-2.json
+++ b/moto/ec2/resources/instance_type_offerings/region/us-west-2.json
@@ -1179,6 +1179,42 @@
   "InstanceType": "i4i.xlarge",
   "Location": "us-west-2"
  },
+ {
+  "InstanceType": "i8g.12xlarge",
+  "Location": "us-west-2"
+ },
+ {
+  "InstanceType": "i8g.16xlarge",
+  "Location": "us-west-2"
+ },
+ {
+  "InstanceType": "i8g.24xlarge",
+  "Location": "us-west-2"
+ },
+ {
+  "InstanceType": "i8g.2xlarge",
+  "Location": "us-west-2"
+ },
+ {
+  "InstanceType": "i8g.4xlarge",
+  "Location": "us-west-2"
+ },
+ {
+  "InstanceType": "i8g.8xlarge",
+  "Location": "us-west-2"
+ },
+ {
+  "InstanceType": "i8g.large",
+  "Location": "us-west-2"
+ },
+ {
+  "InstanceType": "i8g.metal-24xl",
+  "Location": "us-west-2"
+ },
+ {
+  "InstanceType": "i8g.xlarge",
+  "Location": "us-west-2"
+ },
  {
   "InstanceType": "im4gn.16xlarge",
   "Location": "us-west-2"
@@ -2127,6 +2163,10 @@
   "InstanceType": "p5.48xlarge",
   "Location": "us-west-2"
  },
+ {
+  "InstanceType": "p5en.48xlarge",
+  "Location": "us-west-2"
+ },
  {
   "InstanceType": "r3.2xlarge",
   "Location": "us-west-2"
diff --git a/moto/ec2/resources/instance_types.json b/moto/ec2/resources/instance_types.json
index 8d2c93508..9fca7f407 100644
--- a/moto/ec2/resources/instance_types.json
+++ b/moto/ec2/resources/instance_types.json
@@ -34590,6 +34590,2392 @@
    ]
   }
  },
+ "i7ie.12xlarge": {
+  "AutoRecoverySupported": false,
+  "BareMetal": false,
+  "BurstablePerformanceSupported": false,
+  "CurrentGeneration": true,
+  "DedicatedHostsSupported": true,
+  "EbsInfo": {
+   "EbsOptimizedInfo": {
+    "BaselineBandwidthInMbps": 15000,
+    "BaselineIops": 60000,
+    "BaselineThroughputInMBps": 1875.0,
+    "MaximumBandwidthInMbps": 15000,
+    "MaximumIops": 60000,
+    "MaximumThroughputInMBps": 1875.0
+   },
+   "EbsOptimizedSupport": "default",
+   "EncryptionSupport": "supported",
+   "NvmeSupport": "required"
+  },
+  "FreeTierEligible": false,
+  "HibernationSupported": false,
+  "Hypervisor": "nitro",
+  "InstanceStorageInfo": {
+   "Disks": [
+    {
+     "Count": 4,
+     "SizeInGB": 7500,
+     "Type": "ssd"
+    }
+   ],
+   "EncryptionSupport": "required",
+   "NvmeSupport": "required",
+   "TotalSizeInGB": 30000
+  },
+  "InstanceStorageSupported": true,
+  "InstanceType": "i7ie.12xlarge",
+  "MemoryInfo": {
+   "SizeInMiB": 393216
+  },
+  "NetworkInfo": {
+   "DefaultNetworkCardIndex": 0,
+   "EfaSupported": false,
+   "EnaSrdSupported": false,
+   "EnaSupport": "required",
+   "EncryptionInTransitSupported": true,
+   "Ipv4AddressesPerInterface": 50,
+   "Ipv6AddressesPerInterface": 50,
+   "Ipv6Supported": true,
+   "MaximumNetworkCards": 1,
+   "MaximumNetworkInterfaces": 8,
+   "NetworkCards": [
+    {
+     "BaselineBandwidthInGbps": 25.0,
+     "MaximumNetworkInterfaces": 8,
+     "NetworkCardIndex": 0,
+     "NetworkPerformance": "Up to 50 Gigabit",
+     "PeakBandwidthInGbps": 50.0
+    }
+   ],
+   "NetworkPerformance": "Up to 50 Gigabit"
+  },
+  "NitroEnclavesSupport": "supported",
+  "NitroTpmInfo": {
+   "SupportedVersions": [
+    "2.0"
+   ]
+  },
+  "NitroTpmSupport": "supported",
+  "PhcSupport": "unsupported",
+  "PlacementGroupInfo": {
+   "SupportedStrategies": [
+    "cluster",
+    "partition",
+    "spread"
+   ]
+  },
+  "ProcessorInfo": {
+   "Manufacturer": "Intel",
+   "SupportedArchitectures": [
+    "x86_64"
+   ],
+   "SustainedClockSpeedInGhz": 3.6
+  },
+  "SupportedBootModes": [
+   "legacy-bios",
+   "uefi"
+  ],
+  "SupportedRootDeviceTypes": [
+   "ebs"
+  ],
+  "SupportedUsageClasses": [
+   "on-demand",
+   "spot"
+  ],
+  "SupportedVirtualizationTypes": [
+   "hvm"
+  ],
+  "VCpuInfo": {
+   "DefaultCores": 24,
+   "DefaultThreadsPerCore": 2,
+   "DefaultVCpus": 48,
+   "ValidCores": [
+    1,
+    2,
+    3,
+    4,
+    5,
+    6,
+    7,
+    8,
+    9,
+    10,
+    11,
+    12,
+    13,
+    14,
+    15,
+    16,
+    17,
+    18,
+    19,
+    20,
+    21,
+    22,
+    23,
+    24
+   ],
+   "ValidThreadsPerCore": [
+    1,
+    2
+   ]
+  }
+ },
+ "i7ie.18xlarge": {
+  "AutoRecoverySupported": false,
+  "BareMetal": false,
+  "BurstablePerformanceSupported": false,
+  "CurrentGeneration": true,
+  "DedicatedHostsSupported": true,
+  "EbsInfo": {
+   "EbsOptimizedInfo": {
+    "BaselineBandwidthInMbps": 22500,
+    "BaselineIops": 90000,
+    "BaselineThroughputInMBps": 2812.5,
+    "MaximumBandwidthInMbps": 22500,
+    "MaximumIops": 90000,
+    "MaximumThroughputInMBps": 2812.5
+   },
+   "EbsOptimizedSupport": "default",
+   "EncryptionSupport": "supported",
+   "NvmeSupport": "required"
+  },
+  "FreeTierEligible": false,
+  "HibernationSupported": false,
+  "Hypervisor": "nitro",
+  "InstanceStorageInfo": {
+   "Disks": [
+    {
+     "Count": 6,
+     "SizeInGB": 7500,
+     "Type": "ssd"
+    }
+   ],
+   "EncryptionSupport": "required",
+   "NvmeSupport": "required",
+   "TotalSizeInGB": 45000
+  },
+  "InstanceStorageSupported": true,
+  "InstanceType": "i7ie.18xlarge",
+  "MemoryInfo": {
+   "SizeInMiB": 589824
+  },
+  "NetworkInfo": {
+   "DefaultNetworkCardIndex": 0,
+   "EfaSupported": false,
+   "EnaSrdSupported": false,
+   "EnaSupport": "required",
+   "EncryptionInTransitSupported": true,
+   "Ipv4AddressesPerInterface": 50,
+   "Ipv6AddressesPerInterface": 50,
+   "Ipv6Supported": true,
+   "MaximumNetworkCards": 1,
+   "MaximumNetworkInterfaces": 15,
+   "NetworkCards": [
+    {
+     "BaselineBandwidthInGbps": 37.5,
+     "MaximumNetworkInterfaces": 15,
+     "NetworkCardIndex": 0,
+     "NetworkPerformance": "Up to 75 Gigabit",
+     "PeakBandwidthInGbps": 75.0
+    }
+   ],
+   "NetworkPerformance": "Up to 75 Gigabit"
+  },
+  "NitroEnclavesSupport": "unsupported",
+  "NitroTpmInfo": {
+   "SupportedVersions": [
+    "2.0"
+   ]
+  },
+  "NitroTpmSupport": "supported",
+  "PhcSupport": "unsupported",
+  "PlacementGroupInfo": {
+   "SupportedStrategies": [
+    "cluster",
+    "partition",
+    "spread"
+   ]
+  },
+  "ProcessorInfo": {
+   "Manufacturer": "Intel",
+   "SupportedArchitectures": [
+    "x86_64"
+   ],
+   "SustainedClockSpeedInGhz": 3.6
+  },
+  "SupportedBootModes": [
+   "legacy-bios",
+   "uefi"
+  ],
+  "SupportedRootDeviceTypes": [
+   "ebs"
+  ],
+  "SupportedUsageClasses": [
+   "on-demand",
+   "spot"
+  ],
+  "SupportedVirtualizationTypes": [
+   "hvm"
+  ],
+  "VCpuInfo": {
+   "DefaultCores": 36,
+   "DefaultThreadsPerCore": 2,
+   "DefaultVCpus": 72,
+   "ValidCores": [
+    1,
+    2,
+    3,
+    4,
+    5,
+    6,
+    7,
+    8,
+    9,
+    10,
+    11,
+    12,
+    13,
+    14,
+    15,
+    16,
+    17,
+    18,
+    19,
+    20,
+    21,
+    22,
+    23,
+    24,
+    25,
+    26,
+    27,
+    28,
+    29,
+    30,
+    31,
+    32,
+    33,
+    34,
+    35,
+    36
+   ],
+   "ValidThreadsPerCore": [
+    1,
+    2
+   ]
+  }
+ },
+ "i7ie.24xlarge": {
+  "AutoRecoverySupported": false,
+  "BareMetal": false,
+  "BurstablePerformanceSupported": false,
+  "CurrentGeneration": true,
+  "DedicatedHostsSupported": true,
+  "EbsInfo": {
+   "EbsOptimizedInfo": {
+    "BaselineBandwidthInMbps": 30000,
+    "BaselineIops": 120000,
+    "BaselineThroughputInMBps": 3750.0,
+    "MaximumBandwidthInMbps": 30000,
+    "MaximumIops": 120000,
+    "MaximumThroughputInMBps": 3750.0
+   },
+   "EbsOptimizedSupport": "default",
+   "EncryptionSupport": "supported",
+   "NvmeSupport": "required"
+  },
+  "FreeTierEligible": false,
+  "HibernationSupported": false,
+  "Hypervisor": "nitro",
+  "InstanceStorageInfo": {
+   "Disks": [
+    {
+     "Count": 8,
+     "SizeInGB": 7500,
+     "Type": "ssd"
+    }
+   ],
+   "EncryptionSupport": "required",
+   "NvmeSupport": "required",
+   "TotalSizeInGB": 60000
+  },
+  "InstanceStorageSupported": true,
+  "InstanceType": "i7ie.24xlarge",
+  "MemoryInfo": {
+   "SizeInMiB": 786432
+  },
+  "NetworkInfo": {
+   "DefaultNetworkCardIndex": 0,
+   "EfaSupported": false,
+   "EnaSrdSupported": false,
+   "EnaSupport": "required",
+   "EncryptionInTransitSupported": true,
+   "Ipv4AddressesPerInterface": 50,
+   "Ipv6AddressesPerInterface": 50,
+   "Ipv6Supported": true,
+   "MaximumNetworkCards": 1,
+   "MaximumNetworkInterfaces": 15,
+   "NetworkCards": [
+    {
+     "BaselineBandwidthInGbps": 50.0,
+     "MaximumNetworkInterfaces": 15,
+     "NetworkCardIndex": 0,
+     "NetworkPerformance": "Up to 100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    }
+   ],
+   "NetworkPerformance": "Up to 100 Gigabit"
+  },
+  "NitroEnclavesSupport": "unsupported",
+  "NitroTpmInfo": {
+   "SupportedVersions": [
+    "2.0"
+   ]
+  },
+  "NitroTpmSupport": "supported",
+  "PhcSupport": "unsupported",
+  "PlacementGroupInfo": {
+   "SupportedStrategies": [
+    "cluster",
+    "partition",
+    "spread"
+   ]
+  },
+  "ProcessorInfo": {
+   "Manufacturer": "Intel",
+   "SupportedArchitectures": [
+    "x86_64"
+   ],
+   "SustainedClockSpeedInGhz": 3.6
+  },
+  "SupportedBootModes": [
+   "legacy-bios",
+   "uefi"
+  ],
+  "SupportedRootDeviceTypes": [
+   "ebs"
+  ],
+  "SupportedUsageClasses": [
+   "on-demand",
+   "spot"
+  ],
+  "SupportedVirtualizationTypes": [
+   "hvm"
+  ],
+  "VCpuInfo": {
+   "DefaultCores": 48,
+   "DefaultThreadsPerCore": 2,
+   "DefaultVCpus": 96,
+   "ValidCores": [
+    1,
+    2,
+    3,
+    4,
+    5,
+    6,
+    7,
+    8,
+    9,
+    10,
+    11,
+    12,
+    13,
+    14,
+    15,
+    16,
+    17,
+    18,
+    19,
+    20,
+    21,
+    22,
+    23,
+    24,
+    25,
+    26,
+    27,
+    28,
+    29,
+    30,
+    31,
+    32,
+    33,
+    34,
+    35,
+    36,
+    37,
+    38,
+    39,
+    40,
+    41,
+    42,
+    43,
+    44,
+    45,
+    46,
+    47,
+    48
+   ],
+   "ValidThreadsPerCore": [
+    1,
+    2
+   ]
+  }
+ },
+ "i7ie.2xlarge": {
+  "AutoRecoverySupported": false,
+  "BareMetal": false,
+  "BurstablePerformanceSupported": false,
+  "CurrentGeneration": true,
+  "DedicatedHostsSupported": true,
+  "EbsInfo": {
+   "EbsOptimizedInfo": {
+    "BaselineBandwidthInMbps": 2500,
+    "BaselineIops": 10000,
+    "BaselineThroughputInMBps": 312.5,
+    "MaximumBandwidthInMbps": 10000,
+    "MaximumIops": 40000,
+    "MaximumThroughputInMBps": 1250.0
+   },
+   "EbsOptimizedSupport": "default",
+   "EncryptionSupport": "supported",
+   "NvmeSupport": "required"
+  },
+  "FreeTierEligible": false,
+  "HibernationSupported": false,
+  "Hypervisor": "nitro",
+  "InstanceStorageInfo": {
+   "Disks": [
+    {
+     "Count": 2,
+     "SizeInGB": 2500,
+     "Type": "ssd"
+    }
+   ],
+   "EncryptionSupport": "required",
+   "NvmeSupport": "required",
+   "TotalSizeInGB": 5000
+  },
+  "InstanceStorageSupported": true,
+  "InstanceType": "i7ie.2xlarge",
+  "MemoryInfo": {
+   "SizeInMiB": 65536
+  },
+  "NetworkInfo": {
+   "DefaultNetworkCardIndex": 0,
+   "EfaSupported": false,
+   "EnaSrdSupported": false,
+   "EnaSupport": "required",
+   "EncryptionInTransitSupported": true,
+   "Ipv4AddressesPerInterface": 15,
+   "Ipv6AddressesPerInterface": 15,
+   "Ipv6Supported": true,
+   "MaximumNetworkCards": 1,
+   "MaximumNetworkInterfaces": 4,
+   "NetworkCards": [
+    {
+     "BaselineBandwidthInGbps": 8.333,
+     "MaximumNetworkInterfaces": 4,
+     "NetworkCardIndex": 0,
+     "NetworkPerformance": "Up to 25 Gigabit",
+     "PeakBandwidthInGbps": 25.0
+    }
+   ],
+   "NetworkPerformance": "Up to 25 Gigabit"
+  },
+  "NitroEnclavesSupport": "supported",
+  "NitroTpmInfo": {
+   "SupportedVersions": [
+    "2.0"
+   ]
+  },
+  "NitroTpmSupport": "supported",
+  "PhcSupport": "unsupported",
+  "PlacementGroupInfo": {
+   "SupportedStrategies": [
+    "cluster",
+    "partition",
+    "spread"
+   ]
+  },
+  "ProcessorInfo": {
+   "Manufacturer": "Intel",
+   "SupportedArchitectures": [
+    "x86_64"
+   ],
+   "SustainedClockSpeedInGhz": 3.6
+  },
+  "SupportedBootModes": [
+   "legacy-bios",
+   "uefi"
+  ],
+  "SupportedRootDeviceTypes": [
+   "ebs"
+  ],
+  "SupportedUsageClasses": [
+   "on-demand",
+   "spot"
+  ],
+  "SupportedVirtualizationTypes": [
+   "hvm"
+  ],
+  "VCpuInfo": {
+   "DefaultCores": 4,
+   "DefaultThreadsPerCore": 2,
+   "DefaultVCpus": 8,
+   "ValidCores": [
+    1,
+    2,
+    3,
+    4
+   ],
+   "ValidThreadsPerCore": [
+    1,
+    2
+   ]
+  }
+ },
+ "i7ie.3xlarge": {
+  "AutoRecoverySupported": false,
+  "BareMetal": false,
+  "BurstablePerformanceSupported": false,
+  "CurrentGeneration": true,
+  "DedicatedHostsSupported": true,
+  "EbsInfo": {
+   "EbsOptimizedInfo": {
+    "BaselineBandwidthInMbps": 3750,
+    "BaselineIops": 15000,
+    "BaselineThroughputInMBps": 468.75,
+    "MaximumBandwidthInMbps": 10000,
+    "MaximumIops": 40000,
+    "MaximumThroughputInMBps": 1250.0
+   },
+   "EbsOptimizedSupport": "default",
+   "EncryptionSupport": "supported",
+   "NvmeSupport": "required"
+  },
+  "FreeTierEligible": false,
+  "HibernationSupported": false,
+  "Hypervisor": "nitro",
+  "InstanceStorageInfo": {
+   "Disks": [
+    {
+     "Count": 1,
+     "SizeInGB": 7500,
+     "Type": "ssd"
+    }
+   ],
+   "EncryptionSupport": "required",
+   "NvmeSupport": "required",
+   "TotalSizeInGB": 7500
+  },
+  "InstanceStorageSupported": true,
+  "InstanceType": "i7ie.3xlarge",
+  "MemoryInfo": {
+   "SizeInMiB": 98304
+  },
+  "NetworkInfo": {
+   "DefaultNetworkCardIndex": 0,
+   "EfaSupported": false,
+   "EnaSrdSupported": false,
+   "EnaSupport": "required",
+   "EncryptionInTransitSupported": true,
+   "Ipv4AddressesPerInterface": 15,
+   "Ipv6AddressesPerInterface": 15,
+   "Ipv6Supported": true,
+   "MaximumNetworkCards": 1,
+   "MaximumNetworkInterfaces": 4,
+   "NetworkCards": [
+    {
+     "BaselineBandwidthInGbps": 12.5,
+     "MaximumNetworkInterfaces": 4,
+     "NetworkCardIndex": 0,
+     "NetworkPerformance": "Up to 25 Gigabit",
+     "PeakBandwidthInGbps": 25.0
+    }
+   ],
+   "NetworkPerformance": "Up to 25 Gigabit"
+  },
+  "NitroEnclavesSupport": "supported",
+  "NitroTpmInfo": {
+   "SupportedVersions": [
+    "2.0"
+   ]
+  },
+  "NitroTpmSupport": "supported",
+  "PhcSupport": "unsupported",
+  "PlacementGroupInfo": {
+   "SupportedStrategies": [
+    "cluster",
+    "partition",
+    "spread"
+   ]
+  },
+  "ProcessorInfo": {
+   "Manufacturer": "Intel",
+   "SupportedArchitectures": [
+    "x86_64"
+   ],
+   "SustainedClockSpeedInGhz": 3.6
+  },
+  "SupportedBootModes": [
+   "legacy-bios",
+   "uefi"
+  ],
+  "SupportedRootDeviceTypes": [
+   "ebs"
+  ],
+  "SupportedUsageClasses": [
+   "on-demand",
+   "spot"
+  ],
+  "SupportedVirtualizationTypes": [
+   "hvm"
+  ],
+  "VCpuInfo": {
+   "DefaultCores": 6,
+   "DefaultThreadsPerCore": 2,
+   "DefaultVCpus": 12,
+   "ValidCores": [
+    1,
+    2,
+    3,
+    4,
+    5,
+    6
+   ],
+   "ValidThreadsPerCore": [
+    1,
+    2
+   ]
+  }
+ },
+ "i7ie.48xlarge": {
+  "AutoRecoverySupported": false,
+  "BareMetal": false,
+  "BurstablePerformanceSupported": false,
+  "CurrentGeneration": true,
+  "DedicatedHostsSupported": true,
+  "EbsInfo": {
+   "EbsOptimizedInfo": {
+    "BaselineBandwidthInMbps": 60000,
+    "BaselineIops": 240000,
+    "BaselineThroughputInMBps": 7500.0,
+    "MaximumBandwidthInMbps": 60000,
+    "MaximumIops": 240000,
+    "MaximumThroughputInMBps": 7500.0
+   },
+   "EbsOptimizedSupport": "default",
+   "EncryptionSupport": "supported",
+   "NvmeSupport": "required"
+  },
+  "FreeTierEligible": false,
+  "HibernationSupported": false,
+  "Hypervisor": "nitro",
+  "InstanceStorageInfo": {
+   "Disks": [
+    {
+     "Count": 16,
+     "SizeInGB": 7500,
+     "Type": "ssd"
+    }
+   ],
+   "EncryptionSupport": "required",
+   "NvmeSupport": "required",
+   "TotalSizeInGB": 120000
+  },
+  "InstanceStorageSupported": true,
+  "InstanceType": "i7ie.48xlarge",
+  "MemoryInfo": {
+   "SizeInMiB": 1572864
+  },
+  "NetworkInfo": {
+   "DefaultNetworkCardIndex": 0,
+   "EfaInfo": {
+    "MaximumEfaInterfaces": 1
+   },
+   "EfaSupported": true,
+   "EnaSrdSupported": true,
+   "EnaSupport": "required",
+   "EncryptionInTransitSupported": true,
+   "Ipv4AddressesPerInterface": 50,
+   "Ipv6AddressesPerInterface": 50,
+   "Ipv6Supported": true,
+   "MaximumNetworkCards": 1,
+   "MaximumNetworkInterfaces": 15,
+   "NetworkCards": [
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 15,
+     "NetworkCardIndex": 0,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    }
+   ],
+   "NetworkPerformance": "100 Gigabit"
+  },
+  "NitroEnclavesSupport": "unsupported",
+  "NitroTpmInfo": {
+   "SupportedVersions": [
+    "2.0"
+   ]
+  },
+  "NitroTpmSupport": "supported",
+  "PhcSupport": "unsupported",
+  "PlacementGroupInfo": {
+   "SupportedStrategies": [
+    "cluster",
+    "partition",
+    "spread"
+   ]
+  },
+  "ProcessorInfo": {
+   "Manufacturer": "Intel",
+   "SupportedArchitectures": [
+    "x86_64"
+   ],
+   "SustainedClockSpeedInGhz": 3.6
+  },
+  "SupportedBootModes": [
+   "legacy-bios",
+   "uefi"
+  ],
+  "SupportedRootDeviceTypes": [
+   "ebs"
+  ],
+  "SupportedUsageClasses": [
+   "on-demand",
+   "spot"
+  ],
+  "SupportedVirtualizationTypes": [
+   "hvm"
+  ],
+  "VCpuInfo": {
+   "DefaultCores": 96,
+   "DefaultThreadsPerCore": 2,
+   "DefaultVCpus": 192,
+   "ValidCores": [
+    4,
+    6,
+    8,
+    10,
+    12,
+    14,
+    16,
+    18,
+    20,
+    22,
+    24,
+    26,
+    28,
+    30,
+    32,
+    34,
+    36,
+    38,
+    40,
+    42,
+    44,
+    46,
+    48,
+    50,
+    52,
+    54,
+    56,
+    58,
+    60,
+    62,
+    64,
+    66,
+    68,
+    70,
+    72,
+    74,
+    76,
+    78,
+    80,
+    82,
+    84,
+    86,
+    88,
+    90,
+    92,
+    94,
+    96
+   ],
+   "ValidThreadsPerCore": [
+    1,
+    2
+   ]
+  }
+ },
+ "i7ie.6xlarge": {
+  "AutoRecoverySupported": false,
+  "BareMetal": false,
+  "BurstablePerformanceSupported": false,
+  "CurrentGeneration": true,
+  "DedicatedHostsSupported": true,
+  "EbsInfo": {
+   "EbsOptimizedInfo": {
+    "BaselineBandwidthInMbps": 7500,
+    "BaselineIops": 30000,
+    "BaselineThroughputInMBps": 937.5,
+    "MaximumBandwidthInMbps": 10000,
+    "MaximumIops": 40000,
+    "MaximumThroughputInMBps": 1250.0
+   },
+   "EbsOptimizedSupport": "default",
+   "EncryptionSupport": "supported",
+   "NvmeSupport": "required"
+  },
+  "FreeTierEligible": false,
+  "HibernationSupported": false,
+  "Hypervisor": "nitro",
+  "InstanceStorageInfo": {
+   "Disks": [
+    {
+     "Count": 2,
+     "SizeInGB": 7500,
+     "Type": "ssd"
+    }
+   ],
+   "EncryptionSupport": "required",
+   "NvmeSupport": "required",
+   "TotalSizeInGB": 15000
+  },
+  "InstanceStorageSupported": true,
+  "InstanceType": "i7ie.6xlarge",
+  "MemoryInfo": {
+   "SizeInMiB": 196608
+  },
+  "NetworkInfo": {
+   "DefaultNetworkCardIndex": 0,
+   "EfaSupported": false,
+   "EnaSrdSupported": false,
+   "EnaSupport": "required",
+   "EncryptionInTransitSupported": true,
+   "Ipv4AddressesPerInterface": 30,
+   "Ipv6AddressesPerInterface": 30,
+   "Ipv6Supported": true,
+   "MaximumNetworkCards": 1,
+   "MaximumNetworkInterfaces": 8,
+   "NetworkCards": [
+    {
+     "BaselineBandwidthInGbps": 12.5,
+     "MaximumNetworkInterfaces": 8,
+     "NetworkCardIndex": 0,
+     "NetworkPerformance": "25 Gigabit",
+     "PeakBandwidthInGbps": 25.0
+    }
+   ],
+   "NetworkPerformance": "Up to 25 Gigabit"
+  },
+  "NitroEnclavesSupport": "supported",
+  "NitroTpmInfo": {
+   "SupportedVersions": [
+    "2.0"
+   ]
+  },
+  "NitroTpmSupport": "supported",
+  "PhcSupport": "unsupported",
+  "PlacementGroupInfo": {
+   "SupportedStrategies": [
+    "cluster",
+    "partition",
+    "spread"
+   ]
+  },
+  "ProcessorInfo": {
+   "Manufacturer": "Intel",
+   "SupportedArchitectures": [
+    "x86_64"
+   ],
+   "SustainedClockSpeedInGhz": 3.6
+  },
+  "SupportedBootModes": [
+   "legacy-bios",
+   "uefi"
+  ],
+  "SupportedRootDeviceTypes": [
+   "ebs"
+  ],
+  "SupportedUsageClasses": [
+   "on-demand",
+   "spot"
+  ],
+  "SupportedVirtualizationTypes": [
+   "hvm"
+  ],
+  "VCpuInfo": {
+   "DefaultCores": 12,
+   "DefaultThreadsPerCore": 2,
+   "DefaultVCpus": 24,
+   "ValidCores": [
+    1,
+    2,
+    3,
+    4,
+    5,
+    6,
+    7,
+    8,
+    9,
+    10,
+    11,
+    12
+   ],
+   "ValidThreadsPerCore": [
+    1,
+    2
+   ]
+  }
+ },
+ "i7ie.large": {
+  "AutoRecoverySupported": false,
+  "BareMetal": false,
+  "BurstablePerformanceSupported": false,
+  "CurrentGeneration": true,
+  "DedicatedHostsSupported": true,
+  "EbsInfo": {
+   "EbsOptimizedInfo": {
+    "BaselineBandwidthInMbps": 625,
+    "BaselineIops": 2500,
+    "BaselineThroughputInMBps": 78.125,
+    "MaximumBandwidthInMbps": 10000,
+    "MaximumIops": 40000,
+    "MaximumThroughputInMBps": 1250.0
+   },
+   "EbsOptimizedSupport": "default",
+   "EncryptionSupport": "supported",
+   "NvmeSupport": "required"
+  },
+  "FreeTierEligible": false,
+  "HibernationSupported": false,
+  "Hypervisor": "nitro",
+  "InstanceStorageInfo": {
+   "Disks": [
+    {
+     "Count": 1,
+     "SizeInGB": 1250,
+     "Type": "ssd"
+    }
+   ],
+   "EncryptionSupport": "required",
+   "NvmeSupport": "required",
+   "TotalSizeInGB": 1250
+  },
+  "InstanceStorageSupported": true,
+  "InstanceType": "i7ie.large",
+  "MemoryInfo": {
+   "SizeInMiB": 16384
+  },
+  "NetworkInfo": {
+   "DefaultNetworkCardIndex": 0,
+   "EfaSupported": false,
+   "EnaSrdSupported": false,
+   "EnaSupport": "required",
+   "EncryptionInTransitSupported": true,
+   "Ipv4AddressesPerInterface": 10,
+   "Ipv6AddressesPerInterface": 10,
+   "Ipv6Supported": true,
+   "MaximumNetworkCards": 1,
+   "MaximumNetworkInterfaces": 3,
+   "NetworkCards": [
+    {
+     "BaselineBandwidthInGbps": 2.083,
+     "MaximumNetworkInterfaces": 3,
+     "NetworkCardIndex": 0,
+     "NetworkPerformance": "Up to 25 Gigabit",
+     "PeakBandwidthInGbps": 25.0
+    }
+   ],
+   "NetworkPerformance": "Up to 25 Gigabit"
+  },
+  "NitroEnclavesSupport": "unsupported",
+  "NitroTpmInfo": {
+   "SupportedVersions": [
+    "2.0"
+   ]
+  },
+  "NitroTpmSupport": "supported",
+  "PhcSupport": "unsupported",
+  "PlacementGroupInfo": {
+   "SupportedStrategies": [
+    "cluster",
+    "partition",
+    "spread"
+   ]
+  },
+  "ProcessorInfo": {
+   "Manufacturer": "Intel",
+   "SupportedArchitectures": [
+    "x86_64"
+   ],
+   "SustainedClockSpeedInGhz": 3.6
+  },
+  "SupportedBootModes": [
+   "legacy-bios",
+   "uefi"
+  ],
+  "SupportedRootDeviceTypes": [
+   "ebs"
+  ],
+  "SupportedUsageClasses": [
+   "on-demand",
+   "spot"
+  ],
+  "SupportedVirtualizationTypes": [
+   "hvm"
+  ],
+  "VCpuInfo": {
+   "DefaultCores": 1,
+   "DefaultThreadsPerCore": 2,
+   "DefaultVCpus": 2,
+   "ValidCores": [
+    1
+   ],
+   "ValidThreadsPerCore": [
+    1,
+    2
+   ]
+  }
+ },
+ "i7ie.xlarge": {
+  "AutoRecoverySupported": false,
+  "BareMetal": false,
+  "BurstablePerformanceSupported": false,
+  "CurrentGeneration": true,
+  "DedicatedHostsSupported": true,
+  "EbsInfo": {
+   "EbsOptimizedInfo": {
+    "BaselineBandwidthInMbps": 1250,
+    "BaselineIops": 5000,
+    "BaselineThroughputInMBps": 156.25,
+    "MaximumBandwidthInMbps": 10000,
+    "MaximumIops": 40000,
+    "MaximumThroughputInMBps": 1250.0
+   },
+   "EbsOptimizedSupport": "default",
+   "EncryptionSupport": "supported",
+   "NvmeSupport": "required"
+  },
+  "FreeTierEligible": false,
+  "HibernationSupported": false,
+  "Hypervisor": "nitro",
+  "InstanceStorageInfo": {
+   "Disks": [
+    {
+     "Count": 1,
+     "SizeInGB": 2500,
+     "Type": "ssd"
+    }
+   ],
+   "EncryptionSupport": "required",
+   "NvmeSupport": "required",
+   "TotalSizeInGB": 2500
+  },
+  "InstanceStorageSupported": true,
+  "InstanceType": "i7ie.xlarge",
+  "MemoryInfo": {
+   "SizeInMiB": 32768
+  },
+  "NetworkInfo": {
+   "DefaultNetworkCardIndex": 0,
+   "EfaSupported": false,
+   "EnaSrdSupported": false,
+   "EnaSupport": "required",
+   "EncryptionInTransitSupported": true,
+   "Ipv4AddressesPerInterface": 15,
+   "Ipv6AddressesPerInterface": 15,
+   "Ipv6Supported": true,
+   "MaximumNetworkCards": 1,
+   "MaximumNetworkInterfaces": 4,
+   "NetworkCards": [
+    {
+     "BaselineBandwidthInGbps": 4.166,
+     "MaximumNetworkInterfaces": 4,
+     "NetworkCardIndex": 0,
+     "NetworkPerformance": "Up to 25 Gigabit",
+     "PeakBandwidthInGbps": 25.0
+    }
+   ],
+   "NetworkPerformance": "Up to 25 Gigabit"
+  },
+  "NitroEnclavesSupport": "supported",
+  "NitroTpmInfo": {
+   "SupportedVersions": [
+    "2.0"
+   ]
+  },
+  "NitroTpmSupport": "supported",
+  "PhcSupport": "unsupported",
+  "PlacementGroupInfo": {
+   "SupportedStrategies": [
+    "cluster",
+    "partition",
+    "spread"
+   ]
+  },
+  "ProcessorInfo": {
+   "Manufacturer": "Intel",
+   "SupportedArchitectures": [
+    "x86_64"
+   ],
+   "SustainedClockSpeedInGhz": 3.6
+  },
+  "SupportedBootModes": [
+   "legacy-bios",
+   "uefi"
+  ],
+  "SupportedRootDeviceTypes": [
+   "ebs"
+  ],
+  "SupportedUsageClasses": [
+   "on-demand",
+   "spot"
+  ],
+  "SupportedVirtualizationTypes": [
+   "hvm"
+  ],
+  "VCpuInfo": {
+   "DefaultCores": 2,
+   "DefaultThreadsPerCore": 2,
+   "DefaultVCpus": 4,
+   "ValidCores": [
+    1,
+    2
+   ],
+   "ValidThreadsPerCore": [
+    1,
+    2
+   ]
+  }
+ },
+ "i8g.12xlarge": {
+  "AutoRecoverySupported": false,
+  "BareMetal": false,
+  "BurstablePerformanceSupported": false,
+  "CurrentGeneration": true,
+  "DedicatedHostsSupported": true,
+  "EbsInfo": {
+   "EbsOptimizedInfo": {
+    "BaselineBandwidthInMbps": 15000,
+    "BaselineIops": 60000,
+    "BaselineThroughputInMBps": 1875.0,
+    "MaximumBandwidthInMbps": 15000,
+    "MaximumIops": 60000,
+    "MaximumThroughputInMBps": 1875.0
+   },
+   "EbsOptimizedSupport": "default",
+   "EncryptionSupport": "supported",
+   "NvmeSupport": "required"
+  },
+  "FreeTierEligible": false,
+  "HibernationSupported": false,
+  "Hypervisor": "nitro",
+  "InstanceStorageInfo": {
+   "Disks": [
+    {
+     "Count": 3,
+     "SizeInGB": 3750,
+     "Type": "ssd"
+    }
+   ],
+   "EncryptionSupport": "required",
+   "NvmeSupport": "required",
+   "TotalSizeInGB": 11250
+  },
+  "InstanceStorageSupported": true,
+  "InstanceType": "i8g.12xlarge",
+  "MemoryInfo": {
+   "SizeInMiB": 393216
+  },
+  "NetworkInfo": {
+   "DefaultNetworkCardIndex": 0,
+   "EfaSupported": false,
+   "EnaSrdSupported": true,
+   "EnaSupport": "required",
+   "EncryptionInTransitSupported": true,
+   "Ipv4AddressesPerInterface": 30,
+   "Ipv6AddressesPerInterface": 30,
+   "Ipv6Supported": true,
+   "MaximumNetworkCards": 1,
+   "MaximumNetworkInterfaces": 8,
+   "NetworkCards": [
+    {
+     "BaselineBandwidthInGbps": 14.063,
+     "MaximumNetworkInterfaces": 8,
+     "NetworkCardIndex": 0,
+     "NetworkPerformance": "Up to 28.12 Gigabit",
+     "PeakBandwidthInGbps": 28.125
+    }
+   ],
+   "NetworkPerformance": "Up to 28.12 Gigabit"
+  },
+  "NitroEnclavesSupport": "supported",
+  "NitroTpmInfo": {
+   "SupportedVersions": [
+    "2.0"
+   ]
+  },
+  "NitroTpmSupport": "supported",
+  "PhcSupport": "unsupported",
+  "PlacementGroupInfo": {
+   "SupportedStrategies": [
+    "cluster",
+    "partition",
+    "spread"
+   ]
+  },
+  "ProcessorInfo": {
+   "Manufacturer": "AWS",
+   "SupportedArchitectures": [
+    "arm64"
+   ],
+   "SustainedClockSpeedInGhz": 2.8
+  },
+  "SupportedBootModes": [
+   "uefi"
+  ],
+  "SupportedRootDeviceTypes": [
+   "ebs"
+  ],
+  "SupportedUsageClasses": [
+   "on-demand",
+   "spot"
+  ],
+  "SupportedVirtualizationTypes": [
+   "hvm"
+  ],
+  "VCpuInfo": {
+   "DefaultCores": 48,
+   "DefaultThreadsPerCore": 1,
+   "DefaultVCpus": 48,
+   "ValidCores": [
+    1,
+    2,
+    3,
+    4,
+    5,
+    6,
+    7,
+    8,
+    9,
+    10,
+    11,
+    12,
+    13,
+    14,
+    15,
+    16,
+    17,
+    18,
+    19,
+    20,
+    21,
+    22,
+    23,
+    24,
+    25,
+    26,
+    27,
+    28,
+    29,
+    30,
+    31,
+    32,
+    33,
+    34,
+    35,
+    36,
+    37,
+    38,
+    39,
+    40,
+    41,
+    42,
+    43,
+    44,
+    45,
+    46,
+    47,
+    48
+   ],
+   "ValidThreadsPerCore": [
+    1
+   ]
+  }
+ },
+ "i8g.16xlarge": {
+  "AutoRecoverySupported": false,
+  "BareMetal": false,
+  "BurstablePerformanceSupported": false,
+  "CurrentGeneration": true,
+  "DedicatedHostsSupported": true,
+  "EbsInfo": {
+   "EbsOptimizedInfo": {
+    "BaselineBandwidthInMbps": 20000,
+    "BaselineIops": 80000,
+    "BaselineThroughputInMBps": 2500.0,
+    "MaximumBandwidthInMbps": 20000,
+    "MaximumIops": 80000,
+    "MaximumThroughputInMBps": 2500.0
+   },
+   "EbsOptimizedSupport": "default",
+   "EncryptionSupport": "supported",
+   "NvmeSupport": "required"
+  },
+  "FreeTierEligible": false,
+  "HibernationSupported": false,
+  "Hypervisor": "nitro",
+  "InstanceStorageInfo": {
+   "Disks": [
+    {
+     "Count": 4,
+     "SizeInGB": 3750,
+     "Type": "ssd"
+    }
+   ],
+   "EncryptionSupport": "required",
+   "NvmeSupport": "required",
+   "TotalSizeInGB": 15000
+  },
+  "InstanceStorageSupported": true,
+  "InstanceType": "i8g.16xlarge",
+  "MemoryInfo": {
+   "SizeInMiB": 524288
+  },
+  "NetworkInfo": {
+   "DefaultNetworkCardIndex": 0,
+   "EfaSupported": false,
+   "EnaSrdSupported": true,
+   "EnaSupport": "required",
+   "EncryptionInTransitSupported": true,
+   "Ipv4AddressesPerInterface": 50,
+   "Ipv6AddressesPerInterface": 50,
+   "Ipv6Supported": true,
+   "MaximumNetworkCards": 1,
+   "MaximumNetworkInterfaces": 15,
+   "NetworkCards": [
+    {
+     "BaselineBandwidthInGbps": 18.75,
+     "MaximumNetworkInterfaces": 15,
+     "NetworkCardIndex": 0,
+     "NetworkPerformance": "Up to 37.5 Gigabit",
+     "PeakBandwidthInGbps": 37.5
+    }
+   ],
+   "NetworkPerformance": "37.5 Gigabit"
+  },
+  "NitroEnclavesSupport": "supported",
+  "NitroTpmInfo": {
+   "SupportedVersions": [
+    "2.0"
+   ]
+  },
+  "NitroTpmSupport": "supported",
+  "PhcSupport": "unsupported",
+  "PlacementGroupInfo": {
+   "SupportedStrategies": [
+    "cluster",
+    "partition",
+    "spread"
+   ]
+  },
+  "ProcessorInfo": {
+   "Manufacturer": "AWS",
+   "SupportedArchitectures": [
+    "arm64"
+   ],
+   "SustainedClockSpeedInGhz": 2.8
+  },
+  "SupportedBootModes": [
+   "uefi"
+  ],
+  "SupportedRootDeviceTypes": [
+   "ebs"
+  ],
+  "SupportedUsageClasses": [
+   "on-demand",
+   "spot"
+  ],
+  "SupportedVirtualizationTypes": [
+   "hvm"
+  ],
+  "VCpuInfo": {
+   "DefaultCores": 64,
+   "DefaultThreadsPerCore": 1,
+   "DefaultVCpus": 64,
+   "ValidCores": [
+    1,
+    2,
+    3,
+    4,
+    5,
+    6,
+    7,
+    8,
+    9,
+    10,
+    11,
+    12,
+    13,
+    14,
+    15,
+    16,
+    17,
+    18,
+    19,
+    20,
+    21,
+    22,
+    23,
+    24,
+    25,
+    26,
+    27,
+    28,
+    29,
+    30,
+    31,
+    32,
+    33,
+    34,
+    35,
+    36,
+    37,
+    38,
+    39,
+    40,
+    41,
+    42,
+    43,
+    44,
+    45,
+    46,
+    47,
+    48,
+    49,
+    50,
+    51,
+    52,
+    53,
+    54,
+    55,
+    56,
+    57,
+    58,
+    59,
+    60,
+    61,
+    62,
+    63,
+    64
+   ],
+   "ValidThreadsPerCore": [
+    1
+   ]
+  }
+ },
+ "i8g.24xlarge": {
+  "AutoRecoverySupported": false,
+  "BareMetal": false,
+  "BurstablePerformanceSupported": false,
+  "CurrentGeneration": true,
+  "DedicatedHostsSupported": true,
+  "EbsInfo": {
+   "EbsOptimizedInfo": {
+    "BaselineBandwidthInMbps": 30000,
+    "BaselineIops": 120000,
+    "BaselineThroughputInMBps": 3750.0,
+    "MaximumBandwidthInMbps": 30000,
+    "MaximumIops": 120000,
+    "MaximumThroughputInMBps": 3750.0
+   },
+   "EbsOptimizedSupport": "default",
+   "EncryptionSupport": "supported",
+   "NvmeSupport": "required"
+  },
+  "FreeTierEligible": false,
+  "HibernationSupported": false,
+  "Hypervisor": "nitro",
+  "InstanceStorageInfo": {
+   "Disks": [
+    {
+     "Count": 6,
+     "SizeInGB": 3750,
+     "Type": "ssd"
+    }
+   ],
+   "EncryptionSupport": "required",
+   "NvmeSupport": "required",
+   "TotalSizeInGB": 22500
+  },
+  "InstanceStorageSupported": true,
+  "InstanceType": "i8g.24xlarge",
+  "MemoryInfo": {
+   "SizeInMiB": 786432
+  },
+  "NetworkInfo": {
+   "DefaultNetworkCardIndex": 0,
+   "EfaSupported": false,
+   "EnaSrdSupported": true,
+   "EnaSupport": "required",
+   "EncryptionInTransitSupported": true,
+   "Ipv4AddressesPerInterface": 50,
+   "Ipv6AddressesPerInterface": 50,
+   "Ipv6Supported": true,
+   "MaximumNetworkCards": 1,
+   "MaximumNetworkInterfaces": 15,
+   "NetworkCards": [
+    {
+     "BaselineBandwidthInGbps": 28.125,
+     "MaximumNetworkInterfaces": 15,
+     "NetworkCardIndex": 0,
+     "NetworkPerformance": "Up to 56.25 Gigabit",
+     "PeakBandwidthInGbps": 56.25
+    }
+   ],
+   "NetworkPerformance": "Up to 56.25 Gigabit"
+  },
+  "NitroEnclavesSupport": "supported",
+  "NitroTpmInfo": {
+   "SupportedVersions": [
+    "2.0"
+   ]
+  },
+  "NitroTpmSupport": "supported",
+  "PhcSupport": "unsupported",
+  "PlacementGroupInfo": {
+   "SupportedStrategies": [
+    "cluster",
+    "partition",
+    "spread"
+   ]
+  },
+  "ProcessorInfo": {
+   "Manufacturer": "AWS",
+   "SupportedArchitectures": [
+    "arm64"
+   ],
+   "SustainedClockSpeedInGhz": 2.8
+  },
+  "SupportedBootModes": [
+   "uefi"
+  ],
+  "SupportedRootDeviceTypes": [
+   "ebs"
+  ],
+  "SupportedUsageClasses": [
+   "on-demand",
+   "spot"
+  ],
+  "SupportedVirtualizationTypes": [
+   "hvm"
+  ],
+  "VCpuInfo": {
+   "DefaultCores": 96,
+   "DefaultThreadsPerCore": 1,
+   "DefaultVCpus": 96,
+   "ValidCores": [
+    1,
+    2,
+    3,
+    4,
+    5,
+    6,
+    7,
+    8,
+    9,
+    10,
+    11,
+    12,
+    13,
+    14,
+    15,
+    16,
+    17,
+    18,
+    19,
+    20,
+    21,
+    22,
+    23,
+    24,
+    25,
+    26,
+    27,
+    28,
+    29,
+    30,
+    31,
+    32,
+    33,
+    34,
+    35,
+    36,
+    37,
+    38,
+    39,
+    40,
+    41,
+    42,
+    43,
+    44,
+    45,
+    46,
+    47,
+    48,
+    49,
+    50,
+    51,
+    52,
+    53,
+    54,
+    55,
+    56,
+    57,
+    58,
+    59,
+    60,
+    61,
+    62,
+    63,
+    64,
+    65,
+    66,
+    67,
+    68,
+    69,
+    70,
+    71,
+    72,
+    73,
+    74,
+    75,
+    76,
+    77,
+    78,
+    79,
+    80,
+    81,
+    82,
+    83,
+    84,
+    85,
+    86,
+    87,
+    88,
+    89,
+    90,
+    91,
+    92,
+    93,
+    94,
+    95,
+    96
+   ],
+   "ValidThreadsPerCore": [
+    1
+   ]
+  }
+ },
+ "i8g.2xlarge": {
+  "AutoRecoverySupported": false,
+  "BareMetal": false,
+  "BurstablePerformanceSupported": false,
+  "CurrentGeneration": true,
+  "DedicatedHostsSupported": true,
+  "EbsInfo": {
+   "EbsOptimizedInfo": {
+    "BaselineBandwidthInMbps": 2500,
+    "BaselineIops": 10000,
+    "BaselineThroughputInMBps": 312.5,
+    "MaximumBandwidthInMbps": 10000,
+    "MaximumIops": 40000,
+    "MaximumThroughputInMBps": 1250.0
+   },
+   "EbsOptimizedSupport": "default",
+   "EncryptionSupport": "supported",
+   "NvmeSupport": "required"
+  },
+  "FreeTierEligible": false,
+  "HibernationSupported": false,
+  "Hypervisor": "nitro",
+  "InstanceStorageInfo": {
+   "Disks": [
+    {
+     "Count": 1,
+     "SizeInGB": 1875,
+     "Type": "ssd"
+    }
+   ],
+   "EncryptionSupport": "required",
+   "NvmeSupport": "required",
+   "TotalSizeInGB": 1875
+  },
+  "InstanceStorageSupported": true,
+  "InstanceType": "i8g.2xlarge",
+  "MemoryInfo": {
+   "SizeInMiB": 65536
+  },
+  "NetworkInfo": {
+   "DefaultNetworkCardIndex": 0,
+   "EfaSupported": false,
+   "EnaSrdSupported": false,
+   "EnaSupport": "required",
+   "EncryptionInTransitSupported": true,
+   "Ipv4AddressesPerInterface": 15,
+   "Ipv6AddressesPerInterface": 15,
+   "Ipv6Supported": true,
+   "MaximumNetworkCards": 1,
+   "MaximumNetworkInterfaces": 4,
+   "NetworkCards": [
+    {
+     "BaselineBandwidthInGbps": 4.688,
+     "MaximumNetworkInterfaces": 4,
+     "NetworkCardIndex": 0,
+     "NetworkPerformance": "Up to 12 Gigabit",
+     "PeakBandwidthInGbps": 12.0
+    }
+   ],
+   "NetworkPerformance": "Up to 12 Gigabit"
+  },
+  "NitroEnclavesSupport": "supported",
+  "NitroTpmInfo": {
+   "SupportedVersions": [
+    "2.0"
+   ]
+  },
+  "NitroTpmSupport": "supported",
+  "PhcSupport": "unsupported",
+  "PlacementGroupInfo": {
+   "SupportedStrategies": [
+    "cluster",
+    "partition",
+    "spread"
+   ]
+  },
+  "ProcessorInfo": {
+   "Manufacturer": "AWS",
+   "SupportedArchitectures": [
+    "arm64"
+   ],
+   "SustainedClockSpeedInGhz": 2.8
+  },
+  "SupportedBootModes": [
+   "uefi"
+  ],
+  "SupportedRootDeviceTypes": [
+   "ebs"
+  ],
+  "SupportedUsageClasses": [
+   "on-demand",
+   "spot"
+  ],
+  "SupportedVirtualizationTypes": [
+   "hvm"
+  ],
+  "VCpuInfo": {
+   "DefaultCores": 8,
+   "DefaultThreadsPerCore": 1,
+   "DefaultVCpus": 8,
+   "ValidCores": [
+    1,
+    2,
+    3,
+    4,
+    5,
+    6,
+    7,
+    8
+   ],
+   "ValidThreadsPerCore": [
+    1
+   ]
+  }
+ },
+ "i8g.4xlarge": {
+  "AutoRecoverySupported": false,
+  "BareMetal": false,
+  "BurstablePerformanceSupported": false,
+  "CurrentGeneration": true,
+  "DedicatedHostsSupported": true,
+  "EbsInfo": {
+   "EbsOptimizedInfo": {
+    "BaselineBandwidthInMbps": 5000,
+    "BaselineIops": 20000,
+    "BaselineThroughputInMBps": 625.0,
+    "MaximumBandwidthInMbps": 10000,
+    "MaximumIops": 40000,
+    "MaximumThroughputInMBps": 1250.0
+   },
+   "EbsOptimizedSupport": "default",
+   "EncryptionSupport": "supported",
+   "NvmeSupport": "required"
+  },
+  "FreeTierEligible": false,
+  "HibernationSupported": false,
+  "Hypervisor": "nitro",
+  "InstanceStorageInfo": {
+   "Disks": [
+    {
+     "Count": 1,
+     "SizeInGB": 3750,
+     "Type": "ssd"
+    }
+   ],
+   "EncryptionSupport": "required",
+   "NvmeSupport": "required",
+   "TotalSizeInGB": 3750
+  },
+  "InstanceStorageSupported": true,
+  "InstanceType": "i8g.4xlarge",
+  "MemoryInfo": {
+   "SizeInMiB": 131072
+  },
+  "NetworkInfo": {
+   "DefaultNetworkCardIndex": 0,
+   "EfaSupported": false,
+   "EnaSrdSupported": false,
+   "EnaSupport": "required",
+   "EncryptionInTransitSupported": true,
+   "Ipv4AddressesPerInterface": 30,
+   "Ipv6AddressesPerInterface": 30,
+   "Ipv6Supported": true,
+   "MaximumNetworkCards": 1,
+   "MaximumNetworkInterfaces": 8,
+   "NetworkCards": [
+    {
+     "BaselineBandwidthInGbps": 9.375,
+     "MaximumNetworkInterfaces": 8,
+     "NetworkCardIndex": 0,
+     "NetworkPerformance": "Up to 25 Gigabit",
+     "PeakBandwidthInGbps": 25.0
+    }
+   ],
+   "NetworkPerformance": "Up to 25 Gigabit"
+  },
+  "NitroEnclavesSupport": "supported",
+  "NitroTpmInfo": {
+   "SupportedVersions": [
+    "2.0"
+   ]
+  },
+  "NitroTpmSupport": "supported",
+  "PhcSupport": "unsupported",
+  "PlacementGroupInfo": {
+   "SupportedStrategies": [
+    "cluster",
+    "partition",
+    "spread"
+   ]
+  },
+  "ProcessorInfo": {
+   "Manufacturer": "AWS",
+   "SupportedArchitectures": [
+    "arm64"
+   ],
+   "SustainedClockSpeedInGhz": 2.8
+  },
+  "SupportedBootModes": [
+   "uefi"
+  ],
+  "SupportedRootDeviceTypes": [
+   "ebs"
+  ],
+  "SupportedUsageClasses": [
+   "on-demand",
+   "spot"
+  ],
+  "SupportedVirtualizationTypes": [
+   "hvm"
+  ],
+  "VCpuInfo": {
+   "DefaultCores": 16,
+   "DefaultThreadsPerCore": 1,
+   "DefaultVCpus": 16,
+   "ValidCores": [
+    1,
+    2,
+    3,
+    4,
+    5,
+    6,
+    7,
+    8,
+    9,
+    10,
+    11,
+    12,
+    13,
+    14,
+    15,
+    16
+   ],
+   "ValidThreadsPerCore": [
+    1
+   ]
+  }
+ },
+ "i8g.8xlarge": {
+  "AutoRecoverySupported": false,
+  "BareMetal": false,
+  "BurstablePerformanceSupported": false,
+  "CurrentGeneration": true,
+  "DedicatedHostsSupported": true,
+  "EbsInfo": {
+   "EbsOptimizedInfo": {
+    "BaselineBandwidthInMbps": 10000,
+    "BaselineIops": 40000,
+    "BaselineThroughputInMBps": 1250.0,
+    "MaximumBandwidthInMbps": 10000,
+    "MaximumIops": 40000,
+    "MaximumThroughputInMBps": 1250.0
+   },
+   "EbsOptimizedSupport": "default",
+   "EncryptionSupport": "supported",
+   "NvmeSupport": "required"
+  },
+  "FreeTierEligible": false,
+  "HibernationSupported": false,
+  "Hypervisor": "nitro",
+  "InstanceStorageInfo": {
+   "Disks": [
+    {
+     "Count": 2,
+     "SizeInGB": 3750,
+     "Type": "ssd"
+    }
+   ],
+   "EncryptionSupport": "required",
+   "NvmeSupport": "required",
+   "TotalSizeInGB": 7500
+  },
+  "InstanceStorageSupported": true,
+  "InstanceType": "i8g.8xlarge",
+  "MemoryInfo": {
+   "SizeInMiB": 262144
+  },
+  "NetworkInfo": {
+   "DefaultNetworkCardIndex": 0,
+   "EfaSupported": false,
+   "EnaSrdSupported": false,
+   "EnaSupport": "required",
+   "EncryptionInTransitSupported": true,
+   "Ipv4AddressesPerInterface": 30,
+   "Ipv6AddressesPerInterface": 30,
+   "Ipv6Supported": true,
+   "MaximumNetworkCards": 1,
+   "MaximumNetworkInterfaces": 8,
+   "NetworkCards": [
+    {
+     "BaselineBandwidthInGbps": 12.5,
+     "MaximumNetworkInterfaces": 8,
+     "NetworkCardIndex": 0,
+     "NetworkPerformance": "Up to 25 Gigabit",
+     "PeakBandwidthInGbps": 25.0
+    }
+   ],
+   "NetworkPerformance": "Up to 25 Gigabit"
+  },
+  "NitroEnclavesSupport": "supported",
+  "NitroTpmInfo": {
+   "SupportedVersions": [
+    "2.0"
+   ]
+  },
+  "NitroTpmSupport": "supported",
+  "PhcSupport": "unsupported",
+  "PlacementGroupInfo": {
+   "SupportedStrategies": [
+    "cluster",
+    "partition",
+    "spread"
+   ]
+  },
+  "ProcessorInfo": {
+   "Manufacturer": "AWS",
+   "SupportedArchitectures": [
+    "arm64"
+   ],
+   "SustainedClockSpeedInGhz": 2.8
+  },
+  "SupportedBootModes": [
+   "uefi"
+  ],
+  "SupportedRootDeviceTypes": [
+   "ebs"
+  ],
+  "SupportedUsageClasses": [
+   "on-demand",
+   "spot"
+  ],
+  "SupportedVirtualizationTypes": [
+   "hvm"
+  ],
+  "VCpuInfo": {
+   "DefaultCores": 32,
+   "DefaultThreadsPerCore": 1,
+   "DefaultVCpus": 32,
+   "ValidCores": [
+    1,
+    2,
+    3,
+    4,
+    5,
+    6,
+    7,
+    8,
+    9,
+    10,
+    11,
+    12,
+    13,
+    14,
+    15,
+    16,
+    17,
+    18,
+    19,
+    20,
+    21,
+    22,
+    23,
+    24,
+    25,
+    26,
+    27,
+    28,
+    29,
+    30,
+    31,
+    32
+   ],
+   "ValidThreadsPerCore": [
+    1
+   ]
+  }
+ },
+ "i8g.large": {
+  "AutoRecoverySupported": false,
+  "BareMetal": false,
+  "BurstablePerformanceSupported": false,
+  "CurrentGeneration": true,
+  "DedicatedHostsSupported": true,
+  "EbsInfo": {
+   "EbsOptimizedInfo": {
+    "BaselineBandwidthInMbps": 625,
+    "BaselineIops": 2500,
+    "BaselineThroughputInMBps": 78.125,
+    "MaximumBandwidthInMbps": 10000,
+    "MaximumIops": 40000,
+    "MaximumThroughputInMBps": 1250.0
+   },
+   "EbsOptimizedSupport": "default",
+   "EncryptionSupport": "supported",
+   "NvmeSupport": "required"
+  },
+  "FreeTierEligible": false,
+  "HibernationSupported": false,
+  "Hypervisor": "nitro",
+  "InstanceStorageInfo": {
+   "Disks": [
+    {
+     "Count": 1,
+     "SizeInGB": 468,
+     "Type": "ssd"
+    }
+   ],
+   "EncryptionSupport": "required",
+   "NvmeSupport": "required",
+   "TotalSizeInGB": 468
+  },
+  "InstanceStorageSupported": true,
+  "InstanceType": "i8g.large",
+  "MemoryInfo": {
+   "SizeInMiB": 16384
+  },
+  "NetworkInfo": {
+   "DefaultNetworkCardIndex": 0,
+   "EfaSupported": false,
+   "EnaSrdSupported": false,
+   "EnaSupport": "required",
+   "EncryptionInTransitSupported": true,
+   "Ipv4AddressesPerInterface": 10,
+   "Ipv6AddressesPerInterface": 10,
+   "Ipv6Supported": true,
+   "MaximumNetworkCards": 1,
+   "MaximumNetworkInterfaces": 3,
+   "NetworkCards": [
+    {
+     "BaselineBandwidthInGbps": 1.172,
+     "MaximumNetworkInterfaces": 3,
+     "NetworkCardIndex": 0,
+     "NetworkPerformance": "Up to 10 Gigabit",
+     "PeakBandwidthInGbps": 10.0
+    }
+   ],
+   "NetworkPerformance": "Up to 10 Gigabit"
+  },
+  "NitroEnclavesSupport": "supported",
+  "NitroTpmInfo": {
+   "SupportedVersions": [
+    "2.0"
+   ]
+  },
+  "NitroTpmSupport": "supported",
+  "PhcSupport": "unsupported",
+  "PlacementGroupInfo": {
+   "SupportedStrategies": [
+    "cluster",
+    "partition",
+    "spread"
+   ]
+  },
+  "ProcessorInfo": {
+   "Manufacturer": "AWS",
+   "SupportedArchitectures": [
+    "arm64"
+   ],
+   "SustainedClockSpeedInGhz": 2.8
+  },
+  "SupportedBootModes": [
+   "uefi"
+  ],
+  "SupportedRootDeviceTypes": [
+   "ebs"
+  ],
+  "SupportedUsageClasses": [
+   "on-demand",
+   "spot"
+  ],
+  "SupportedVirtualizationTypes": [
+   "hvm"
+  ],
+  "VCpuInfo": {
+   "DefaultCores": 2,
+   "DefaultThreadsPerCore": 1,
+   "DefaultVCpus": 2,
+   "ValidCores": [
+    1,
+    2
+   ],
+   "ValidThreadsPerCore": [
+    1
+   ]
+  }
+ },
+ "i8g.metal-24xl": {
+  "AutoRecoverySupported": false,
+  "BareMetal": true,
+  "BurstablePerformanceSupported": false,
+  "CurrentGeneration": true,
+  "DedicatedHostsSupported": true,
+  "EbsInfo": {
+   "EbsOptimizedInfo": {
+    "BaselineBandwidthInMbps": 30000,
+    "BaselineIops": 120000,
+    "BaselineThroughputInMBps": 3750.0,
+    "MaximumBandwidthInMbps": 30000,
+    "MaximumIops": 120000,
+    "MaximumThroughputInMBps": 3750.0
+   },
+   "EbsOptimizedSupport": "default",
+   "EncryptionSupport": "supported",
+   "NvmeSupport": "required"
+  },
+  "FreeTierEligible": false,
+  "HibernationSupported": false,
+  "InstanceStorageInfo": {
+   "Disks": [
+    {
+     "Count": 6,
+     "SizeInGB": 3750,
+     "Type": "ssd"
+    }
+   ],
+   "EncryptionSupport": "required",
+   "NvmeSupport": "required",
+   "TotalSizeInGB": 22500
+  },
+  "InstanceStorageSupported": true,
+  "InstanceType": "i8g.metal-24xl",
+  "MemoryInfo": {
+   "SizeInMiB": 786432
+  },
+  "NetworkInfo": {
+   "DefaultNetworkCardIndex": 0,
+   "EfaSupported": false,
+   "EnaSrdSupported": true,
+   "EnaSupport": "required",
+   "EncryptionInTransitSupported": true,
+   "Ipv4AddressesPerInterface": 50,
+   "Ipv6AddressesPerInterface": 50,
+   "Ipv6Supported": true,
+   "MaximumNetworkCards": 1,
+   "MaximumNetworkInterfaces": 15,
+   "NetworkCards": [
+    {
+     "BaselineBandwidthInGbps": 28.125,
+     "MaximumNetworkInterfaces": 15,
+     "NetworkCardIndex": 0,
+     "NetworkPerformance": "Up to 56.25 Gigabit",
+     "PeakBandwidthInGbps": 56.25
+    }
+   ],
+   "NetworkPerformance": "Up to 56.25 Gigabit"
+  },
+  "NitroEnclavesSupport": "unsupported",
+  "NitroTpmSupport": "unsupported",
+  "PhcSupport": "unsupported",
+  "PlacementGroupInfo": {
+   "SupportedStrategies": [
+    "cluster",
+    "partition",
+    "spread"
+   ]
+  },
+  "ProcessorInfo": {
+   "Manufacturer": "AWS",
+   "SupportedArchitectures": [
+    "arm64"
+   ],
+   "SustainedClockSpeedInGhz": 2.8
+  },
+  "SupportedBootModes": [
+   "uefi"
+  ],
+  "SupportedRootDeviceTypes": [
+   "ebs"
+  ],
+  "SupportedUsageClasses": [
+   "on-demand",
+   "spot"
+  ],
+  "SupportedVirtualizationTypes": [
+   "hvm"
+  ],
+  "VCpuInfo": {
+   "DefaultCores": 96,
+   "DefaultThreadsPerCore": 1,
+   "DefaultVCpus": 96
+  }
+ },
+ "i8g.xlarge": {
+  "AutoRecoverySupported": false,
+  "BareMetal": false,
+  "BurstablePerformanceSupported": false,
+  "CurrentGeneration": true,
+  "DedicatedHostsSupported": true,
+  "EbsInfo": {
+   "EbsOptimizedInfo": {
+    "BaselineBandwidthInMbps": 1250,
+    "BaselineIops": 5000,
+    "BaselineThroughputInMBps": 156.25,
+    "MaximumBandwidthInMbps": 10000,
+    "MaximumIops": 40000,
+    "MaximumThroughputInMBps": 1250.0
+   },
+   "EbsOptimizedSupport": "default",
+   "EncryptionSupport": "supported",
+   "NvmeSupport": "required"
+  },
+  "FreeTierEligible": false,
+  "HibernationSupported": false,
+  "Hypervisor": "nitro",
+  "InstanceStorageInfo": {
+   "Disks": [
+    {
+     "Count": 1,
+     "SizeInGB": 937,
+     "Type": "ssd"
+    }
+   ],
+   "EncryptionSupport": "required",
+   "NvmeSupport": "required",
+   "TotalSizeInGB": 937
+  },
+  "InstanceStorageSupported": true,
+  "InstanceType": "i8g.xlarge",
+  "MemoryInfo": {
+   "SizeInMiB": 32768
+  },
+  "NetworkInfo": {
+   "DefaultNetworkCardIndex": 0,
+   "EfaSupported": false,
+   "EnaSrdSupported": false,
+   "EnaSupport": "required",
+   "EncryptionInTransitSupported": true,
+   "Ipv4AddressesPerInterface": 15,
+   "Ipv6AddressesPerInterface": 15,
+   "Ipv6Supported": true,
+   "MaximumNetworkCards": 1,
+   "MaximumNetworkInterfaces": 4,
+   "NetworkCards": [
+    {
+     "BaselineBandwidthInGbps": 2.344,
+     "MaximumNetworkInterfaces": 4,
+     "NetworkCardIndex": 0,
+     "NetworkPerformance": "Up to 10 Gigabit",
+     "PeakBandwidthInGbps": 10.0
+    }
+   ],
+   "NetworkPerformance": "Up to 10 Gigabit"
+  },
+  "NitroEnclavesSupport": "supported",
+  "NitroTpmInfo": {
+   "SupportedVersions": [
+    "2.0"
+   ]
+  },
+  "NitroTpmSupport": "supported",
+  "PhcSupport": "unsupported",
+  "PlacementGroupInfo": {
+   "SupportedStrategies": [
+    "cluster",
+    "partition",
+    "spread"
+   ]
+  },
+  "ProcessorInfo": {
+   "Manufacturer": "AWS",
+   "SupportedArchitectures": [
+    "arm64"
+   ],
+   "SustainedClockSpeedInGhz": 2.8
+  },
+  "SupportedBootModes": [
+   "uefi"
+  ],
+  "SupportedRootDeviceTypes": [
+   "ebs"
+  ],
+  "SupportedUsageClasses": [
+   "on-demand",
+   "spot"
+  ],
+  "SupportedVirtualizationTypes": [
+   "hvm"
+  ],
+  "VCpuInfo": {
+   "DefaultCores": 4,
+   "DefaultThreadsPerCore": 1,
+   "DefaultVCpus": 4,
+   "ValidCores": [
+    1,
+    2,
+    3,
+    4
+   ],
+   "ValidThreadsPerCore": [
+    1
+   ]
+  }
+ },
  "im4gn.16xlarge": {
   "AutoRecoverySupported": false,
   "BareMetal": false,
@@ -60990,9 +63376,172 @@
    "ebs"
   ],
   "SupportedUsageClasses": [
-   "capacity-block",
-   "on-demand",
-   "spot"
+   "capacity-block",
+   "on-demand",
+   "spot"
+  ],
+  "SupportedVirtualizationTypes": [
+   "hvm"
+  ],
+  "VCpuInfo": {
+   "DefaultCores": 48,
+   "DefaultThreadsPerCore": 2,
+   "DefaultVCpus": 96,
+   "ValidCores": [
+    2,
+    4,
+    6,
+    8,
+    10,
+    12,
+    14,
+    16,
+    18,
+    20,
+    22,
+    24,
+    26,
+    28,
+    30,
+    32,
+    34,
+    36,
+    38,
+    40,
+    42,
+    44,
+    46,
+    48
+   ],
+   "ValidThreadsPerCore": [
+    1,
+    2
+   ]
+  }
+ },
+ "p4de.24xlarge": {
+  "AutoRecoverySupported": false,
+  "BareMetal": false,
+  "BurstablePerformanceSupported": false,
+  "CurrentGeneration": true,
+  "DedicatedHostsSupported": false,
+  "EbsInfo": {
+   "EbsOptimizedInfo": {
+    "BaselineBandwidthInMbps": 19000,
+    "BaselineIops": 80000,
+    "BaselineThroughputInMBps": 2375.0,
+    "MaximumBandwidthInMbps": 19000,
+    "MaximumIops": 80000,
+    "MaximumThroughputInMBps": 2375.0
+   },
+   "EbsOptimizedSupport": "default",
+   "EncryptionSupport": "supported",
+   "NvmeSupport": "required"
+  },
+  "FreeTierEligible": false,
+  "GpuInfo": {
+   "Gpus": [
+    {
+     "Count": 8,
+     "Manufacturer": "NVIDIA",
+     "MemoryInfo": {
+      "SizeInMiB": 81920
+     },
+     "Name": "A100"
+    }
+   ],
+   "TotalGpuMemoryInMiB": 655360
+  },
+  "HibernationSupported": false,
+  "Hypervisor": "nitro",
+  "InstanceStorageInfo": {
+   "Disks": [
+    {
+     "Count": 8,
+     "SizeInGB": 1000,
+     "Type": "ssd"
+    }
+   ],
+   "EncryptionSupport": "required",
+   "NvmeSupport": "required",
+   "TotalSizeInGB": 8000
+  },
+  "InstanceStorageSupported": true,
+  "InstanceType": "p4de.24xlarge",
+  "MemoryInfo": {
+   "SizeInMiB": 1179648
+  },
+  "NetworkInfo": {
+   "DefaultNetworkCardIndex": 0,
+   "EfaInfo": {
+    "MaximumEfaInterfaces": 4
+   },
+   "EfaSupported": true,
+   "EnaSrdSupported": false,
+   "EnaSupport": "required",
+   "EncryptionInTransitSupported": true,
+   "Ipv4AddressesPerInterface": 50,
+   "Ipv6AddressesPerInterface": 50,
+   "Ipv6Supported": true,
+   "MaximumNetworkCards": 4,
+   "MaximumNetworkInterfaces": 60,
+   "NetworkCards": [
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 15,
+     "NetworkCardIndex": 0,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 15,
+     "NetworkCardIndex": 1,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 15,
+     "NetworkCardIndex": 2,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 15,
+     "NetworkCardIndex": 3,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    }
+   ],
+   "NetworkPerformance": "4x 100 Gigabit"
+  },
+  "NitroEnclavesSupport": "supported",
+  "NitroTpmSupport": "unsupported",
+  "PhcSupport": "unsupported",
+  "PlacementGroupInfo": {
+   "SupportedStrategies": [
+    "cluster",
+    "partition",
+    "spread"
+   ]
+  },
+  "ProcessorInfo": {
+   "Manufacturer": "Intel",
+   "SupportedArchitectures": [
+    "x86_64"
+   ],
+   "SustainedClockSpeedInGhz": 3.0
+  },
+  "SupportedBootModes": [
+   "legacy-bios"
+  ],
+  "SupportedRootDeviceTypes": [
+   "ebs"
+  ],
+  "SupportedUsageClasses": [
+   "on-demand"
   ],
   "SupportedVirtualizationTypes": [
    "hvm"
@@ -61033,7 +63582,7 @@
    ]
   }
  },
- "p4de.24xlarge": {
+ "p5.48xlarge": {
   "AutoRecoverySupported": false,
   "BareMetal": false,
   "BurstablePerformanceSupported": false,
@@ -61041,12 +63590,12 @@
   "DedicatedHostsSupported": false,
   "EbsInfo": {
    "EbsOptimizedInfo": {
-    "BaselineBandwidthInMbps": 19000,
-    "BaselineIops": 80000,
-    "BaselineThroughputInMBps": 2375.0,
-    "MaximumBandwidthInMbps": 19000,
-    "MaximumIops": 80000,
-    "MaximumThroughputInMBps": 2375.0
+    "BaselineBandwidthInMbps": 80000,
+    "BaselineIops": 260000,
+    "BaselineThroughputInMBps": 10000.0,
+    "MaximumBandwidthInMbps": 80000,
+    "MaximumIops": 260000,
+    "MaximumThroughputInMBps": 10000.0
    },
    "EbsOptimizedSupport": "default",
    "EncryptionSupport": "supported",
@@ -61061,7 +63610,7 @@
      "MemoryInfo": {
       "SizeInMiB": 81920
      },
-     "Name": "A100"
+     "Name": "H100"
     }
    ],
    "TotalGpuMemoryInMiB": 655360
@@ -61072,23 +63621,23 @@
    "Disks": [
     {
      "Count": 8,
-     "SizeInGB": 1000,
+     "SizeInGB": 3800,
      "Type": "ssd"
     }
    ],
    "EncryptionSupport": "required",
    "NvmeSupport": "required",
-   "TotalSizeInGB": 8000
+   "TotalSizeInGB": 30400
   },
   "InstanceStorageSupported": true,
-  "InstanceType": "p4de.24xlarge",
+  "InstanceType": "p5.48xlarge",
   "MemoryInfo": {
-   "SizeInMiB": 1179648
+   "SizeInMiB": 2097152
   },
   "NetworkInfo": {
    "DefaultNetworkCardIndex": 0,
    "EfaInfo": {
-    "MaximumEfaInterfaces": 4
+    "MaximumEfaInterfaces": 32
    },
    "EfaSupported": true,
    "EnaSrdSupported": false,
@@ -61097,39 +63646,235 @@
    "Ipv4AddressesPerInterface": 50,
    "Ipv6AddressesPerInterface": 50,
    "Ipv6Supported": true,
-   "MaximumNetworkCards": 4,
-   "MaximumNetworkInterfaces": 60,
+   "MaximumNetworkCards": 32,
+   "MaximumNetworkInterfaces": 64,
    "NetworkCards": [
     {
      "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 15,
+     "MaximumNetworkInterfaces": 2,
      "NetworkCardIndex": 0,
      "NetworkPerformance": "100 Gigabit",
      "PeakBandwidthInGbps": 100.0
     },
     {
      "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 15,
+     "MaximumNetworkInterfaces": 2,
      "NetworkCardIndex": 1,
      "NetworkPerformance": "100 Gigabit",
      "PeakBandwidthInGbps": 100.0
     },
     {
      "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 15,
+     "MaximumNetworkInterfaces": 2,
      "NetworkCardIndex": 2,
      "NetworkPerformance": "100 Gigabit",
      "PeakBandwidthInGbps": 100.0
     },
     {
      "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 15,
+     "MaximumNetworkInterfaces": 2,
      "NetworkCardIndex": 3,
      "NetworkPerformance": "100 Gigabit",
      "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 4,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 5,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 6,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 7,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 8,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 9,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 10,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 11,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 12,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 13,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 14,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 15,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 16,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 17,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 18,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 19,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 20,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 21,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 22,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 23,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 24,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 25,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 26,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 27,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 28,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 29,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 30,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
+    },
+    {
+     "BaselineBandwidthInGbps": 100.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 31,
+     "NetworkPerformance": "100 Gigabit",
+     "PeakBandwidthInGbps": 100.0
     }
    ],
-   "NetworkPerformance": "4x 100 Gigabit"
+   "NetworkPerformance": "3200 Gigabit"
   },
   "NitroEnclavesSupport": "supported",
   "NitroTpmSupport": "unsupported",
@@ -61142,11 +63887,11 @@
    ]
   },
   "ProcessorInfo": {
-   "Manufacturer": "Intel",
+   "Manufacturer": "AMD",
    "SupportedArchitectures": [
     "x86_64"
    ],
-   "SustainedClockSpeedInGhz": 3.0
+   "SustainedClockSpeedInGhz": 3.6
   },
   "SupportedBootModes": [
    "legacy-bios"
@@ -61155,40 +63900,26 @@
    "ebs"
   ],
   "SupportedUsageClasses": [
-   "on-demand"
+   "capacity-block",
+   "on-demand",
+   "spot"
   ],
   "SupportedVirtualizationTypes": [
    "hvm"
   ],
   "VCpuInfo": {
-   "DefaultCores": 48,
+   "DefaultCores": 96,
    "DefaultThreadsPerCore": 2,
-   "DefaultVCpus": 96,
+   "DefaultVCpus": 192,
    "ValidCores": [
-    2,
-    4,
-    6,
-    8,
-    10,
     12,
-    14,
-    16,
-    18,
-    20,
-    22,
     24,
-    26,
-    28,
-    30,
-    32,
-    34,
     36,
-    38,
-    40,
-    42,
-    44,
-    46,
-    48
+    48,
+    60,
+    72,
+    84,
+    96
    ],
    "ValidThreadsPerCore": [
     1,
@@ -61196,7 +63927,7 @@
    ]
   }
  },
- "p5.48xlarge": {
+ "p5e.48xlarge": {
   "AutoRecoverySupported": false,
   "BareMetal": false,
   "BurstablePerformanceSupported": false,
@@ -61222,12 +63953,12 @@
      "Count": 8,
      "Manufacturer": "NVIDIA",
      "MemoryInfo": {
-      "SizeInMiB": 81920
+      "SizeInMiB": 144384
      },
-     "Name": "H100"
+     "Name": "H200"
     }
    ],
-   "TotalGpuMemoryInMiB": 655360
+   "TotalGpuMemoryInMiB": 1155072
   },
   "HibernationSupported": false,
   "Hypervisor": "nitro",
@@ -61244,7 +63975,7 @@
    "TotalSizeInGB": 30400
   },
   "InstanceStorageSupported": true,
-  "InstanceType": "p5.48xlarge",
+  "InstanceType": "p5e.48xlarge",
   "MemoryInfo": {
    "SizeInMiB": 2097152
   },
@@ -61491,7 +64222,12 @@
    "NetworkPerformance": "3200 Gigabit"
   },
   "NitroEnclavesSupport": "supported",
-  "NitroTpmSupport": "unsupported",
+  "NitroTpmInfo": {
+   "SupportedVersions": [
+    "2.0"
+   ]
+  },
+  "NitroTpmSupport": "supported",
   "PhcSupport": "unsupported",
   "PlacementGroupInfo": {
    "SupportedStrategies": [
@@ -61508,15 +64244,15 @@
    "SustainedClockSpeedInGhz": 3.6
   },
   "SupportedBootModes": [
-   "legacy-bios"
+   "legacy-bios",
+   "uefi"
   ],
   "SupportedRootDeviceTypes": [
    "ebs"
   ],
   "SupportedUsageClasses": [
    "capacity-block",
-   "on-demand",
-   "spot"
+   "on-demand"
   ],
   "SupportedVirtualizationTypes": [
    "hvm"
@@ -61541,7 +64277,7 @@
    ]
   }
  },
- "p5e.48xlarge": {
+ "p5en.48xlarge": {
   "AutoRecoverySupported": false,
   "BareMetal": false,
   "BurstablePerformanceSupported": false,
@@ -61549,12 +64285,12 @@
   "DedicatedHostsSupported": false,
   "EbsInfo": {
    "EbsOptimizedInfo": {
-    "BaselineBandwidthInMbps": 80000,
-    "BaselineIops": 260000,
-    "BaselineThroughputInMBps": 10000.0,
-    "MaximumBandwidthInMbps": 80000,
-    "MaximumIops": 260000,
-    "MaximumThroughputInMBps": 10000.0
+    "BaselineBandwidthInMbps": 100000,
+    "BaselineIops": 400000,
+    "BaselineThroughputInMBps": 12500.0,
+    "MaximumBandwidthInMbps": 100000,
+    "MaximumIops": 400000,
+    "MaximumThroughputInMBps": 12500.0
    },
    "EbsOptimizedSupport": "default",
    "EncryptionSupport": "supported",
@@ -61569,7 +64305,7 @@
      "MemoryInfo": {
       "SizeInMiB": 144384
      },
-     "Name": "H200"
+     "Name": "NVIDIA"
     }
    ],
    "TotalGpuMemoryInMiB": 1155072
@@ -61589,14 +64325,14 @@
    "TotalSizeInGB": 30400
   },
   "InstanceStorageSupported": true,
-  "InstanceType": "p5e.48xlarge",
+  "InstanceType": "p5en.48xlarge",
   "MemoryInfo": {
    "SizeInMiB": 2097152
   },
   "NetworkInfo": {
    "DefaultNetworkCardIndex": 0,
    "EfaInfo": {
-    "MaximumEfaInterfaces": 32
+    "MaximumEfaInterfaces": 16
    },
    "EfaSupported": true,
    "EnaSrdSupported": false,
@@ -61605,243 +64341,126 @@
    "Ipv4AddressesPerInterface": 50,
    "Ipv6AddressesPerInterface": 50,
    "Ipv6Supported": true,
-   "MaximumNetworkCards": 32,
+   "MaximumNetworkCards": 16,
    "MaximumNetworkInterfaces": 64,
    "NetworkCards": [
     {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 4,
      "NetworkCardIndex": 0,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
     },
     {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 4,
      "NetworkCardIndex": 1,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
     },
     {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 4,
      "NetworkCardIndex": 2,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
     },
     {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 4,
      "NetworkCardIndex": 3,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
     },
     {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
-     "NetworkCardIndex": 4,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 4,
+     "NetworkCardIndex": 4,
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
     },
     {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 4,
      "NetworkCardIndex": 5,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
     },
     {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 4,
      "NetworkCardIndex": 6,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
     },
     {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 4,
      "NetworkCardIndex": 7,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
     },
     {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 4,
      "NetworkCardIndex": 8,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
     },
     {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 4,
      "NetworkCardIndex": 9,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
     },
     {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 4,
      "NetworkCardIndex": 10,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
     },
     {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 4,
      "NetworkCardIndex": 11,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
     },
     {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 4,
      "NetworkCardIndex": 12,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
     },
     {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 4,
      "NetworkCardIndex": 13,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
     },
     {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 4,
      "NetworkCardIndex": 14,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
     },
     {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 4,
      "NetworkCardIndex": 15,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
-    },
-    {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
-     "NetworkCardIndex": 16,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
-    },
-    {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
-     "NetworkCardIndex": 17,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
-    },
-    {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
-     "NetworkCardIndex": 18,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
-    },
-    {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
-     "NetworkCardIndex": 19,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
-    },
-    {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
-     "NetworkCardIndex": 20,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
-    },
-    {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
-     "NetworkCardIndex": 21,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
-    },
-    {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
-     "NetworkCardIndex": 22,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
-    },
-    {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
-     "NetworkCardIndex": 23,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
-    },
-    {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
-     "NetworkCardIndex": 24,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
-    },
-    {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
-     "NetworkCardIndex": 25,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
-    },
-    {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
-     "NetworkCardIndex": 26,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
-    },
-    {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
-     "NetworkCardIndex": 27,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
-    },
-    {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
-     "NetworkCardIndex": 28,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
-    },
-    {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
-     "NetworkCardIndex": 29,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
-    },
-    {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
-     "NetworkCardIndex": 30,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
-    },
-    {
-     "BaselineBandwidthInGbps": 100.0,
-     "MaximumNetworkInterfaces": 2,
-     "NetworkCardIndex": 31,
-     "NetworkPerformance": "100 Gigabit",
-     "PeakBandwidthInGbps": 100.0
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
     }
    ],
-   "NetworkPerformance": "3200 Gigabit"
+   "NetworkPerformance": "200 Gigabit"
   },
   "NitroEnclavesSupport": "supported",
-  "NitroTpmInfo": {
-   "SupportedVersions": [
-    "2.0"
-   ]
-  },
-  "NitroTpmSupport": "supported",
+  "NitroTpmSupport": "unsupported",
   "PhcSupport": "unsupported",
   "PlacementGroupInfo": {
    "SupportedStrategies": [
@@ -61851,11 +64470,11 @@
    ]
   },
   "ProcessorInfo": {
-   "Manufacturer": "AMD",
+   "Manufacturer": "Intel",
    "SupportedArchitectures": [
     "x86_64"
    ],
-   "SustainedClockSpeedInGhz": 3.6
+   "SustainedClockSpeedInGhz": 2.4
   },
   "SupportedBootModes": [
    "legacy-bios",
@@ -61866,7 +64485,8 @@
   ],
   "SupportedUsageClasses": [
    "capacity-block",
-   "on-demand"
+   "on-demand",
+   "spot"
   ],
   "SupportedVirtualizationTypes": [
    "hvm"
@@ -61876,13 +64496,52 @@
    "DefaultThreadsPerCore": 2,
    "DefaultVCpus": 192,
    "ValidCores": [
+    4,
+    6,
+    8,
+    10,
     12,
+    14,
+    16,
+    18,
+    20,
+    22,
     24,
+    26,
+    28,
+    30,
+    32,
+    34,
     36,
+    38,
+    40,
+    42,
+    44,
+    46,
     48,
+    50,
+    52,
+    54,
+    56,
+    58,
     60,
+    62,
+    64,
+    66,
+    68,
+    70,
     72,
+    74,
+    76,
+    78,
+    80,
+    82,
     84,
+    86,
+    88,
+    90,
+    92,
+    94,
     96
    ],
    "ValidThreadsPerCore": [
@@ -87901,6 +90560,269 @@
    ]
   }
  },
+ "trn2.48xlarge": {
+  "AutoRecoverySupported": false,
+  "BareMetal": false,
+  "BurstablePerformanceSupported": false,
+  "CurrentGeneration": true,
+  "DedicatedHostsSupported": false,
+  "EbsInfo": {
+   "EbsOptimizedInfo": {
+    "BaselineBandwidthInMbps": 80000,
+    "BaselineIops": 260000,
+    "BaselineThroughputInMBps": 10000.0,
+    "MaximumBandwidthInMbps": 80000,
+    "MaximumIops": 260000,
+    "MaximumThroughputInMBps": 10000.0
+   },
+   "EbsOptimizedSupport": "default",
+   "EncryptionSupport": "supported",
+   "NvmeSupport": "required"
+  },
+  "FreeTierEligible": false,
+  "HibernationSupported": false,
+  "Hypervisor": "nitro",
+  "InstanceStorageSupported": false,
+  "InstanceType": "trn2.48xlarge",
+  "MemoryInfo": {
+   "SizeInMiB": 2097152
+  },
+  "NetworkInfo": {
+   "DefaultNetworkCardIndex": 0,
+   "EfaInfo": {
+    "MaximumEfaInterfaces": 16
+   },
+   "EfaSupported": true,
+   "EnaSrdSupported": false,
+   "EnaSupport": "required",
+   "EncryptionInTransitSupported": true,
+   "Ipv4AddressesPerInterface": 50,
+   "Ipv6AddressesPerInterface": 50,
+   "Ipv6Supported": true,
+   "MaximumNetworkCards": 16,
+   "MaximumNetworkInterfaces": 32,
+   "NetworkCards": [
+    {
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 0,
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
+    },
+    {
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 1,
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
+    },
+    {
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 2,
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
+    },
+    {
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 3,
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
+    },
+    {
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 4,
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
+    },
+    {
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 5,
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
+    },
+    {
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 6,
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
+    },
+    {
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 7,
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
+    },
+    {
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 8,
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
+    },
+    {
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 9,
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
+    },
+    {
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 10,
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
+    },
+    {
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 11,
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
+    },
+    {
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 12,
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
+    },
+    {
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 13,
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
+    },
+    {
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 14,
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
+    },
+    {
+     "BaselineBandwidthInGbps": 200.0,
+     "MaximumNetworkInterfaces": 2,
+     "NetworkCardIndex": 15,
+     "NetworkPerformance": "200 Gigabit",
+     "PeakBandwidthInGbps": 200.0
+    }
+   ],
+   "NetworkPerformance": "16x 200 Gigabit"
+  },
+  "NeuronInfo": {
+   "NeuronDevices": [
+    {
+     "CoreInfo": {
+      "Count": 8,
+      "Version": 3
+     },
+     "Count": 16,
+     "MemoryInfo": {
+      "SizeInMiB": 524288
+     },
+     "Name": "Trainium2"
+    }
+   ],
+   "TotalNeuronDeviceMemoryInMiB": 8388608
+  },
+  "NitroEnclavesSupport": "supported",
+  "NitroTpmSupport": "unsupported",
+  "PhcSupport": "unsupported",
+  "PlacementGroupInfo": {
+   "SupportedStrategies": [
+    "cluster",
+    "partition",
+    "spread"
+   ]
+  },
+  "ProcessorInfo": {
+   "Manufacturer": "Intel",
+   "SupportedArchitectures": [
+    "x86_64"
+   ],
+   "SustainedClockSpeedInGhz": 3.5
+  },
+  "SupportedBootModes": [
+   "legacy-bios",
+   "uefi"
+  ],
+  "SupportedRootDeviceTypes": [
+   "ebs"
+  ],
+  "SupportedUsageClasses": [
+   "capacity-block",
+   "on-demand"
+  ],
+  "SupportedVirtualizationTypes": [
+   "hvm"
+  ],
+  "VCpuInfo": {
+   "DefaultCores": 96,
+   "DefaultThreadsPerCore": 2,
+   "DefaultVCpus": 192,
+   "ValidCores": [
+    4,
+    6,
+    8,
+    10,
+    12,
+    14,
+    16,
+    18,
+    20,
+    22,
+    24,
+    26,
+    28,
+    30,
+    32,
+    34,
+    36,
+    38,
+    40,
+    42,
+    44,
+    46,
+    48,
+    50,
+    52,
+    54,
+    56,
+    58,
+    60,
+    62,
+    64,
+    66,
+    68,
+    70,
+    72,
+    74,
+    76,
+    78,
+    80,
+    82,
+    84,
+    86,
+    88,
+    90,
+    92,
+    94,
+    96
+   ],
+   "ValidThreadsPerCore": [
+    1,
+    2
+   ]
+  }
+ },
  "u-12tb1.112xlarge": {
   "AutoRecoverySupported": true,
   "BareMetal": false,
diff --git a/moto/es/models.py b/moto/es/models.py
index 6c7631752..4cc65d6fb 100644
--- a/moto/es/models.py
+++ b/moto/es/models.py
@@ -142,5 +142,14 @@ class ElasticsearchServiceBackend(BaseBackend):
         """
         return [{"DomainName": domain.domain_name} for domain in self.domains.values()]
 
+    def describe_elasticsearch_domains(
+        self, domain_names: List[str]
+    ) -> List[Dict[str, Any]]:
+        queried_domains = []
+        for domain_name in domain_names:
+            if domain_name in self.domains:
+                queried_domains.append(self.domains[domain_name].to_json())
+        return queried_domains
+
 
 es_backends = BackendDict(ElasticsearchServiceBackend, "es")
diff --git a/moto/es/responses.py b/moto/es/responses.py
index d8e7ac813..35293b33d 100644
--- a/moto/es/responses.py
+++ b/moto/es/responses.py
@@ -13,7 +13,7 @@ class ElasticsearchServiceResponse(BaseResponse):
     """Handler for ElasticsearchService requests and responses."""
 
     def __init__(self) -> None:
-        super().__init__(service_name="elasticsearch")
+        super().__init__(service_name="es")
 
     @property
     def es_backend(self) -> ElasticsearchServiceBackend:
@@ -98,3 +98,10 @@ class ElasticsearchServiceResponse(BaseResponse):
     def list_domain_names(self) -> TYPE_RESPONSE:
         domain_names = self.es_backend.list_domain_names()
         return 200, {}, json.dumps({"DomainNames": domain_names})
+
+    def describe_elasticsearch_domains(self) -> TYPE_RESPONSE:
+        domain_names = self._get_param("DomainNames")
+        domain_list = self.es_backend.describe_elasticsearch_domains(
+            domain_names=domain_names,
+        )
+        return 200, {}, json.dumps({"DomainStatusList": domain_list})
diff --git a/moto/es/urls.py b/moto/es/urls.py
index d125e9a09..fbee7fcb7 100644
--- a/moto/es/urls.py
+++ b/moto/es/urls.py
@@ -11,11 +11,13 @@ url_paths = {
     "{0}/2015-01-01/domain$": ElasticsearchServiceResponse.list_domains,
     "{0}/2015-01-01/es/domain$": ElasticsearchServiceResponse.domains,
     "{0}/2015-01-01/es/domain/(?P<domainname>[^/]+)": ElasticsearchServiceResponse.domain,
+    "{0}/2015-01-01/es/domain-info$": ElasticsearchServiceResponse.dispatch,
     "{0}/2021-01-01/domain$": OpenSearchServiceResponse.dispatch,
     "{0}/2021-01-01/opensearch/compatibleVersions": OpenSearchServiceResponse.dispatch,
     "{0}/2021-01-01/opensearch/domain": OpenSearchServiceResponse.dispatch,
     "{0}/2021-01-01/opensearch/domain/(?P<domainname>[^/]+)": OpenSearchServiceResponse.dispatch,
     "{0}/2021-01-01/opensearch/domain/(?P<domainname>[^/]+)/config": OpenSearchServiceResponse.dispatch,
+    "{0}/2021-01-01/opensearch/domain-info$": OpenSearchServiceResponse.dispatch,
     "{0}/2021-01-01/tags/?": OpenSearchServiceResponse.dispatch,
     "{0}/2021-01-01/tags-removal/": OpenSearchServiceResponse.dispatch,
 }
diff --git a/moto/kafka/__init__.py b/moto/kafka/__init__.py
new file mode 100644
index 000000000..578812355
--- /dev/null
+++ b/moto/kafka/__init__.py
@@ -0,0 +1,1 @@
+from .models import kafka_backends  # noqa: F401
diff --git a/moto/kafka/exceptions.py b/moto/kafka/exceptions.py
new file mode 100644
index 000000000..9dc38515a
--- /dev/null
+++ b/moto/kafka/exceptions.py
@@ -0,0 +1,1 @@
+"""Exceptions raised by the kafka service."""
diff --git a/moto/kafka/models.py b/moto/kafka/models.py
new file mode 100644
index 000000000..8308f5a1b
--- /dev/null
+++ b/moto/kafka/models.py
@@ -0,0 +1,332 @@
+"""KafkaBackend class with methods for supported APIs."""
+
+import uuid
+from datetime import datetime
+from typing import Any, Dict, List, Optional, Tuple
+
+from moto.core.base_backend import BackendDict, BaseBackend
+from moto.core.common_models import BaseModel
+from moto.utilities.utils import get_partition
+
+from ..utilities.tagging_service import TaggingService
+
+
+class FakeKafkaCluster(BaseModel):
+    def __init__(
+        self,
+        cluster_name: str,
+        account_id: str,
+        region_name: str,
+        cluster_type: str,
+        tags: Optional[Dict[str, str]] = None,
+        broker_node_group_info: Optional[Dict[str, Any]] = None,
+        kafka_version: Optional[str] = None,
+        number_of_broker_nodes: Optional[int] = None,
+        configuration_info: Optional[Dict[str, Any]] = None,
+        serverless_config: Optional[Dict[str, Any]] = None,
+        encryption_info: Optional[Dict[str, Any]] = None,
+        enhanced_monitoring: str = "DEFAULT",
+        open_monitoring: Optional[Dict[str, Any]] = None,
+        logging_info: Optional[Dict[str, Any]] = None,
+        storage_mode: str = "LOCAL",
+        current_version: str = "1.0",
+        client_authentication: Optional[Dict[str, Any]] = None,
+        state: str = "CREATING",
+        active_operation_arn: Optional[str] = None,
+        zookeeper_connect_string: Optional[str] = None,
+        zookeeper_connect_string_tls: Optional[str] = None,
+    ):
+        # General attributes
+        self.cluster_id = str(uuid.uuid4())
+        self.cluster_name = cluster_name
+        self.account_id = account_id
+        self.region_name = region_name
+        self.cluster_type = cluster_type
+        self.tags = tags or {}
+        self.state = state
+        self.creation_time = datetime.now().isoformat()
+        self.current_version = current_version
+        self.active_operation_arn = active_operation_arn
+        self.arn = self._generate_arn()
+
+        # Attributes specific to PROVISIONED clusters
+        self.broker_node_group_info = broker_node_group_info
+        self.kafka_version = kafka_version
+        self.number_of_broker_nodes = number_of_broker_nodes
+        self.configuration_info = configuration_info
+        self.encryption_info = encryption_info
+        self.enhanced_monitoring = enhanced_monitoring
+        self.open_monitoring = open_monitoring
+        self.logging_info = logging_info
+        self.storage_mode = storage_mode
+        self.client_authentication = client_authentication
+        self.zookeeper_connect_string = zookeeper_connect_string
+        self.zookeeper_connect_string_tls = zookeeper_connect_string_tls
+
+        # Attributes specific to SERVERLESS clusters
+        self.serverless_config = serverless_config
+
+    def _generate_arn(self) -> str:
+        resource_type = (
+            "cluster" if self.cluster_type == "PROVISIONED" else "serverless-cluster"
+        )
+        partition = get_partition(self.region_name)
+        return f"arn:{partition}:kafka:{self.region_name}:{self.account_id}:{resource_type}/{self.cluster_id}"
+
+
+class KafkaBackend(BaseBackend):
+    """Implementation of Kafka APIs."""
+
+    def __init__(self, region_name: str, account_id: str):
+        super().__init__(region_name, account_id)
+        self.clusters: Dict[str, FakeKafkaCluster] = {}
+        self.tagger = TaggingService()
+
+    def create_cluster_v2(
+        self,
+        cluster_name: str,
+        tags: Optional[Dict[str, str]],
+        provisioned: Optional[Dict[str, Any]],
+        serverless: Optional[Dict[str, Any]],
+    ) -> Tuple[str, str, str, str]:
+        if provisioned:
+            cluster_type = "PROVISIONED"
+            broker_node_group_info = provisioned.get("brokerNodeGroupInfo")
+            kafka_version = provisioned.get("kafkaVersion", "default-kafka-version")
+            number_of_broker_nodes = int(provisioned.get("numberOfBrokerNodes", 1))
+            storage_mode = provisioned.get("storageMode", "LOCAL")
+            serverless_config = None
+        elif serverless:
+            cluster_type = "SERVERLESS"
+            broker_node_group_info = None
+            kafka_version = None
+            number_of_broker_nodes = None
+            storage_mode = None
+            serverless_config = serverless
+
+        new_cluster = FakeKafkaCluster(
+            cluster_name=cluster_name,
+            account_id=self.account_id,
+            region_name=self.region_name,
+            cluster_type=cluster_type,
+            broker_node_group_info=broker_node_group_info,
+            kafka_version=kafka_version,
+            number_of_broker_nodes=number_of_broker_nodes,
+            serverless_config=serverless_config,
+            tags=tags,
+            state="CREATING",
+            storage_mode=storage_mode if storage_mode else "LOCAL",
+            current_version="1.0",
+        )
+
+        self.clusters[new_cluster.arn] = new_cluster
+
+        if tags:
+            self.tag_resource(new_cluster.arn, tags)
+
+        return (
+            new_cluster.arn,
+            new_cluster.cluster_name,
+            new_cluster.state,
+            new_cluster.cluster_type,
+        )
+
+    def describe_cluster_v2(self, cluster_arn: str) -> Dict[str, Any]:
+        cluster = self.clusters[cluster_arn]
+
+        cluster_info: Dict[str, Any] = {
+            "activeOperationArn": "arn:aws:kafka:region:account-id:operation/active-operation",
+            "clusterArn": cluster.arn,
+            "clusterName": cluster.cluster_name,
+            "clusterType": cluster.cluster_type,
+            "creationTime": cluster.creation_time,
+            "currentVersion": cluster.current_version,
+            "state": cluster.state,
+            "stateInfo": {
+                "code": "string",
+                "message": "Cluster state details.",
+            },
+            "tags": self.list_tags_for_resource(cluster.arn),
+        }
+
+        if cluster.cluster_type == "PROVISIONED":
+            cluster_info.update(
+                {
+                    "provisioned": {
+                        "brokerNodeGroupInfo": cluster.broker_node_group_info or {},
+                        "clientAuthentication": cluster.client_authentication or {},
+                        "currentBrokerSoftwareInfo": {
+                            "configurationArn": (cluster.configuration_info or {}).get(
+                                "arn", "string"
+                            ),
+                            "configurationRevision": (
+                                cluster.configuration_info or {}
+                            ).get("revision", 1),
+                            "kafkaVersion": cluster.kafka_version,
+                        },
+                        "encryptionInfo": cluster.encryption_info or {},
+                        "enhancedMonitoring": cluster.enhanced_monitoring,
+                        "openMonitoring": cluster.open_monitoring or {},
+                        "loggingInfo": cluster.logging_info or {},
+                        "numberOfBrokerNodes": cluster.number_of_broker_nodes or 0,
+                        "zookeeperConnectString": cluster.zookeeper_connect_string
+                        or "zookeeper.example.com:2181",
+                        "zookeeperConnectStringTls": cluster.zookeeper_connect_string_tls
+                        or "zookeeper.example.com:2181",
+                        "storageMode": cluster.storage_mode,
+                        "customerActionStatus": "NONE",
+                    }
+                }
+            )
+
+        elif cluster.cluster_type == "SERVERLESS":
+            cluster_info.update(
+                {
+                    "serverless": {
+                        "vpcConfigs": cluster.serverless_config.get("vpcConfigs", [])
+                        if cluster.serverless_config
+                        else [],
+                        "clientAuthentication": cluster.serverless_config.get(
+                            "clientAuthentication", {}
+                        )
+                        if cluster.serverless_config
+                        else {},
+                    }
+                }
+            )
+
+        return cluster_info
+
+    def list_clusters_v2(
+        self,
+        cluster_name_filter: Optional[str],
+        cluster_type_filter: Optional[str],
+        max_results: Optional[int],
+        next_token: Optional[str],
+    ) -> Tuple[List[Dict[str, Any]], Optional[str]]:
+        cluster_info_list = [
+            {
+                "clusterArn": cluster.arn,
+                "clusterName": cluster.cluster_name,
+                "clusterType": cluster.cluster_type,
+                "state": cluster.state,
+                "creationTime": cluster.creation_time,
+            }
+            for cluster in self.clusters.values()
+        ]
+
+        return cluster_info_list, None
+
+    def create_cluster(
+        self,
+        broker_node_group_info: Dict[str, Any],
+        client_authentication: Optional[Dict[str, Any]],
+        cluster_name: str,
+        configuration_info: Optional[Dict[str, Any]] = None,
+        encryption_info: Optional[Dict[str, Any]] = None,
+        enhanced_monitoring: str = "DEFAULT",
+        open_monitoring: Optional[Dict[str, Any]] = None,
+        kafka_version: str = "2.8.1",
+        logging_info: Optional[Dict[str, Any]] = None,
+        number_of_broker_nodes: int = 1,
+        tags: Optional[Dict[str, str]] = None,
+        storage_mode: str = "LOCAL",
+    ) -> Tuple[str, str, str]:
+        new_cluster = FakeKafkaCluster(
+            cluster_name=cluster_name,
+            account_id=self.account_id,
+            region_name=self.region_name,
+            cluster_type="PROVISIONED",
+            broker_node_group_info=broker_node_group_info,
+            client_authentication=client_authentication,
+            kafka_version=kafka_version,
+            number_of_broker_nodes=number_of_broker_nodes,
+            configuration_info=configuration_info,
+            encryption_info=encryption_info,
+            enhanced_monitoring=enhanced_monitoring,
+            open_monitoring=open_monitoring,
+            logging_info=logging_info,
+            storage_mode=storage_mode,
+        )
+
+        self.clusters[new_cluster.arn] = new_cluster
+
+        if tags:
+            self.tag_resource(new_cluster.arn, tags)
+
+        return new_cluster.arn, new_cluster.cluster_name, new_cluster.state
+
+    def describe_cluster(self, cluster_arn: str) -> Dict[str, Any]:
+        cluster = self.clusters[cluster_arn]
+
+        return {
+            "activeOperationArn": "arn:aws:kafka:region:account-id:operation/active-operation",
+            "brokerNodeGroupInfo": cluster.broker_node_group_info or {},
+            "clientAuthentication": cluster.client_authentication or {},
+            "clusterArn": cluster.arn,
+            "clusterName": cluster.cluster_name,
+            "creationTime": cluster.creation_time,
+            "currentBrokerSoftwareInfo": {
+                "configurationArn": (cluster.configuration_info or {}).get(
+                    "arn", "string"
+                ),
+                "configurationRevision": (cluster.configuration_info or {}).get(
+                    "revision", 1
+                ),
+                "kafkaVersion": cluster.kafka_version,
+            },
+            "currentVersion": cluster.current_version,
+            "encryptionInfo": cluster.encryption_info or {},
+            "enhancedMonitoring": cluster.enhanced_monitoring,
+            "openMonitoring": cluster.open_monitoring or {},
+            "loggingInfo": cluster.logging_info or {},
+            "numberOfBrokerNodes": cluster.number_of_broker_nodes or 0,
+            "state": cluster.state,
+            "stateInfo": {
+                "code": "string",
+                "message": "Cluster state details.",
+            },
+            "tags": self.list_tags_for_resource(cluster.arn),
+            "zookeeperConnectString": cluster.zookeeper_connect_string
+            or "zookeeper.example.com:2181",
+            "zookeeperConnectStringTls": cluster.zookeeper_connect_string_tls
+            or "zookeeper.example.com:2181",
+            "storageMode": cluster.storage_mode,
+            "customerActionStatus": "NONE",
+        }
+
+    def list_clusters(
+        self,
+        cluster_name_filter: Optional[str],
+        max_results: Optional[int],
+        next_token: Optional[str],
+    ) -> List[Dict[str, Any]]:
+        cluster_info_list = [
+            {
+                "clusterArn": cluster.arn,
+                "clusterName": cluster.cluster_name,
+                "state": cluster.state,
+                "creationTime": cluster.creation_time,
+                "clusterType": cluster.cluster_type,
+            }
+            for cluster_arn, cluster in self.clusters.items()
+        ]
+
+        return cluster_info_list
+
+    def delete_cluster(self, cluster_arn: str, current_version: str) -> Tuple[str, str]:
+        cluster = self.clusters.pop(cluster_arn)
+        return cluster_arn, cluster.state
+
+    def list_tags_for_resource(self, resource_arn: str) -> Dict[str, str]:
+        return self.tagger.get_tag_dict_for_resource(resource_arn)
+
+    def tag_resource(self, resource_arn: str, tags: Dict[str, str]) -> None:
+        tags_list = [{"Key": k, "Value": v} for k, v in tags.items()]
+        self.tagger.tag_resource(resource_arn, tags_list)
+
+    def untag_resource(self, resource_arn: str, tag_keys: List[str]) -> None:
+        self.tagger.untag_resource_using_names(resource_arn, tag_keys)
+
+
+kafka_backends = BackendDict(KafkaBackend, "kafka")
diff --git a/moto/kafka/responses.py b/moto/kafka/responses.py
new file mode 100644
index 000000000..302561822
--- /dev/null
+++ b/moto/kafka/responses.py
@@ -0,0 +1,147 @@
+"""Handles incoming kafka requests, invokes methods, returns responses."""
+
+import json
+from urllib.parse import unquote
+
+from moto.core.responses import BaseResponse
+
+from .models import KafkaBackend, kafka_backends
+
+
+class KafkaResponse(BaseResponse):
+    """Handler for Kafka requests and responses."""
+
+    def __init__(self) -> None:
+        super().__init__(service_name="kafka")
+
+    @property
+    def kafka_backend(self) -> KafkaBackend:
+        """Return backend instance specific for this region."""
+        return kafka_backends[self.current_account][self.region]
+
+    def create_cluster_v2(self) -> str:
+        cluster_name = self._get_param("clusterName")
+        tags = self._get_param("tags")
+        provisioned = self._get_param("provisioned")
+        serverless = self._get_param("serverless")
+        cluster_arn, cluster_name, state, cluster_type = (
+            self.kafka_backend.create_cluster_v2(
+                cluster_name=cluster_name,
+                tags=tags,
+                provisioned=provisioned,
+                serverless=serverless,
+            )
+        )
+        return json.dumps(
+            dict(
+                clusterArn=cluster_arn,
+                clusterName=cluster_name,
+                state=state,
+                clusterType=cluster_type,
+            )
+        )
+
+    def describe_cluster_v2(self) -> str:
+        cluster_arn = unquote(self.parsed_url.path.split("/clusters/")[-1])
+        cluster_info = self.kafka_backend.describe_cluster_v2(
+            cluster_arn=cluster_arn,
+        )
+        return json.dumps(dict(clusterInfo=cluster_info))
+
+    def list_clusters_v2(self) -> str:
+        cluster_name_filter = self._get_param("clusterNameFilter")
+        cluster_type_filter = self._get_param("clusterTypeFilter")
+        max_results = self._get_param("maxResults")
+        next_token = self._get_param("nextToken")
+        cluster_info_list, next_token = self.kafka_backend.list_clusters_v2(
+            cluster_name_filter=cluster_name_filter,
+            cluster_type_filter=cluster_type_filter,
+            max_results=max_results,
+            next_token=next_token,
+        )
+        return json.dumps(dict(clusterInfoList=cluster_info_list, nextToken=next_token))
+
+    def list_tags_for_resource(self) -> str:
+        resource_arn = unquote(self.parsed_url.path.split("/tags/")[-1])
+        tags = self.kafka_backend.list_tags_for_resource(
+            resource_arn=resource_arn,
+        )
+        return json.dumps(dict(tags=tags))
+
+    def tag_resource(self) -> str:
+        resource_arn = unquote(self._get_param("resourceArn"))
+        tags = self._get_param("tags")
+        self.kafka_backend.tag_resource(
+            resource_arn=resource_arn,
+            tags=tags,
+        )
+        return json.dumps(dict())
+
+    def untag_resource(self) -> str:
+        resource_arn = unquote(self._get_param("resourceArn"))
+        tag_keys = self.__dict__["data"]["tagKeys"]
+        self.kafka_backend.untag_resource(
+            resource_arn=resource_arn,
+            tag_keys=tag_keys,
+        )
+        return json.dumps(dict())
+
+    def create_cluster(self) -> str:
+        broker_node_group_info = self._get_param("brokerNodeGroupInfo")
+        client_authentication = self._get_param("clientAuthentication")
+        cluster_name = self._get_param("clusterName")
+        configuration_info = self._get_param("configurationInfo")
+        encryption_info = self._get_param("encryptionInfo")
+        enhanced_monitoring = self._get_param("enhancedMonitoring")
+        open_monitoring = self._get_param("openMonitoring")
+        kafka_version = self._get_param("kafkaVersion")
+        logging_info = self._get_param("loggingInfo")
+        number_of_broker_nodes = self._get_param("numberOfBrokerNodes")
+        tags = self._get_param("tags")
+        storage_mode = self._get_param("storageMode")
+        cluster_arn, cluster_name, state = self.kafka_backend.create_cluster(
+            broker_node_group_info=broker_node_group_info,
+            client_authentication=client_authentication,
+            cluster_name=cluster_name,
+            configuration_info=configuration_info,
+            encryption_info=encryption_info,
+            enhanced_monitoring=enhanced_monitoring,
+            open_monitoring=open_monitoring,
+            kafka_version=kafka_version,
+            logging_info=logging_info,
+            number_of_broker_nodes=number_of_broker_nodes,
+            tags=tags,
+            storage_mode=storage_mode,
+        )
+        return json.dumps(
+            dict(clusterArn=cluster_arn, clusterName=cluster_name, state=state)
+        )
+
+    def describe_cluster(self) -> str:
+        cluster_arn = unquote(self.parsed_url.path.split("/clusters/")[-1])
+        cluster_info = self.kafka_backend.describe_cluster(
+            cluster_arn=cluster_arn,
+        )
+        return json.dumps(dict(clusterInfo=cluster_info))
+
+    def delete_cluster(self) -> str:
+        cluster_arn = unquote(self.parsed_url.path.split("/clusters/")[-1])
+        current_version = self._get_param("currentVersion")
+        cluster_arn, state = self.kafka_backend.delete_cluster(
+            cluster_arn=cluster_arn,
+            current_version=current_version,
+        )
+        return json.dumps(dict(clusterArn=cluster_arn, state=state))
+
+    def list_clusters(self) -> str:
+        cluster_name_filter = self._get_param("clusterNameFilter")
+        max_results = self._get_param("maxResults")
+        next_token = self._get_param("nextToken")
+
+        cluster_info_list = self.kafka_backend.list_clusters(
+            cluster_name_filter=cluster_name_filter,
+            max_results=max_results,
+            next_token=next_token,
+        )
+
+        return json.dumps(dict(clusterInfoList=cluster_info_list, nextToken=next_token))
diff --git a/moto/kafka/urls.py b/moto/kafka/urls.py
new file mode 100644
index 000000000..a379b50e1
--- /dev/null
+++ b/moto/kafka/urls.py
@@ -0,0 +1,15 @@
+"""kafka base URL and path."""
+
+from .responses import KafkaResponse
+
+url_bases = [
+    r"https?://kafka\.(.+)\.amazonaws\.com",
+]
+
+url_paths = {
+    "{0}/api/v2/clusters$": KafkaResponse.dispatch,
+    "{0}/api/v2/clusters/(?P<clusterArn>.+)$": KafkaResponse.dispatch,
+    "{0}/v1/tags/(?P<resourceArn>.+)$": KafkaResponse.dispatch,
+    "{0}/v1/clusters$": KafkaResponse.dispatch,
+    "{0}/v1/clusters/(?P<clusterArn>.+)$": KafkaResponse.dispatch,
+}
diff --git a/moto/opensearch/models.py b/moto/opensearch/models.py
index 31c91821d..2e7242983 100644
--- a/moto/opensearch/models.py
+++ b/moto/opensearch/models.py
@@ -375,5 +375,12 @@ class OpenSearchServiceBackend(BaseBackend):
                 )
         return domains
 
+    def describe_domains(self, domain_names: List[str]) -> List[OpenSearchDomain]:
+        queried_domains = []
+        for domain_name in domain_names:
+            if domain_name in self.domains:
+                queried_domains.append(self.domains[domain_name])
+        return queried_domains
+
 
 opensearch_backends = BackendDict(OpenSearchServiceBackend, "opensearch")
diff --git a/moto/opensearch/responses.py b/moto/opensearch/responses.py
index e8f102e14..4034a16b2 100644
--- a/moto/opensearch/responses.py
+++ b/moto/opensearch/responses.py
@@ -147,3 +147,11 @@ class OpenSearchServiceResponse(BaseResponse):
             engine_type=engine_type,
         )
         return json.dumps(dict(DomainNames=domain_names))
+
+    def describe_domains(self) -> str:
+        domain_names = self._get_param("DomainNames")
+        domains = self.opensearch_backend.describe_domains(
+            domain_names=domain_names,
+        )
+        domain_list = [domain.to_dict() for domain in domains]
+        return json.dumps({"DomainStatusList": domain_list})
diff --git a/moto/opensearch/urls.py b/moto/opensearch/urls.py
index 0d7d1a4cf..c62d8c04c 100644
--- a/moto/opensearch/urls.py
+++ b/moto/opensearch/urls.py
@@ -8,4 +8,6 @@ url_bases = [r"https?://es\.(.+)\.amazonaws\.com"]
 response = OpenSearchServiceResponse()
 
 
-url_paths = {"{0}/.*$": response.dispatch}
+url_paths = {
+    "{0}/.*$": response.dispatch,
+}
diff --git a/moto/rds/models.py b/moto/rds/models.py
index a894b04cc..8aae7e86d 100644
--- a/moto/rds/models.py
+++ b/moto/rds/models.py
@@ -331,6 +331,14 @@ class DBCluster(RDSBaseModel):
         else:
             self.master_user_password = kwargs.get("master_user_password")  # type: ignore
 
+        self.master_user_secret_kms_key_id = kwargs.get("master_user_secret_kms_key_id")
+        self.manage_master_user_password = kwargs.get(
+            "manage_master_user_password", False
+        )
+        self.master_user_secret_status = kwargs.get(
+            "master_user_secret_status", "active"
+        )
+
         self.availability_zones = kwargs.get("availability_zones")
         if not self.availability_zones:
             self.availability_zones = [
@@ -492,8 +500,17 @@ class DBCluster(RDSBaseModel):
                 ]:
                     self._enable_http_endpoint = val
 
+    def master_user_secret(self) -> Dict[str, Any]:
+        return {
+            "secret_arn": f"arn:{self.partition}:secretsmanager:{self.region}:{self.account_id}:secret:rds!{self.name}",
+            "secret_status": self.master_user_secret_status,
+            "kms_key_id": self.master_user_secret_kms_key_id
+            if self.master_user_secret_kms_key_id is not None
+            else f"arn:{self.partition}:kms:{self.region}:{self.account_id}:key/{self.name}",
+        }
+
     def get_cfg(self) -> Dict[str, Any]:
-        cfg = self.__dict__
+        cfg = self.__dict__.copy()
         cfg.pop("backend")
         cfg["master_user_password"] = cfg.pop("_master_user_password")
         cfg["enable_http_endpoint"] = cfg.pop("_enable_http_endpoint")
@@ -604,6 +621,14 @@ class DBCluster(RDSBaseModel):
               <GlobalClusterIdentifier>{{ cluster.global_cluster_identifier }}</GlobalClusterIdentifier>
               {%- endif -%}
               {%- if cluster.replication_source_identifier -%}<ReplicationSourceIdentifier>{{ cluster.replication_source_identifier }}</ReplicationSourceIdentifier>{%- endif -%}
+              {%- if cluster.manage_master_user_password -%}
+              <MasterUserSecret>
+                {% set master_user_secret = cluster.master_user_secret() %}
+                {% if "secret_arn" in master_user_secret %}<SecretArn>{{ master_user_secret["secret_arn"] }}</SecretArn>{% endif %}
+                {% if "secret_status" in master_user_secret %}<SecretStatus>{{ master_user_secret["secret_status"] }}</SecretStatus>{% endif %}
+                {% if "kms_key_id" in master_user_secret %}<KmsKeyId>{{ master_user_secret["kms_key_id"] }}</KmsKeyId>{% endif %}
+              </MasterUserSecret>
+              {%- endif -%}
             </DBCluster>"""
         )
         return template.render(cluster=self, status=status)
@@ -777,6 +802,13 @@ class DBInstance(CloudFormationModel, RDSBaseModel):
             self.storage_type = DBInstance.default_storage_type(iops=self.iops)
         self.master_username = kwargs.get("master_username")
         self.master_user_password = kwargs.get("master_user_password")
+        self.master_user_secret_kms_key_id = kwargs.get("master_user_secret_kms_key_id")
+        self.master_user_secret_status = kwargs.get(
+            "master_user_secret_status", "active"
+        )
+        self.manage_master_user_password = kwargs.get(
+            "manage_master_user_password", False
+        )
         self.auto_minor_version_upgrade = kwargs.get("auto_minor_version_upgrade")
         if self.auto_minor_version_upgrade is None:
             self.auto_minor_version_upgrade = True
@@ -920,6 +952,15 @@ class DBInstance(CloudFormationModel, RDSBaseModel):
 
         return db_family, f"default.{db_family}"
 
+    def master_user_secret(self) -> Dict[str, Any]:
+        return {
+            "secret_arn": f"arn:{self.partition}:secretsmanager:{self.region}:{self.account_id}:secret:rds!{self.name}",
+            "secret_status": self.master_user_secret_status,
+            "kms_key_id": self.master_user_secret_kms_key_id
+            if self.master_user_secret_kms_key_id is not None
+            else f"arn:{self.partition}:kms:{self.region}:{self.account_id}:key/{self.name}",
+        }
+
     def to_xml(self) -> str:
         template = Template(
             """<DBInstance>
@@ -1042,6 +1083,14 @@ class DBInstance(CloudFormationModel, RDSBaseModel):
               {%- endfor -%}
               </TagList>
               <DeletionProtection>{{ 'true' if database.deletion_protection else 'false' }}</DeletionProtection>
+              {%- if database.manage_master_user_password -%}
+              <MasterUserSecret>
+                {% set master_user_secret = database.master_user_secret() %}
+                {% if "secret_arn" in master_user_secret %}<SecretArn>{{ master_user_secret["secret_arn"] }}</SecretArn>{% endif %}
+                {% if "secret_status" in master_user_secret %}<SecretStatus>{{ master_user_secret["secret_status"] }}</SecretStatus>{% endif %}
+                {% if "kms_key_id" in master_user_secret %}<KmsKeyId>{{ master_user_secret["kms_key_id"] }}</KmsKeyId>{% endif %}
+              </MasterUserSecret>
+              {%- endif -%}
             </DBInstance>"""
         )
         return template.render(database=self)
@@ -1841,6 +1890,10 @@ class RDSBackend(BaseBackend):
         tags: Optional[List[Dict[str, str]]] = None,
         copy_tags: bool = False,
     ) -> DBSnapshot:
+        if source_snapshot_identifier.startswith("arn:aws:rds:"):
+            source_snapshot_identifier = self.extract_snapshot_name_from_arn(
+                source_snapshot_identifier
+            )
         if source_snapshot_identifier not in self.database_snapshots:
             raise DBSnapshotNotFoundError(source_snapshot_identifier)
 
@@ -1940,15 +1993,49 @@ class RDSBackend(BaseBackend):
         )
         if msg:
             raise RDSClientError("InvalidParameterValue", msg)
+        if db_kwargs.get("rotate_master_user_password") and db_kwargs.get(
+            "apply_immediately"
+        ):
+            db_kwargs["master_user_secret_status"] = "rotating"
+        if db_kwargs.get("rotate_master_user_password") and not db_kwargs.get(
+            "apply_immediately"
+        ):
+            raise RDSClientError(
+                "InvalidParameterCombination",
+                "You must specify apply immediately when rotating the master user password.",
+            )
         database.update(db_kwargs)
-        return database
+        initial_state = copy.deepcopy(database)
+        database.master_user_secret_status = (
+            "active"  # already set the final state in the background
+        )
+        return initial_state
 
     def reboot_db_instance(self, db_instance_identifier: str) -> DBInstance:
         return self.describe_db_instances(db_instance_identifier)[0]
 
+    def extract_snapshot_name_from_arn(self, snapshot_arn: str) -> str:
+        arn_breakdown = snapshot_arn.split(":")
+        region_name, account_id, resource_type, snapshot_name = arn_breakdown[3:7]
+        if resource_type != "snapshot":
+            raise InvalidParameterValue(
+                "The parameter SourceDBSnapshotIdentifier is not a valid identifier. "
+                "Identifiers must begin with a letter; must contain only ASCII "
+                "letters, digits, and hyphens; and must not end with a hyphen or "
+                "contain two consecutive hyphens."
+            )
+        if region_name != self.region_name or account_id != self.account_id:
+            raise NotImplementedError(
+                "Cross account/region snapshot handling is not yet implemented in moto."
+            )
+        return snapshot_name
+
     def restore_db_instance_from_db_snapshot(
         self, from_snapshot_id: str, overrides: Dict[str, Any]
     ) -> DBInstance:
+        if from_snapshot_id.startswith("arn:aws:rds:"):
+            from_snapshot_id = self.extract_snapshot_name_from_arn(from_snapshot_id)
+
         snapshot = self.describe_db_snapshots(
             db_instance_identifier=None, db_snapshot_identifier=from_snapshot_id
         )[0]
@@ -2392,6 +2479,18 @@ class RDSBackend(BaseBackend):
         cluster = self.clusters[cluster_id]
         del self.clusters[cluster_id]
 
+        if kwargs.get("rotate_master_user_password") and kwargs.get(
+            "apply_immediately"
+        ):
+            kwargs["master_user_secret_status"] = "rotating"
+        elif kwargs.get("rotate_master_user_password") and not kwargs.get(
+            "apply_immediately"
+        ):
+            raise RDSClientError(
+                "InvalidParameterCombination",
+                "You must specify apply immediately when rotating the master user password.",
+            )
+
         kwargs["db_cluster_identifier"] = kwargs.pop("new_db_cluster_identifier")
         for k, v in kwargs.items():
             if k == "db_cluster_parameter_group_name":
@@ -2410,7 +2509,11 @@ class RDSBackend(BaseBackend):
         self.clusters[cluster_id] = cluster
 
         initial_state = copy.deepcopy(cluster)  # Return status=creating
-        cluster.status = "available"  # Already set the final status in the background
+
+        # Already set the final status in the background
+        cluster.status = "available"
+        cluster.master_user_secret_status = "active"
+
         return initial_state
 
     def promote_read_replica_db_cluster(self, db_cluster_identifier: str) -> DBCluster:
diff --git a/moto/rds/responses.py b/moto/rds/responses.py
index a972a2473..85ef5081b 100644
--- a/moto/rds/responses.py
+++ b/moto/rds/responses.py
@@ -48,6 +48,13 @@ class RDSResponse(BaseResponse):
             "kms_key_id": self._get_param("KmsKeyId"),
             "master_user_password": self._get_param("MasterUserPassword"),
             "master_username": self._get_param("MasterUsername"),
+            "manage_master_user_password": self._get_bool_param(
+                "ManageMasterUserPassword"
+            ),
+            "master_user_secret_kms_key_id": self._get_param(
+                "MasterUserSecretKmsKeyId"
+            ),
+            "rotate_master_user_password": self._get_param("RotateMasterUserPassword"),
             "multi_az": self._get_bool_param("MultiAZ"),
             "option_group_name": self._get_param("OptionGroupName"),
             "port": self._get_param("Port"),
@@ -68,6 +75,7 @@ class RDSResponse(BaseResponse):
             ),
             "tags": list(),
             "deletion_protection": self._get_bool_param("DeletionProtection"),
+            "apply_immediately": self._get_bool_param("ApplyImmediately"),
         }
         args["tags"] = self.unpack_list_params("Tags", "Tag")
         return args
@@ -105,6 +113,13 @@ class RDSResponse(BaseResponse):
             "kms_key_id": self._get_param("KmsKeyId"),
             "master_user_password": self._get_param("MasterUserPassword"),
             "master_username": self._get_param("MasterUsername"),
+            "manage_master_user_password": self._get_bool_param(
+                "ManageMasterUserPassword"
+            ),
+            "master_user_secret_kms_key_id": self._get_param(
+                "MasterUserSecretKmsKeyId"
+            ),
+            "rotate_master_user_password": self._get_param("RotateMasterUserPassword"),
             "multi_az": self._get_bool_param("MultiAZ"),
             "option_group_name": self._get_param("OptionGroupName"),
             "port": self._get_param("Port"),
@@ -123,6 +138,7 @@ class RDSResponse(BaseResponse):
             ),
             "tags": list(),
             "deletion_protection": self._get_bool_param("DeletionProtection"),
+            "apply_immediately": self._get_bool_param("ApplyImmediately"),
         }
         args["tags"] = self.unpack_list_params("Tags", "Tag")
         return args
@@ -186,6 +202,12 @@ class RDSResponse(BaseResponse):
             "storage_type": self._get_param("StorageType"),
             "kms_key_id": self._get_param("KmsKeyId"),
             "master_username": self._get_param("MasterUsername"),
+            "manage_master_user_password": self._get_bool_param(
+                "ManageMasterUserPassword"
+            ),
+            "master_user_secret_kms_key_id": self._get_param(
+                "MasterUserSecretKmsKeyId"
+            ),
             "master_user_password": self._get_param("MasterUserPassword"),
             "network_type": self._get_param("NetworkType"),
             "port": self._get_param("Port"),
diff --git a/moto/resourcegroupstaggingapi/models.py b/moto/resourcegroupstaggingapi/models.py
index d48a314dd..f056af7d1 100644
--- a/moto/resourcegroupstaggingapi/models.py
+++ b/moto/resourcegroupstaggingapi/models.py
@@ -14,6 +14,7 @@ from moto.elbv2.models import ELBv2Backend, elbv2_backends
 from moto.emr.models import ElasticMapReduceBackend, emr_backends
 from moto.glacier.models import GlacierBackend, glacier_backends
 from moto.glue.models import GlueBackend, glue_backends
+from moto.kafka.models import KafkaBackend, kafka_backends
 from moto.kinesis.models import KinesisBackend, kinesis_backends
 from moto.kms.models import KmsBackend, kms_backends
 from moto.logs.models import LogsBackend, logs_backends
@@ -154,6 +155,10 @@ class ResourceGroupsTaggingAPIBackend(BaseBackend):
             return workspacesweb_backends[self.account_id][self.region_name]
         return None
 
+    @property
+    def kafka_backend(self) -> KafkaBackend:
+        return kafka_backends[self.account_id][self.region_name]
+
     @property
     def sagemaker_backend(self) -> SageMakerModelBackend:
         return sagemaker_backends[self.account_id][self.region_name]
@@ -610,6 +615,22 @@ class ResourceGroupsTaggingAPIBackend(BaseBackend):
                     "Tags": tags,
                 }
 
+        # Kafka (MSK)
+        if self.kafka_backend and (
+            not resource_type_filters or "kafka" in resource_type_filters
+        ):
+            for msk_cluster in self.kafka_backend.clusters.values():
+                tag_dict = self.kafka_backend.list_tags_for_resource(msk_cluster.arn)
+                tags = [{"Key": key, "Value": value} for key, value in tag_dict.items()]
+
+                if not tags or not tag_filter(tags):
+                    continue
+
+                yield {
+                    "ResourceARN": msk_cluster.arn,
+                    "Tags": tags,
+                }
+
         # Workspaces Web
         if self.workspacesweb_backends and (
             not resource_type_filters or "workspaces-web" in resource_type_filters
diff --git a/moto/ssm/resources/regions.json b/moto/ssm/resources/regions.json
index 2caae5fce..5d94643ac 100644
--- a/moto/ssm/resources/regions.json
+++ b/moto/ssm/resources/regions.json
@@ -1124,7 +1124,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.af-south-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -2084,6 +2090,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "cognito-identity": {
+                "Value": "cognito-identity",
+                "endpoint": {
+                  "Value": "cognito-identity.ap-east-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "cognito-idp": {
                 "Value": "cognito-idp",
                 "endpoint": {
@@ -2829,7 +2844,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.ap-east-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -5304,7 +5325,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.ap-northeast-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -7848,7 +7875,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.ap-northeast-2.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -9717,7 +9750,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.ap-northeast-3.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -11844,7 +11883,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.ap-south-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -13543,7 +13588,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.ap-south-2.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -15775,7 +15826,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.ap-southeast-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -18553,7 +18610,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.ap-southeast-2.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -20414,7 +20477,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.ap-southeast-3.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -21810,7 +21879,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.ap-southeast-4.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -24674,7 +24749,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.ca-central-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -25756,6 +25837,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "cognito-identity": {
+                "Value": "cognito-identity",
+                "endpoint": {
+                  "Value": "cognito-identity.ca-west-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "cognito-idp": {
                 "Value": "cognito-idp",
                 "endpoint": {
@@ -26204,7 +26294,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.ca-west-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -31300,7 +31396,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.eu-central-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -33103,7 +33205,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.eu-central-2.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -35012,7 +35120,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.eu-north-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -35644,9 +35758,6 @@
                   "Value": "HTTPS"
                 }
               },
-              "trustedadvisor": {
-                "Value": "trustedadvisor"
-              },
               "verified-access": {
                 "Value": "verified-access",
                 "endpoint": {
@@ -36768,7 +36879,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.eu-south-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -38224,7 +38341,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.eu-south-2.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -40655,7 +40778,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.eu-west-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -43365,7 +43494,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.eu-west-2.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -45543,7 +45678,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.eu-west-3.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -47125,7 +47266,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.il-central-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -48596,7 +48743,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.me-central-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -50208,7 +50361,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.me-south-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -50726,9 +50885,6 @@
                   "Value": "HTTPS"
                 }
               },
-              "trustedadvisor": {
-                "Value": "trustedadvisor"
-              },
               "verifiedpermissions": {
                 "Value": "verifiedpermissions",
                 "endpoint": {
@@ -52150,7 +52306,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.sa-east-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -55096,7 +55258,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.us-east-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -57892,7 +58060,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.us-east-2.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -63382,7 +63556,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.us-west-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
@@ -66139,7 +66319,13 @@
                 }
               },
               "notifications": {
-                "Value": "notifications"
+                "Value": "notifications",
+                "endpoint": {
+                  "Value": "notifications.us-west-2.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "oam": {
                 "Value": "oam",
diff --git a/moto/ssm/resources/services.json b/moto/ssm/resources/services.json
index 3bf5e48bc..a554558a9 100644
--- a/moto/ssm/resources/services.json
+++ b/moto/ssm/resources/services.json
@@ -14002,6 +14002,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "ap-east-1": {
+                "Value": "ap-east-1",
+                "endpoint": {
+                  "Value": "cognito-identity.ap-east-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "ap-northeast-1": {
                 "Value": "ap-northeast-1",
                 "endpoint": {
@@ -14092,6 +14101,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "ca-west-1": {
+                "Value": "ca-west-1",
+                "endpoint": {
+                  "Value": "cognito-identity.ca-west-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "cn-north-1": {
                 "Value": "cn-north-1",
                 "endpoint": {
@@ -45218,91 +45236,265 @@
             },
             "regions": {
               "af-south-1": {
-                "Value": "af-south-1"
+                "Value": "af-south-1",
+                "endpoint": {
+                  "Value": "notifications.af-south-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "ap-east-1": {
-                "Value": "ap-east-1"
+                "Value": "ap-east-1",
+                "endpoint": {
+                  "Value": "notifications.ap-east-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "ap-northeast-1": {
-                "Value": "ap-northeast-1"
+                "Value": "ap-northeast-1",
+                "endpoint": {
+                  "Value": "notifications.ap-northeast-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "ap-northeast-2": {
-                "Value": "ap-northeast-2"
+                "Value": "ap-northeast-2",
+                "endpoint": {
+                  "Value": "notifications.ap-northeast-2.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "ap-northeast-3": {
-                "Value": "ap-northeast-3"
+                "Value": "ap-northeast-3",
+                "endpoint": {
+                  "Value": "notifications.ap-northeast-3.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "ap-south-1": {
-                "Value": "ap-south-1"
+                "Value": "ap-south-1",
+                "endpoint": {
+                  "Value": "notifications.ap-south-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "ap-south-2": {
-                "Value": "ap-south-2"
+                "Value": "ap-south-2",
+                "endpoint": {
+                  "Value": "notifications.ap-south-2.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "ap-southeast-1": {
-                "Value": "ap-southeast-1"
+                "Value": "ap-southeast-1",
+                "endpoint": {
+                  "Value": "notifications.ap-southeast-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "ap-southeast-2": {
-                "Value": "ap-southeast-2"
+                "Value": "ap-southeast-2",
+                "endpoint": {
+                  "Value": "notifications.ap-southeast-2.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "ap-southeast-3": {
-                "Value": "ap-southeast-3"
+                "Value": "ap-southeast-3",
+                "endpoint": {
+                  "Value": "notifications.ap-southeast-3.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "ap-southeast-4": {
-                "Value": "ap-southeast-4"
+                "Value": "ap-southeast-4",
+                "endpoint": {
+                  "Value": "notifications.ap-southeast-4.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "ca-central-1": {
-                "Value": "ca-central-1"
+                "Value": "ca-central-1",
+                "endpoint": {
+                  "Value": "notifications.ca-central-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "ca-west-1": {
-                "Value": "ca-west-1"
+                "Value": "ca-west-1",
+                "endpoint": {
+                  "Value": "notifications.ca-west-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "eu-central-1": {
-                "Value": "eu-central-1"
+                "Value": "eu-central-1",
+                "endpoint": {
+                  "Value": "notifications.eu-central-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "eu-central-2": {
-                "Value": "eu-central-2"
+                "Value": "eu-central-2",
+                "endpoint": {
+                  "Value": "notifications.eu-central-2.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "eu-north-1": {
-                "Value": "eu-north-1"
+                "Value": "eu-north-1",
+                "endpoint": {
+                  "Value": "notifications.eu-north-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "eu-south-1": {
-                "Value": "eu-south-1"
+                "Value": "eu-south-1",
+                "endpoint": {
+                  "Value": "notifications.eu-south-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "eu-south-2": {
-                "Value": "eu-south-2"
+                "Value": "eu-south-2",
+                "endpoint": {
+                  "Value": "notifications.eu-south-2.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "eu-west-1": {
-                "Value": "eu-west-1"
+                "Value": "eu-west-1",
+                "endpoint": {
+                  "Value": "notifications.eu-west-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "eu-west-2": {
-                "Value": "eu-west-2"
+                "Value": "eu-west-2",
+                "endpoint": {
+                  "Value": "notifications.eu-west-2.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "eu-west-3": {
-                "Value": "eu-west-3"
+                "Value": "eu-west-3",
+                "endpoint": {
+                  "Value": "notifications.eu-west-3.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "il-central-1": {
-                "Value": "il-central-1"
+                "Value": "il-central-1",
+                "endpoint": {
+                  "Value": "notifications.il-central-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "me-central-1": {
-                "Value": "me-central-1"
+                "Value": "me-central-1",
+                "endpoint": {
+                  "Value": "notifications.me-central-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "me-south-1": {
-                "Value": "me-south-1"
+                "Value": "me-south-1",
+                "endpoint": {
+                  "Value": "notifications.me-south-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "sa-east-1": {
-                "Value": "sa-east-1"
+                "Value": "sa-east-1",
+                "endpoint": {
+                  "Value": "notifications.sa-east-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "us-east-1": {
-                "Value": "us-east-1"
+                "Value": "us-east-1",
+                "endpoint": {
+                  "Value": "notifications.us-east-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "us-east-2": {
-                "Value": "us-east-2"
+                "Value": "us-east-2",
+                "endpoint": {
+                  "Value": "notifications.us-east-2.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "us-west-1": {
-                "Value": "us-west-1"
+                "Value": "us-west-1",
+                "endpoint": {
+                  "Value": "notifications.us-west-1.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               },
               "us-west-2": {
-                "Value": "us-west-2"
+                "Value": "us-west-2",
+                "endpoint": {
+                  "Value": "notifications.us-west-2.api.aws"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
               }
             }
           },
@@ -66663,9 +66855,6 @@
               "eu-central-2": {
                 "Value": "eu-central-2"
               },
-              "eu-north-1": {
-                "Value": "eu-north-1"
-              },
               "eu-south-1": {
                 "Value": "eu-south-1"
               },
@@ -66687,9 +66876,6 @@
               "me-central-1": {
                 "Value": "me-central-1"
               },
-              "me-south-1": {
-                "Value": "me-south-1"
-              },
               "sa-east-1": {
                 "Value": "sa-east-1"
               },


Test patch:
diff --git a/.github/workflows/tests_sdk_ruby.yml b/.github/workflows/tests_sdk_ruby.yml
index dc5a85516..6070179a3 100644
--- a/.github/workflows/tests_sdk_ruby.yml
+++ b/.github/workflows/tests_sdk_ruby.yml
@@ -13,7 +13,7 @@ jobs:
     steps:
       - uses: actions/checkout@v4
       - name: Set up Ruby ${{ matrix.ruby-version }}
-        uses: ruby/setup-ruby@a2bbe5b1b236842c1cb7dd11e8e3b51e0a616acc
+        uses: ruby/setup-ruby@2a18b06812b0e15bb916e1df298d3e740422c47e
         with:
           ruby-version: ${{ matrix.ruby-version }}
       - name: Set up Python 3.8
diff --git a/tests/test_athena/test_athena.py b/tests/test_athena/test_athena.py
index e539c42b1..1e75ebc86 100644
--- a/tests/test_athena/test_athena.py
+++ b/tests/test_athena/test_athena.py
@@ -237,6 +237,29 @@ def test_stop_query_execution():
     assert details["Status"]["State"] == "CANCELLED"
 
 
+@mock_aws
+def test_start_execution_with_workgroup():
+    client = boto3.client("athena", region_name="us-east-1")
+
+    client.create_work_group(
+        Name="myworkgroup",
+        Description="Test work group",
+        Configuration={
+            "ResultConfiguration": {"OutputLocation": "s3://bucket-name/prefix/"}
+        },
+    )
+
+    exec_id = client.start_query_execution(
+        QueryString="SELECT stuff",
+        QueryExecutionContext={"Database": "database"},
+        ResultConfiguration={"OutputLocation": "s3://bucket-name/prefix/"},
+        WorkGroup="myworkgroup",
+    )["QueryExecutionId"]
+
+    execution = client.get_query_execution(QueryExecutionId=exec_id)["QueryExecution"]
+    assert execution["WorkGroup"] == "myworkgroup"
+
+
 @mock_aws
 def test_create_named_query():
     client = boto3.client("athena", region_name="us-east-1")
diff --git a/tests/test_cognitoidp/test_cognitoidp.py b/tests/test_cognitoidp/test_cognitoidp.py
index 0e5077a78..fdf00253b 100644
--- a/tests/test_cognitoidp/test_cognitoidp.py
+++ b/tests/test_cognitoidp/test_cognitoidp.py
@@ -2519,6 +2519,28 @@ def test_list_users():
     result = conn.list_users(UserPoolId=user_pool_id, Filter='family_name=""')
     assert len(result["Users"]) == 0
 
+    # checking Limit and Filter work correctly together
+    user1_username = "user1@example.com"
+    conn.admin_create_user(
+        UserPoolId=user_pool_id,
+        Username=user1_username,
+        UserAttributes=[{"Name": "phone_number", "Value": "+48555555555"}],
+    )
+
+    result = conn.list_users(
+        UserPoolId=user_pool_id, Filter='phone_number ^= "+48"', Limit=1
+    )
+    assert len(result["Users"]) == 1
+    assert result["PaginationToken"] is not None
+
+    result = conn.list_users(
+        UserPoolId=user_pool_id,
+        Filter='phone_number ^= "+48"',
+        Limit=1,
+        PaginationToken=result["PaginationToken"],
+    )
+    assert len(result["Users"]) == 1
+
 
 @mock_aws
 def test_list_users_incorrect_filter():
diff --git a/tests/test_dynamodb/test_dynamodb_update_table.py b/tests/test_dynamodb/test_dynamodb_update_table.py
index a1f2ad819..de4243c34 100644
--- a/tests/test_dynamodb/test_dynamodb_update_table.py
+++ b/tests/test_dynamodb/test_dynamodb_update_table.py
@@ -70,6 +70,23 @@ def test_update_table_deletion_protection_enabled():
     assert table.deletion_protection_enabled
 
 
+@mock_aws
+def test_update_table_deletion_protection_disabled():
+    conn = boto3.resource("dynamodb", region_name="us-west-2")
+    table = conn.create_table(
+        TableName="messages",
+        KeySchema=[{"AttributeName": "id", "KeyType": "HASH"}],
+        AttributeDefinitions=[{"AttributeName": "id", "AttributeType": "S"}],
+        BillingMode="PAY_PER_REQUEST",
+        DeletionProtectionEnabled=True,
+    )
+    assert table.deletion_protection_enabled
+
+    table.update(DeletionProtectionEnabled=False)
+
+    assert not table.deletion_protection_enabled
+
+
 @mock_aws
 def test_update_table__enable_stream():
     conn = boto3.client("dynamodb", region_name="us-east-1")
diff --git a/tests/test_es/test_es.py b/tests/test_es/test_es.py
index 3ee124388..259f444da 100644
--- a/tests/test_es/test_es.py
+++ b/tests/test_es/test_es.py
@@ -215,3 +215,28 @@ def test_list_domain_names_with_multiple_domains():
     assert len(resp["DomainNames"]) == 4
     for name in domain_names:
         assert {"DomainName": name} in resp["DomainNames"]
+
+
+@mock_aws
+def test_describe_elasticsearch_domains():
+    client = boto3.client("es", region_name="us-east-1")
+    domain_names = [f"env{i}" for i in range(1, 5)]
+    for name in domain_names:
+        client.create_elasticsearch_domain(
+            DomainName=name,
+            ElasticsearchVersion="7.10",
+            AdvancedOptions={"option": "value"},
+            AdvancedSecurityOptions={"Enabled": False},
+        )
+    resp = client.describe_elasticsearch_domains(DomainNames=domain_names)
+
+    assert len(resp["DomainStatusList"]) == 4
+    for domain in resp["DomainStatusList"]:
+        assert domain["DomainName"] in domain_names
+        assert domain["ElasticsearchVersion"] == "7.10"
+        assert "AdvancedSecurityOptions" in domain.keys()
+        assert "AdvancedOptions" in domain.keys()
+
+    # Test for invalid domain name
+    resp = client.describe_elasticsearch_domains(DomainNames=["invalid"])
+    assert len(resp["DomainStatusList"]) == 0
diff --git a/tests/test_kafka/__init__.py b/tests/test_kafka/__init__.py
new file mode 100644
index 000000000..e69de29bb
diff --git a/tests/test_kafka/test_kafka.py b/tests/test_kafka/test_kafka.py
new file mode 100644
index 000000000..d7c39d615
--- /dev/null
+++ b/tests/test_kafka/test_kafka.py
@@ -0,0 +1,180 @@
+"""Unit tests for kafka-supported APIs."""
+
+import boto3
+
+from moto import mock_aws
+
+# See our Development Tips on writing tests for hints on how to write good tests:
+# http://docs.getmoto.org/en/latest/docs/contributing/development_tips/tests.html
+
+
+FAKE_TAGS = {"TestKey": "TestValue", "TestKey2": "TestValue2"}
+
+
+@mock_aws
+def test_create_cluster_v2():
+    client = boto3.client("kafka", region_name="ap-southeast-1")
+    s_cluster_name = "TestServerlessCluster"
+    p_cluster_name = "TestProvisionedCluster"
+
+    s_response = client.create_cluster_v2(
+        ClusterName=s_cluster_name,
+        Serverless={
+            "VpcConfigs": [
+                {
+                    "SubnetIds": ["subnet-0123456789abcdef0"],
+                    "SecurityGroupIds": ["sg-0123456789abcdef0"],
+                }
+            ]
+        },
+        Tags=FAKE_TAGS,
+    )
+
+    p_response = client.create_cluster_v2(
+        ClusterName=p_cluster_name,
+        Provisioned={
+            "BrokerNodeGroupInfo": {
+                "InstanceType": "kafka.m5.large",
+                "ClientSubnets": ["subnet-0123456789abcdef0"],
+                "SecurityGroups": ["sg-0123456789abcdef0"],
+            },
+            "KafkaVersion": "2.8.1",
+            "NumberOfBrokerNodes": 3,
+        },
+        Tags=FAKE_TAGS,
+    )
+
+    assert s_response["ClusterArn"].startswith("arn:aws:kafka")
+    assert s_response["ClusterName"] == s_cluster_name
+    assert s_response["State"] == "CREATING"
+
+    assert p_response["ClusterArn"].startswith("arn:aws:kafka")
+    assert p_response["ClusterName"] == p_cluster_name
+    assert p_response["State"] == "CREATING"
+
+    clusters = client.list_clusters_v2()
+    assert len(clusters["ClusterInfoList"]) == 2
+    assert clusters["ClusterInfoList"][0]["ClusterName"] == s_cluster_name
+    assert clusters["ClusterInfoList"][0]["ClusterType"] == "SERVERLESS"
+    assert clusters["ClusterInfoList"][1]["ClusterName"] == p_cluster_name
+    assert clusters["ClusterInfoList"][1]["ClusterType"] == "PROVISIONED"
+
+    s_resp = client.describe_cluster_v2(ClusterArn=s_response["ClusterArn"])
+    s_cluster_info = s_resp["ClusterInfo"]
+    p_resp = client.describe_cluster_v2(ClusterArn=p_response["ClusterArn"])
+    p_cluster_info = p_resp["ClusterInfo"]
+
+    assert s_cluster_info["ClusterName"] == s_cluster_name
+    assert s_cluster_info["State"] == "CREATING"
+    assert s_cluster_info["ClusterType"] == "SERVERLESS"
+    assert s_cluster_info["Serverless"]["VpcConfigs"][0]["SubnetIds"] == [
+        "subnet-0123456789abcdef0"
+    ]
+    assert s_cluster_info["Serverless"]["VpcConfigs"][0]["SecurityGroupIds"] == [
+        "sg-0123456789abcdef0"
+    ]
+    assert s_cluster_info["Tags"] == FAKE_TAGS
+
+    assert p_cluster_info["ClusterName"] == p_cluster_name
+    assert p_cluster_info["State"] == "CREATING"
+    assert p_cluster_info["ClusterType"] == "PROVISIONED"
+    assert (
+        p_cluster_info["Provisioned"]["BrokerNodeGroupInfo"]["InstanceType"]
+        == "kafka.m5.large"
+    )
+
+
+@mock_aws
+def test_list_tags_for_resource():
+    client = boto3.client("kafka", region_name="us-east-2")
+    create_resp = client.create_cluster(
+        ClusterName="TestCluster",
+        BrokerNodeGroupInfo={
+            "InstanceType": "kafka.m5.large",
+            "ClientSubnets": ["subnet-0123456789abcdef0"],
+            "SecurityGroups": ["sg-0123456789abcdef0"],
+        },
+        KafkaVersion="2.8.1",
+        NumberOfBrokerNodes=3,
+        Tags=FAKE_TAGS,
+    )
+
+    TempTags = {"TestKey3": "TestValue3"}
+
+    client.tag_resource(
+        ResourceArn=create_resp["ClusterArn"],
+        Tags=TempTags,
+    )
+
+    tags = client.list_tags_for_resource(ResourceArn=create_resp["ClusterArn"])
+    assert tags["Tags"] == {**FAKE_TAGS, **TempTags}
+
+    client.untag_resource(
+        ResourceArn=create_resp["ClusterArn"],
+        TagKeys=["TestKey3"],
+    )
+
+    tags = client.list_tags_for_resource(ResourceArn=create_resp["ClusterArn"])
+
+    assert tags["Tags"] == FAKE_TAGS
+
+
+@mock_aws
+def test_create_cluster():
+    client = boto3.client("kafka", region_name="eu-west-1")
+    cluster_name = "TestCluster"
+    response = client.create_cluster(
+        ClusterName=cluster_name,
+        BrokerNodeGroupInfo={
+            "InstanceType": "kafka.m5.large",
+            "ClientSubnets": ["subnet-0123456789abcdef0"],
+            "SecurityGroups": ["sg-0123456789abcdef0"],
+        },
+        KafkaVersion="2.8.1",
+        NumberOfBrokerNodes=3,
+        Tags=FAKE_TAGS,
+    )
+
+    assert response["ClusterArn"].startswith("arn:aws:kafka")
+    assert response["ClusterName"] == cluster_name
+    assert response["State"] == "CREATING"
+
+    clusters = client.list_clusters()
+    assert len(clusters["ClusterInfoList"]) == 1
+    assert clusters["ClusterInfoList"][0]["ClusterName"] == cluster_name
+
+    resp = client.describe_cluster(ClusterArn=response["ClusterArn"])
+    assert resp["ClusterInfo"]["ClusterName"] == cluster_name
+    assert resp["ClusterInfo"]["State"] == "CREATING"
+    assert resp["ClusterInfo"]["CurrentBrokerSoftwareInfo"]["KafkaVersion"] == "2.8.1"
+    assert resp["ClusterInfo"]["NumberOfBrokerNodes"] == 3
+    assert (
+        resp["ClusterInfo"]["BrokerNodeGroupInfo"]["InstanceType"] == "kafka.m5.large"
+    )
+    assert resp["ClusterInfo"]["BrokerNodeGroupInfo"]["ClientSubnets"] == [
+        "subnet-0123456789abcdef0"
+    ]
+    assert resp["ClusterInfo"]["BrokerNodeGroupInfo"]["SecurityGroups"] == [
+        "sg-0123456789abcdef0"
+    ]
+    assert resp["ClusterInfo"]["Tags"] == FAKE_TAGS
+
+
+@mock_aws
+def test_delete_cluster():
+    client = boto3.client("kafka", region_name="us-east-2")
+    create_resp = client.create_cluster(
+        ClusterName="TestCluster",
+        BrokerNodeGroupInfo={
+            "InstanceType": "kafka.m5.large",
+            "ClientSubnets": ["subnet-0123456789abcdef0"],
+            "SecurityGroups": ["sg-0123456789abcdef0"],
+        },
+        KafkaVersion="2.8.1",
+        NumberOfBrokerNodes=3,
+        Tags=FAKE_TAGS,
+    )
+
+    client.delete_cluster(ClusterArn=create_resp["ClusterArn"])
+    clusters = client.list_clusters()
+    assert len(clusters["ClusterInfoList"]) == 0
diff --git a/tests/test_opensearch/test_opensearch.py b/tests/test_opensearch/test_opensearch.py
index 1ce66fef1..22955de1b 100644
--- a/tests/test_opensearch/test_opensearch.py
+++ b/tests/test_opensearch/test_opensearch.py
@@ -217,3 +217,23 @@ def test_list_unknown_domain_names_engine_type():
     err = exc.value.response["Error"]
     assert err["Code"] == "EngineTypeNotFoundException"
     assert err["Message"] == "Engine Type not found: testdn"
+
+
+@mock_aws
+def test_describe_domains():
+    client = boto3.client("opensearch", region_name="us-east-1")
+    domain_names = [f"env{i}" for i in range(1, 5)]
+    opensearch_engine_version = "OpenSearch_1.0"
+    for name in domain_names:
+        client.create_domain(DomainName=name, EngineVersion=opensearch_engine_version)
+    resp = client.describe_domains(DomainNames=domain_names)
+
+    assert len(resp["DomainStatusList"]) == 4
+    for domain in resp["DomainStatusList"]:
+        assert domain["DomainName"] in domain_names
+        assert "AdvancedSecurityOptions" in domain.keys()
+        assert "AdvancedOptions" in domain.keys()
+
+    # Test for invalid domain name
+    resp = client.describe_domains(DomainNames=["invalid"])
+    assert len(resp["DomainStatusList"]) == 0
diff --git a/tests/test_rds/test_rds.py b/tests/test_rds/test_rds.py
index 50c862452..36dddcadf 100644
--- a/tests/test_rds/test_rds.py
+++ b/tests/test_rds/test_rds.py
@@ -582,6 +582,104 @@ def test_modify_db_instance():
     assert inst["EnabledCloudwatchLogsExports"] == ["error"]
 
 
+@pytest.mark.parametrize("with_custom_kms_key", [True, False])
+@mock_aws
+def test_modify_db_instance_manage_master_user_password(with_custom_kms_key: bool):
+    conn = boto3.client("rds", region_name=DEFAULT_REGION)
+    db_id = "db-id"
+
+    custom_kms_key = f"arn:aws:kms:{DEFAULT_REGION}:123456789012:key/abcd1234-56ef-78gh-90ij-klmnopqrstuv"
+    custom_kms_key_args = (
+        {"MasterUserSecretKmsKeyId": custom_kms_key} if with_custom_kms_key else {}
+    )
+
+    create_response = conn.create_db_instance(
+        DBInstanceIdentifier=db_id,
+        DBInstanceClass="postgres",
+        Engine="postgres",
+        MasterUsername="root",
+        MasterUserPassword="hunter21",
+        ManageMasterUserPassword=False,
+    )
+
+    modify_response = conn.modify_db_instance(
+        DBInstanceIdentifier=db_id, ManageMasterUserPassword=True, **custom_kms_key_args
+    )
+
+    describe_response = conn.describe_db_instances(
+        DBInstanceIdentifier=db_id,
+    )
+
+    revert_modification_response = conn.modify_db_instance(
+        DBInstanceIdentifier=db_id, ManageMasterUserPassword=False
+    )
+
+    assert create_response["DBInstance"].get("MasterUserSecret") is None
+    master_user_secret = modify_response["DBInstance"]["MasterUserSecret"]
+    assert len(master_user_secret.keys()) == 3
+    assert (
+        master_user_secret["SecretArn"]
+        == "arn:aws:secretsmanager:us-west-2:123456789012:secret:rds!db-id"
+    )
+    assert master_user_secret["SecretStatus"] == "active"
+    if with_custom_kms_key:
+        assert master_user_secret["KmsKeyId"] == custom_kms_key
+    else:
+        assert (
+            master_user_secret["KmsKeyId"]
+            == "arn:aws:kms:us-west-2:123456789012:key/db-id"
+        )
+    assert len(describe_response["DBInstances"][0]["MasterUserSecret"].keys()) == 3
+    assert (
+        modify_response["DBInstance"]["MasterUserSecret"]
+        == describe_response["DBInstances"][0]["MasterUserSecret"]
+    )
+    assert revert_modification_response["DBInstance"].get("MasterUserSecret") is None
+
+
+@pytest.mark.parametrize("with_apply_immediately", [True, False])
+@mock_aws
+def test_modify_db_instance_rotate_master_user_password(with_apply_immediately):
+    conn = boto3.client("rds", region_name=DEFAULT_REGION)
+    db_id = "db-id"
+
+    conn.create_db_instance(
+        DBInstanceIdentifier=db_id,
+        DBInstanceClass="postgres",
+        Engine="postgres",
+        MasterUsername="root",
+        MasterUserPassword="hunter21",
+        ManageMasterUserPassword=True,
+    )
+
+    if with_apply_immediately:
+        modify_response = conn.modify_db_instance(
+            DBInstanceIdentifier=db_id,
+            RotateMasterUserPassword=True,
+            ApplyImmediately=True,
+        )
+
+        describe_response = conn.describe_db_instances(
+            DBInstanceIdentifier=db_id,
+        )
+
+        assert (
+            modify_response["DBInstance"]["MasterUserSecret"]["SecretStatus"]
+            == "rotating"
+        )
+        assert (
+            describe_response["DBInstances"][0]["MasterUserSecret"]["SecretStatus"]
+            == "active"
+        )
+
+    else:
+        with pytest.raises(ClientError):
+            conn.modify_db_instance(
+                DBInstanceIdentifier=db_id,
+                RotateMasterUserPassword=True,
+            )
+
+
 @mock_aws
 def test_modify_db_instance_not_existent_db_parameter_group_name():
     conn = boto3.client("rds", region_name=DEFAULT_REGION)
@@ -1043,8 +1141,13 @@ def test_create_db_snapshots_with_tags():
 
 
 @pytest.mark.parametrize("delete_db_instance", [True, False])
+@pytest.mark.parametrize(
+    "db_snapshot_identifier",
+    ("snapshot-1", f"arn:aws:rds:{DEFAULT_REGION}:123456789012:snapshot:snapshot-1"),
+    ids=("by_name", "by_arn"),
+)
 @mock_aws
-def test_copy_db_snapshots(delete_db_instance: bool):
+def test_copy_db_snapshots(delete_db_instance: bool, db_snapshot_identifier: str):
     conn = boto3.client("rds", region_name=DEFAULT_REGION)
 
     conn.create_db_instance(
@@ -1068,7 +1171,8 @@ def test_copy_db_snapshots(delete_db_instance: bool):
         conn.delete_db_instance(DBInstanceIdentifier="db-primary-1")
 
     target_snapshot = conn.copy_db_snapshot(
-        SourceDBSnapshotIdentifier="snapshot-1", TargetDBSnapshotIdentifier="snapshot-2"
+        SourceDBSnapshotIdentifier=db_snapshot_identifier,
+        TargetDBSnapshotIdentifier="snapshot-2",
     ).get("DBSnapshot")
 
     assert target_snapshot.get("Engine") == "postgres"
@@ -1078,6 +1182,21 @@ def test_copy_db_snapshots(delete_db_instance: bool):
     assert result["TagList"] == []
 
 
+@mock_aws
+def test_copy_db_snapshot_invalid_arns():
+    conn = boto3.client("rds", region_name=DEFAULT_REGION)
+
+    invalid_arn = (
+        f"arn:aws:rds:{DEFAULT_REGION}:123456789012:this-is-not-a-snapshot:snapshot-1"
+    )
+    with pytest.raises(ClientError) as ex:
+        conn.copy_db_snapshot(
+            SourceDBSnapshotIdentifier=invalid_arn,
+            TargetDBSnapshotIdentifier="snapshot-2",
+        )
+    assert "is not a valid identifier" in ex.value.response["Error"]["Message"]
+
+
 original_snapshot_tags = [{"Key": "original", "Value": "snapshot tags"}]
 new_snapshot_tags = [{"Key": "new", "Value": "tag"}]
 
@@ -1223,11 +1342,18 @@ def test_delete_db_snapshot():
         conn.describe_db_snapshots(DBSnapshotIdentifier="snapshot-1")
 
 
+@pytest.mark.parametrize(
+    "db_snapshot_identifier",
+    ("snapshot-1", f"arn:aws:rds:{DEFAULT_REGION}:123456789012:snapshot:snapshot-1"),
+    ids=("by_name", "by_arn"),
+)
 @pytest.mark.parametrize(
     "custom_db_subnet_group", [True, False], ids=("custom_subnet", "default_subnet")
 )
 @mock_aws
-def test_restore_db_instance_from_db_snapshot(custom_db_subnet_group: bool):
+def test_restore_db_instance_from_db_snapshot(
+    db_snapshot_identifier: str, custom_db_subnet_group: bool
+):
     conn = boto3.client("rds", region_name=DEFAULT_REGION)
     conn.create_db_instance(
         DBInstanceIdentifier="db-primary-1",
@@ -1255,9 +1381,12 @@ def test_restore_db_instance_from_db_snapshot(custom_db_subnet_group: bool):
         )
 
     # restore
+    new_instance = conn.restore_db_instance_from_db_snapshot(
+        DBInstanceIdentifier="db-restore-1", DBSnapshotIdentifier=db_snapshot_identifier
+    )["DBInstance"]
     kwargs = {
         "DBInstanceIdentifier": "db-restore-1",
-        "DBSnapshotIdentifier": "snapshot-1",
+        "DBSnapshotIdentifier": db_snapshot_identifier,
     }
     if custom_db_subnet_group:
         kwargs["DBSubnetGroupName"] = "custom-subnet-group"
diff --git a/tests/test_rds/test_rds_clusters.py b/tests/test_rds/test_rds_clusters.py
index f4fabf822..a12fb3832 100644
--- a/tests/test_rds/test_rds_clusters.py
+++ b/tests/test_rds/test_rds_clusters.py
@@ -150,6 +150,103 @@ def test_modify_db_cluster_new_cluster_identifier():
     assert old_id not in clusters
 
 
+@pytest.mark.parametrize("with_custom_kms_key", [True, False])
+@mock_aws
+def test_modify_db_cluster_manage_master_user_password(with_custom_kms_key):
+    client = boto3.client("rds", region_name=RDS_REGION)
+    cluster_id = "cluster-id"
+    custom_kms_key = f"arn:aws:kms:{RDS_REGION}:123456789012:key/abcd1234-56ef-78gh-90ij-klmnopqrstuv"
+    custom_kms_key_args = (
+        {"MasterUserSecretKmsKeyId": custom_kms_key} if with_custom_kms_key else {}
+    )
+
+    create_response = client.create_db_cluster(
+        DBClusterIdentifier=cluster_id,
+        Engine="aurora-postgresql",
+        MasterUsername="root",
+        MasterUserPassword="hunter21",
+        ManageMasterUserPassword=False,
+    )
+
+    modify_response = client.modify_db_cluster(
+        DBClusterIdentifier=cluster_id,
+        ManageMasterUserPassword=True,
+        **custom_kms_key_args,
+    )
+
+    describe_response = client.describe_db_clusters(
+        DBClusterIdentifier=cluster_id,
+    )
+
+    revert_modification_response = client.modify_db_cluster(
+        DBClusterIdentifier=cluster_id, ManageMasterUserPassword=False
+    )
+
+    assert create_response["DBCluster"].get("MasterUserSecret") is None
+    master_user_secret = modify_response["DBCluster"]["MasterUserSecret"]
+    assert len(master_user_secret.keys()) == 3
+    assert (
+        master_user_secret["SecretArn"]
+        == "arn:aws:secretsmanager:eu-north-1:123456789012:secret:rds!cluster-id"
+    )
+    assert master_user_secret["SecretStatus"] == "active"
+    if with_custom_kms_key:
+        assert master_user_secret["KmsKeyId"] == custom_kms_key
+    else:
+        assert (
+            master_user_secret["KmsKeyId"]
+            == "arn:aws:kms:eu-north-1:123456789012:key/cluster-id"
+        )
+    assert len(describe_response["DBClusters"][0]["MasterUserSecret"].keys()) == 3
+    assert (
+        modify_response["DBCluster"]["MasterUserSecret"]
+        == describe_response["DBClusters"][0]["MasterUserSecret"]
+    )
+    assert revert_modification_response["DBCluster"].get("MasterUserSecret") is None
+
+
+@pytest.mark.parametrize("with_apply_immediately", [True, False])
+@mock_aws
+def test_modify_db_cluster_rotate_master_user_password(with_apply_immediately):
+    client = boto3.client("rds", region_name=RDS_REGION)
+    cluster_id = "cluster-id"
+
+    client.create_db_cluster(
+        DBClusterIdentifier=cluster_id,
+        Engine="aurora-postgresql",
+        MasterUsername="root",
+        MasterUserPassword="hunter21",
+        ManageMasterUserPassword=True,
+    )
+
+    if with_apply_immediately:
+        modify_response = client.modify_db_cluster(
+            DBClusterIdentifier=cluster_id,
+            RotateMasterUserPassword=True,
+            ApplyImmediately=True,
+        )
+
+        describe_response = client.describe_db_clusters(
+            DBClusterIdentifier=cluster_id,
+        )
+
+        assert (
+            modify_response["DBCluster"]["MasterUserSecret"]["SecretStatus"]
+            == "rotating"
+        )
+        assert (
+            describe_response["DBClusters"][0]["MasterUserSecret"]["SecretStatus"]
+            == "active"
+        )
+
+    else:
+        with pytest.raises(ClientError):
+            client.modify_db_cluster(
+                DBClusterIdentifier=cluster_id,
+                RotateMasterUserPassword=True,
+            )
+
+
 @mock_aws
 def test_create_db_cluster__verify_default_properties():
     client = boto3.client("rds", region_name=RDS_REGION)