Los clientes de AWS que implementan entornos de desarrollo seguros a menudo tienen que restringir el tráfico de Internet entrante y saliente. Esto se vuelve cada vez más importante con el desarrollo de la inteligencia artificial (IA) debido a los activos de datos que deben protegerse. La transmisión de datos a través de Internet no es lo suficientemente segura para datos altamente confidenciales. Por lo tanto, acceder a los servicios de AWS sin salir de la red de AWS puede ser un flujo de trabajo seguro.
Una de las formas de asegurar el desarrollo de la IA es creando Amazon SageMaker instancias dentro de una nube privada virtual (VPC) con acceso directo a Internet deshabilitado. Esto aísla la instancia de Internet y hace que no sean posibles las llamadas API a otros servicios de AWS. Esto presenta un desafío para los desarrolladores que crean arquitecturas para producción en las que muchos servicios de AWS deben funcionar juntos.
En esta publicación, presentamos una solución para configurar instancias de notebook de SageMaker para conectarse a Roca Amazónica y otros servicios de AWS con el uso de Enlace privado de AWS y Nube informática elástica de Amazon (Amazon EC2) grupos de seguridad.
Descripción general de la solución
La siguiente arquitectura de ejemplo muestra una instancia de SageMaker conectándose a varios servicios. La instancia de SageMaker está aislada de Internet, pero aún puede acceder a los servicios de AWS a través de PrivateLink. Se notará que la conexión a Amazon S3 se realiza a través de un punto final de Gateway VPC. Puede obtener más información sobre los puntos finales de Gateway VPC aquí.
En las siguientes secciones, mostramos cómo configurar esto en el Consola de administración de AWS.
Cree grupos de seguridad para el acceso a puntos finales salientes y entrantes
Primero, debe crear los grupos de seguridad que se adjuntarán a los puntos finales de la VPC y a la instancia de SageMaker. Los grupos de seguridad se crean antes de crear una instancia de SageMaker porque una vez creada la instancia, la configuración del grupo de seguridad no se puede cambiar.
Crea dos grupos, uno para salientes y otro para entrantes. Complete los siguientes pasos:
1. En la consola de Amazon EC2, elija Grupos de seguridad en el panel de navegación.
2. Elige Crear grupo de seguridad.
3. Para Nombre del grupo de seguridadingrese un nombre (por ejemplo, inbound-sagemaker).
4. Para Descripcióningrese una descripción.
5. Para VPCelija su VPC.
6. Anote el ID del grupo de seguridad que se utilizará en los siguientes pasos.
7. Cree una nueva regla de salida.
8. Para Nombre del grupo de seguridadingrese un nombre (por ejemplo, outbound-sagemaker).
9. Para Descripcióningrese la descripción.
10. Para VPCelija la misma VPC que la regla de entrada.
11. En el Reglas de salida sección, elija Agregar regla.
12. Agregue una regla de salida con el ID del grupo de seguridad de entrada como destino utilizando HTTPS como tipo.
13. Anote el ID del grupo de seguridad saliente que se utilizará en el siguiente paso.
14. Regrese al grupo de seguridad entrante y agregue una regla entrante de tipo HTTPS con el destino establecido en el ID del grupo de seguridad saliente.
Cree una instancia de SageMaker con el grupo de seguridad saliente
Ahora crea una instancia de SageMaker con la configuración de red que se muestra en la siguiente captura de pantalla. Es importante elegir la misma VPC que utilizó para crear los grupos de seguridad entrantes y salientes. Luego elige el grupo de seguridad saliente que creó anteriormente.
Crear un punto final de interfaz VPC
En este paso, creará un punto de enlace de la VPC de interfaz mediante Nube privada virtual de Amazon (Amazon VPC) que utiliza automáticamente PrivateLink, que permite llamadas desde su instancia de SageMaker a los servicios de AWS.
1. En la consola de Amazon VPC, elija Puntos finales en el panel de navegación.
2. Elige Crear punto final.
3. Para Etiqueta de nombreingrese un nombre (por ejemplo, enlace de roca).
4. Para Categoría de servicioseleccionar servicios de AWS.
5. Para Serviciosbusque y elija com.amazonaws.
6. Configure la VPC con la misma con la que ha estado trabajando.
7. Especifique las subredes.
Una subred es un rango de direcciones IP dentro de una VPC. Si no sabe qué subred especificar, cualquier subred funcionará. De lo contrario, especifique la subred requerida por cualquier requisito de seguridad de su equipo de seguridad en la nube.
8. Configure el grupo de seguridad en el grupo de seguridad entrante que creó anteriormente.
Después de crear el punto final, debería tardar algún tiempo en estar disponible.
Repita estos pasos para cada servicio que necesite para su flujo de trabajo. Las siguientes capturas de pantalla muestran ejemplos de servicios para los que puede crear puntos de enlace de VPC de interfaz, como Servicio de almacenamiento simple de Amazon (Amazon S3), amazona kendray AWS Lambda. AWS PrivateLink le permite conectarse de forma privada a varios servicios de AWS; para obtener una lista actualizada, consulte esto página.
Pruebe la conexión
Puede probar la conexión a Amazon Bedrock mediante una simple llamada a la API de Python. El siguiente es un fragmento de código que invoca el modelo de Amazon Bedrock:
Si ejecutara esto en una celda de notebook de Jupyter, le daría un error porque no apuntó la invocación para usar el punto final de VPC. Para ello, agregue una URL de punto final a la creación de instancias del cliente:
Para encontrar la URL del punto de enlace, regrese al punto de enlace de la VPC que creó en el paso anterior y busque los nombres DNS, como se ilustra en la siguiente captura de pantalla. El DNS privado es la mejor opción ya que es igual que el público, lo que significa que no tienes que cambiar nada para usar la conexión privada. La siguiente mejor opción es utilizar el DNS regional, que es la primera opción en “Nombres DNS”. Ambas opciones permiten que su tráfico conmute por error a otras zonas de disponibilidad (AZ) saludables, en caso de que la AZ actual esté dañada.
Limpiar
Para limpiar sus recursos, complete los siguientes pasos:
1. En la consola de SageMaker, navegue hasta la página de configuración del cuaderno.
2. Detenga la instancia, luego elija Borrar para eliminar la instancia.
3. En la consola de Amazon EC2, navegue hasta la página de detalles del grupo de seguridad entrante.
4. Sobre el Comportamiento menú, elija Eliminar grupos de seguridad.
5. Repita estos pasos para el grupo de seguridad saliente.
6. En la consola de Amazon VPC, navegue hasta la página de detalles del punto de enlace de la VPC.
7. Sobre el Comportamiento menú, elija Borrar.
8. Repita este paso para cada punto final que creó como parte de esta publicación.
Conclusión
En esta publicación, mostramos cómo configurar puntos finales de VPC y grupos de seguridad para permitir que SageMaker se conecte a Amazon Bedrock. Cuando una instancia de SageMaker tiene acceso restringido a Internet, aún puede desarrollar y conectarse a otros servicios de AWS mediante el uso de AWS PrivateLink. Esta publicación mostró cómo conectarse a Amazon Bedrock desde una instancia aislada de SageMaker, pero puede replicar los pasos para otros servicios.
Le animamos a empezar a desarrollar aplicaciones de IA en AWS. Para obtener más información, visite Amazon SageMaker, Roca Amazónicay Enlace privado de AWS para más información. ¡Feliz codificación!
Sobre el Autor
Francisco Calderón es científico de datos en el Centro de innovación de IA generativa de AWS. Como miembro del Centro de innovación GenAI, ayuda a resolver problemas comerciales críticos para los clientes de AWS utilizando la última tecnología en IA generativa. En su tiempo libre, a Francisco le gusta tocar música y guitarra, jugar fútbol con sus hijas y disfrutar del tiempo con su familia.
Sung Min Hong es científico aplicado en el Centro de innovación de IA generativa de AWS, donde ayuda a acelerar la variedad de casos de uso de los clientes de AWS. Antes de unirse a Amazon, Sungmin fue investigador postdoctoral en la Facultad de Medicina de Harvard. Tiene un doctorado. en Ciencias de la Computación de la Universidad de Nueva York. Fuera del trabajo, a Sungmin le gusta hacer senderismo, viajar y leer.
yash shah es gerente científico en el Centro de innovación de IA generativa de AWS. Él y su equipo de científicos aplicados e ingenieros de aprendizaje automático trabajan en una variedad de casos de uso de aprendizaje automático en los sectores de atención médica, deportes, automoción y manufactura.
Anila Joshi tiene más de una década de experiencia en la creación de soluciones de IA. Como gerente de ciencias aplicadas en el Centro de innovación de IA generativa de AWS, Anila es pionera en aplicaciones innovadoras de IA que amplían los límites de las posibilidades y guía a los clientes para trazar estratégicamente un rumbo hacia el futuro de la IA.