Creating AWS Resources outside of Nucleator

In some environments it makes sense to use Nucleator to consistently set up parts of your environemnt and to create other AWS Resources manually or using other tools.
Icon
  • Using Nucleator is not an "all or nothing" proposition. If it makes sense for you, you can use Nucleator to create Cages and key Stacksets that comprise only a portion of your overall environments.
  • You can create resources manually, or with other DevOps tools, that reside within Nucleator Cages and/or work together with Nucleator Stacksets
  • Nucleator will not be aware of resources that it has not provisioned and configured, so it will be your responsibility to delete these resources prior to deleting related Nucleator Cages and Stacksets
  • AWS tracks "Dependent Resources", and won't permit resource deletion when dependent relationships exist. However, it can be time consuming to identify and resolve such relationships.

 

After you have created Nucleator Cages or Stacksets, you can create additional AWS Resources that interact with and/or depend upon these Nucleator resources.  You can either do this manually, using the AWS Console, or using other DevOps tools that may be unrelated to Nucleator.

Nucleator is aware of resources that it has created, that are part of a Nucleator Cage or Stackset.  When you ask Nucleator to delete a Cage or Stackset, Nucleator uses AWS CloudFormation to delete all of these resources on your behalf.  Nucleator and CloudFormation manage the ordering and dependencies, so that you don't have to worry about that in your own orchestration code.

When you add resources manually or using other tools, you will need to keep track of those resources and these dependencies yourself.  You will need to delete any resources that you introduce that are dependent on resources created by Nucleator before you ask Nucelator or CloudFormation to delete the resources that it has created.  Failing to do so will result in Nucleator and CloudFormation being unable to delete a Cage and/or Stackset.  This is the case because AWS enforces dependency checking and will prevent any resource from being deleted upon which other AWS resources are dependent.  First, you need to identify and delete the dependent resource.

AWS recently introduced AWS Config, a service that provides a dependency graph among your AWS Resources, and that tracks changes to that dependency graph.   This service may be useful to you as you attempt to identify resources that you may have introduced manually that are dependent upon resources that you created using Nucleator.  In the future, we may expose certain functionality of AWS Config through Nucleator that could be useful in this situation.

In the meantime, feel free to deploy whatever AWS resources that you require inside Nucleator Cages, and/or that use resources provisioned by other Nucleator Stacksets.  If you are introducing AWS Resource dependencies in doing so, be sure to think about how you will track those over time, so that when you need to delete and re-create an environment, you will have the information that you need to be able to do so easily.

 


Next: Deleting AWS Resources, Nucleator Cages and Stacksets

 

 

Installation Documentation Releases License Community