Шаблоны SAM AWS являются расширенным набором CloudFormation и поэтому, помимо встроенных ярлыков для ресурсов без сервера, также поддерживают определение любых ресурсов, которые поддерживает CloudFormation;Используя AWS SAM, вы можете определять не только ресурсы и приложения без сервера, но и любые другие ресурсы, поддерживаемые CloudFormation. Несмотря на то, что не существует наилучшей практики для использования какого-либо стандарта шаблонов для какого-либо ресурса (-ов), вы, возможно, пожелаете учесть, что принятие единого стандарта-шаблона для всей вашей инфраструктуры в качестве шаблонов кода может упростить изучение и принятие этого стандарта, чемОдновременное принятие нескольких стандартов.
Что касается организации ресурсов, одна из стратегий, которую вы можете использовать для организации и / или изоляции ресурсов, - это концепция CloudFormations Nested Stacks
, которую SAM расширила до Nested Applications
. Используя «вложенный» подход, вы можете выделять и организовывать ресурсы в отдельные шаблоны или stacks
, которые имеют логический смысл для вашего варианта использования, и развертывать их все, используя root stack
. Этот подход имеет много преимуществ, включая то, что он позволяет вам повторно использовать stacks
в других вложенных приложениях.
Подробнее о CloudFormation Nested Stacks
можно узнать здесь и AWS SAM Nested Applications
здесь , а объявление AWS SAM Nested Stack содержит отличный учебник, с которым вы можете быстро ознакомиться с вложенными приложениями.