Support Questions

Find answers, ask questions, and share your expertise

Undesrtanding BluePrints and incremental updates

avatar
Expert Contributor

Hi

Trying to understand blueprints from the wiki and posts. Just to get my understanding clear

  1. BluePrints are only for the initial install of the cluster ?
  2. We cannot apply incremental configuration changes on a blueprint ? for e.g Have HBase as a service which requires its regionservers to have 4G of RAM. Can I update the blueprint and then have that change reflected ?
  3. OR would I need to make REST calls to the specific service handle to update the configuration ?
  4. How is the community using the export feature for a blueprint ? Is it to export a template, modify it and then apply it in an environment ? Or is to export and propagate incremental changes ?

Insights would be helpful, thanks

1 ACCEPTED SOLUTION

avatar
Expert Contributor

Hi @Anshuman Mehta,

1. That's correct, Blueprints are only for the initial install of a cluster.

2. Incremental changes cannot be applied to a Blueprint after a cluster has been created. A Blueprint, once posted to the REST APIs, is considered a static document. Updating a Blueprint after a cluster has already been created with that Blueprint will have no affect on the existing cluster.

3. Yes, REST calls would need to be made in order to update the configuration for the existing cluster.

4. Generally, the Blueprint export feature can be used to take a snapshot of the existing cluster ( components and configuration), and then re-use that Blueprint to create a new cluster, perhaps making some modifications prior to deploying the new cluster. It is also worth noting that Blueprint exports can be taken on clusters that were created with the Ambari UI, and this can provide a way to reproduce an existing cluster, even if it was not originally created with Blueprints.

While not directly related to your question, I thought it would be useful to mention that Blueprints integration with the Ambari StackAdvisor was introduced in Ambari 2.2.0, and can be used to apply Ambari's configuration recommendations to the Blueprint specified. Here's the link that provides more information on that topic:

https://cwiki.apache.org/confluence/display/AMBARI/Blueprints#Blueprints-ClusterCreationTemplateStru...

Thanks,

Bob

View solution in original post

1 REPLY 1

avatar
Expert Contributor

Hi @Anshuman Mehta,

1. That's correct, Blueprints are only for the initial install of a cluster.

2. Incremental changes cannot be applied to a Blueprint after a cluster has been created. A Blueprint, once posted to the REST APIs, is considered a static document. Updating a Blueprint after a cluster has already been created with that Blueprint will have no affect on the existing cluster.

3. Yes, REST calls would need to be made in order to update the configuration for the existing cluster.

4. Generally, the Blueprint export feature can be used to take a snapshot of the existing cluster ( components and configuration), and then re-use that Blueprint to create a new cluster, perhaps making some modifications prior to deploying the new cluster. It is also worth noting that Blueprint exports can be taken on clusters that were created with the Ambari UI, and this can provide a way to reproduce an existing cluster, even if it was not originally created with Blueprints.

While not directly related to your question, I thought it would be useful to mention that Blueprints integration with the Ambari StackAdvisor was introduced in Ambari 2.2.0, and can be used to apply Ambari's configuration recommendations to the Blueprint specified. Here's the link that provides more information on that topic:

https://cwiki.apache.org/confluence/display/AMBARI/Blueprints#Blueprints-ClusterCreationTemplateStru...

Thanks,

Bob