

# Arquitectura de Amazon RDS Custom
<a name="custom-concept"></a>

La arquitectura de Amazon RDS Custom se basa en Amazon RDS, con diferencias importantes. En el siguiente diagrama se muestran los componentes clave de la arquitectura de RDS Custom.

![\[Componentes de la arquitectura de RDS Custom\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/RDS_Custom_gen_architecture.png)


**Topics**
+ [VPC](#custom-concept.components.VPC)
+ [Automatización y monitoreo personalizados de RDS](#custom-concept.workflow.automation)
+ [Amazon S3](#custom-concept.components.S3)
+ [AWS CloudTrail](#custom-concept.components.CloudTrail)

## VPC
<a name="custom-concept.components.VPC"></a>

Al igual que en Amazon RDS, la instancia de base de datos de RDS Custom reside en una nube virtual privada (VPC). 

![\[Componentes de las instancias de base de datos de RDS Custom\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/RDS_Custom_instance.png)


La instancia de base de datos de RDS Custom consta de los siguientes componentes:
+ Instancia de Amazon EC2
+ Punto de conexión de instancia
+ Sistema operativo instalado en la instancia de Amazon EC2
+ Almacenamiento de Amazon EBS, que contiene sistemas de archivos adicionales

## Automatización y monitoreo personalizados de RDS
<a name="custom-concept.workflow.automation"></a>

RDS Custom tiene software de automatización que se ejecuta fuera de la instancia de base de datos. Este software se comunica con los agentes de la instancia de base de datos y con otros componentes del entorno de RDS Custom en general.

Las características de monitoreo y recuperación de RDS Custom ofrecen una funcionalidad similar a la de Amazon RDS. De forma predeterminada, RDS Custom está en modo de automatización completa. El software de automatización tiene las siguientes responsabilidades principales:
+ Recopilar métricas y enviar notificaciones
+ Hacer recuperación automática de instancias

Una responsabilidad importante de la automatización de RDS Custom es responder a los problemas de su instancia de Amazon EC2. Por varios motivos, el host podría verse afectado o inaccesible. Para resolver estos problemas, RDS Custom reinicia o reemplaza la instancia de Amazon EC2.

**Topics**
+ [Sustitución del host de Amazon RDS Custom](#custom-troubleshooting.host-problems)
+ [Perímetro de soporte de RDS Custom](#custom-troubleshooting.support-perimeter)

### Sustitución del host de Amazon RDS Custom
<a name="custom-troubleshooting.host-problems"></a>

Si el host de Amazon EC2 se ve afectado, RDS Custom intenta reiniciarlo. Si hay errores en este esfuerzo, RDS Custom utiliza la misma característica para detención e inicio incluida en Amazon EC2. El único cambio visible por el cliente cuando se reemplaza un host es una nueva dirección IP pública.

**Topics**
+ [Detención e inicio del host](#custom-troubleshooting.host-problems.replacement.stop-start)
+ [Efectos de la sustitución del host](#custom-troubleshooting.host-problems.replacement.host-state)
+ [Las prácticas recomendadas de Amazon EC2](#custom-troubleshooting.host-problems.best-practices)

#### Detención e inicio del host
<a name="custom-troubleshooting.host-problems.replacement.stop-start"></a>

RDS Custom efectúa automáticamente los siguientes pasos, sin necesidad de intervención del usuario:

1. Detiene el host de Amazon EC2.

   La instancia EC2 se cierre de forma normal y deja de ejecutarse. Los volúmenes de Amazon EBS siguen adjuntos a la instancia y sus datos persisten. Se pierden los datos almacenados en los volúmenes del almacén de instancias (no compatibles con RDS Custom) o la RAM del ordenador del host.

   Para obtener más información, consulte [Detener e iniciar la instancia](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Stop_Start.html) en la *Guía del usuario de Amazon EC2*.

1. Inicia el host de Amazon EC2.

   La instancia EC2 migra a un nuevo hardware del host subyacente. En algunos casos, la instancia de base de datos de RDS Custom permanece en el host original.

#### Efectos de la sustitución del host
<a name="custom-troubleshooting.host-problems.replacement.host-state"></a>

En RDS Custom, tiene control total sobre el volumen de dispositivo raíz y los volúmenes de almacenamiento de Amazon EBS. El volumen raíz puede contener datos y configuraciones importantes que no quiere perder.

RDS Custom for Oracle conserva todos los datos de los clientes y la base de datos después de la operación, entre los que se incluyen los datos del volumen raíz. No se requiere intervención de los usuarios. En RDS Custom para SQL Server, se retienen los datos de la base de datos, pero se pierden todos los datos de la unidad `C:`, entre los que se incluyen los datos del sistema operativo y del cliente.

Tras el proceso de sustitución del host, el host de Amazon EC2 tiene una nueva dirección IP pública. El nuevo host conserva los datos y los metadatos que se muestran en la siguiente tabla.


| Metadatos o datos | Retención de RDS Custom para Oracle | Retención de RDS Custom para SQL Server | 
| --- | --- | --- | 
| ID de instancia de EC2 | Sí | No | 
| Metadatos de la instancia de EC2 | Sí | Sí | 
| Los datos del volumen de almacenamiento de datos | Sí | Sí | 
| Datos del volumen raíz | Sí | No | 
| Direcciones IP privadas | Sí | Sí | 
| Direcciones IP elásticas | Sí | Sí | 

#### Las prácticas recomendadas de Amazon EC2
<a name="custom-troubleshooting.host-problems.best-practices"></a>

La característica de reemplazo de host de Amazon EC2 cubre la mayoría de los escenarios de deterioro de Amazon EC2. Recomendamos que siga las siguientes prácticas recomendadas:
+ Antes de cambiar la configuración o el sistema operativo, haga una copia de seguridad de los datos. Si el volumen raíz o el sistema operativo se dañan, la sustitución del host no podrá repararlo. Las únicas opciones son la restauración a partir de una instantánea de base de datos o una recuperación a un momento dado.
+ No detenga ni termine manualmente el host físico de Amazon EC2. Ambas acciones hacen que la instancia se sitúe fuera del perímetro de soporte de RDS Custom.
+ (RDS Custom for SQL Server) Si adjunta volúmenes adicionales al host de Amazon EC2, configúrelos para que se vuelvan a subir al reiniciar. Si el host está dañado, RDS Custom podría detenerlo e iniciarlo automáticamente.

### Perímetro de soporte de RDS Custom
<a name="custom-troubleshooting.support-perimeter"></a>

RDS Custom proporciona una capacidad de monitoreo adicional denominada *perímetro de soporte*. Este monitoreo adicional garantiza que la instancia de base de datos de RDS Custom utilice infraestructura, sistema operativo y base de datos compatibles con AWS. 

El perímetro de soporte comprueba que la instancia de base de datos se ajuste a los requisitos que se indican en [Corrección de configuraciones no compatibles en RDS Custom para Oracle](custom-troubleshooting.md#custom-troubleshooting.fix-unsupported) y [Corrección de configuraciones no compatibles en RDS Custom para SQL Server](custom-troubleshooting-sqlserver.md#custom-troubleshooting-sqlserver.fix-unsupported). Si no se cumple alguno de estos requisitos, RDS Custom considera que la instancia de base de datos está fuera del perímetro de soporte.

**Topics**
+ [Configuraciones no admitidas en RDS Custom](#custom-concept.support-perimeter.unsupported-config)
+ [Solución de problemas de configuraciones no admitidas](#custom-concept.support-perimeter.fix-unsupported-config)

#### Configuraciones no admitidas en RDS Custom
<a name="custom-concept.support-perimeter.unsupported-config"></a>

Cuando la instancia de base de datos se ve fuera del perímetro de soporte, RDS Custom cambia el estado de la instancia de datos a `unsupported-configuration` y envía notificaciones de eventos. Después de solucionar los problemas de configuración, RDS Custom cambia el estado de la instancia de base de datos a `available`.

Mientras la instancia de base de datos se encuentra en el estado `unsupported-configuration`, se cumple lo siguiente:
+ Se puede acceder a su base de datos. La excepción es cuando la instancia de datos está en el estado `unsupported-configuration` porque la base de datos se apagó inesperadamente.
+ No puede modificar la instancia de base de datos.
+ No puede tomar instantáneas de base de datos.
+ No se crean copias de seguridad de forma automática.
+ Solo para las instancias de dase de datos de RDS Custom para SQL Server, RDS Custom no sustituye a la instancia de Amazon EC2 subyacente si se ve dañada. Para obtener más información sobre las sustituciones del host, consulte [Sustitución del host de Amazon RDS Custom](#custom-troubleshooting.host-problems).
+ Puede eliminar la instancia de base de datos, pero la mayoría de las demás operaciones de la API de RDS Custom no estarán disponibles.
+ RDS Custom sigue admitiendo la recuperación en un momento dado (PITR) al archivar los archivos de registro REDO y cargarlos a Amazon S3. La PITR en un estado `unsupported-configuration` difiere de las siguientes maneras:
  + La PITR puede tardar mucho tiempo en restaurarse por completo en una nueva instancia de base de datos de RDS Custom. Esta situación se produce porque no puede tomar instantáneas automatizadas ni manuales mientras la instancia de base de datos se encuentre en el estado `unsupported-configuration`.
  + La recuperación a un momento dado tiene que volver a reproducir más registros de recuperación de cambios a partir de la instantánea más reciente tomada antes de que la instancia ingresara al estado `unsupported-configuration`.
  + En algunos casos, la instancia de base de datos se encuentra en el estado `unsupported-configuration` porque realizó un cambio que impidió cargar los archivos de registro REDO archivados. Algunos ejemplos son detener la instancia EC2, detener el agente de RDS Custom y desconectar los volúmenes de EBS. En estos casos, la PITR no puede restaurar la instancia de base de datos al último momento restaurable.

#### Solución de problemas de configuraciones no admitidas
<a name="custom-concept.support-perimeter.fix-unsupported-config"></a>

RDS Custom proporciona una guía de solución de problemas para el estado `unsupported-configuration`. Aunque algunas directrices se aplican tanto a RDS Custom para Oracle como a RDS Custom para SQL Server, otras dependen del motor de la base de datos. Para obtener información sobre la solución de problemas específicos del motor, consulte los siguientes temas:
+ [Corrección de configuraciones no compatibles en RDS Custom para Oracle](custom-troubleshooting.md#custom-troubleshooting.fix-unsupported)
+ [Corrección de configuraciones no compatibles en RDS Custom para SQL Server](custom-troubleshooting-sqlserver.md#custom-troubleshooting-sqlserver.fix-unsupported)

## Amazon S3
<a name="custom-concept.components.S3"></a>

Si utiliza RDS Custom for Oracle, cargará los medios de instalación en un bucket de Amazon S3 creado por el usuario. RDS Custom for Oracle utiliza el medio de este bucket para crear una versión de motor personalizada (CEV). Una *CEV* es una instantánea de volumen binario de una versión de base de datos y una Amazon Machine Image (AMI). Desde el CEV, puede crear una instancia de base de datos de RDS Custom. Para obtener más información, consulte [Trabajar con versiones de motor personalizadas para Amazon RDS Custom for Oracle](custom-cev.md).

Tanto para RDS Custom for Oracle como para RDS Custom for SQL Server, RDS Custom crea automáticamente un bucket de Amazon S3 con el prefijo de la cadena `do-not-delete-rds-custom-`. RDS Custom utiliza el bucket de S3 `do-not-delete-rds-custom-` para almacenar los siguientes tipos de archivos:
+ AWS CloudTrailRegistros de para el rastro creado por RDS Custom
+ Artefactos perimetrales de compatibilidad (consulte [Perímetro de soporte de RDS Custom](#custom-troubleshooting.support-perimeter))
+ Archivos de registro de recuperación de cambios de bases de datos (solo para RDS Custom for Oracle)
+ Registros de transacciones (solo para RDS Custom for SQL Server)
+ Artefactos de versión de motor personalizados (solo para RDS Custom for Oracle)

RDS Custom crea el bucket de S3 `do-not-delete-rds-custom-` al crear cualquiera de los siguientes recursos:
+ Su primer CEV for RDS Custom for Oracle
+ La primera instancia de base de datos para RDS Custom for SQL Server

RDS Custom crea un bucket para cada combinación de lo siguiente:
+ Cuenta de AWSID de 
+ Tipo de motor (ya sea de RDS Custom for Oracle o RDS Custom for SQL Server)
+ Región de AWS

Por ejemplo, si crea RDS Custom for Oracle CEVs en una única Región de AWS, existe un bucket `do-not-delete-rds-custom-`. Si crea varias instancias de RDS Custom para SQL Server y residen en diferentes Regiones de AWS, existe un bucket `do-not-delete-rds-custom-` en cada Región de AWS. Si crea una instancia de RDS Custom para Oracle y dos instancias de RDS Custom para SQL Server en una única Región de AWS, existen dos buckets `do-not-delete-rds-custom-`. 

## AWS CloudTrail
<a name="custom-concept.components.CloudTrail"></a>

RDS Custom crea automáticamente un rastro de AWS CloudTrail cuyo nombre empieza por `do-not-delete-rds-custom-`. El perímetro de soporte personalizado de RDS se basa en los eventos de CloudTrail para determinar si sus acciones afectan a la automatización de RDS Custom. Para obtener más información, consulte [Solución de problemas de configuraciones no admitidas](#custom-concept.support-perimeter.fix-unsupported-config).

RDS Custom creará el rastro cuando cree su primera instancia de base de datos. RDS Custom crea un rastro para cada combinación de lo siguiente:
+ Cuenta de AWSID de 
+ Tipo de motor (ya sea de RDS Custom for Oracle o RDS Custom for SQL Server)
+ Región de AWS

Al eliminar una instancia de base de datos de RDS Custom el CloudTrail de esta instancia no se elimina automáticamente. En este caso, se sigue facturando a su Cuenta de AWS el CloudTrail no eliminado. RDS Custom no se hace responsable de la eliminación de este recurso. Para obtener información sobre cómo eliminar el CloudTrail manualmente, consulte [Eliminar una ruta](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-delete-trails-console.html) en la *Guía del usuario de AWS CloudTrail*.