Al actualizar una función Lambda de nodejs16.x a nodejs18.x (o versiones superiores), es habitual encontrarse con el error 'Cannot find module 'aws-sdk''. Esto no es un fallo en la instalación local, sino que AWS decidió eliminar el paquete monolítico aws-sdk v2 del runtime a partir de nodejs18.x. La versión v2, que había estado disponible sin necesidad de empaquetado, dejó de recibir soporte en septiembre de 2025, por lo que su uso continuado supone un riesgo de seguridad. La solución definitiva es migrar al SDK v3, que adopta un enfoque modular: en lugar de un único paquete de ~75 MB, se instalan solo los servicios necesarios mediante paquetes @aws-sdk/*. Esto no solo reduce el peso de las funciones, sino que también mejora la eficiencia en el inicio en frío. Muchas empresas que han desarrollado aplicaciones a medida con Lambda deben revisar sus importaciones y adaptar sus servicios, lo que puede automatizarse con herramientas como el codemod oficial de AWS.
La migración a SDK v3 implica cambios en la forma de invocar cada servicio: se importan clases Client y Command específicas, se usa client.send() en lugar de .promise(), y se abandonan los patrones de callback. Por ejemplo, para DynamoDB se emplea @aws-sdk/lib-dynamodb, que ofrece una API similar a DocumentClient. Es fundamental escanear el código con grep para localizar todas las referencias a require('aws-sdk') antes de cambiar el runtime. Si se necesita un parche temporal, es posible empaquetar aws-sdk v2 en el ZIP o en una capa, pero esto añade latencia y mantiene una dependencia sin soporte. Para proyectos que usan esbuild, hay que forzar el empaquetado con la opción --packages=bundle, ya que versiones recientes tratan node_modules como externas por defecto.
En el ecosistema de servicios cloud AWS y Azure, mantener las funciones actualizadas es crítico para la ciberseguridad y el rendimiento. Q2BSTUDIO, como empresa especializada en desarrollo de software, ofrece consultoría para modernizar arquitecturas serverless, incorporando ia para empresas, servicios inteligencia de negocio como Power BI, y agentes IA que optimizan procesos. La transición a SDK v3 no solo resuelve el error inmediato, sino que prepara las funciones para integrar nuevas capacidades como el manejo nativo de promesas y el soporte para TypeScript, facilitando la creación de software a medida robusto y escalable. Si su equipo necesita asistencia para migrar librerías, auditar dependencias o rediseñar flujos serverless, contar con un partner tecnológico experimentado acelera el proceso y evita interrupciones en producción.





