Partial/Patch deployment

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Partial/Patch deployment

joseheitor
This post was updated on .
I think that I am misunderstanding some basic concept of the 'model' and how the system manages 'versioning'...

Consider the initial model for a full deployment to a node like this:

- install_script
- jar_1
- jar_2
- war_1
- war_2
- config_X
- config_Y

[1] - As I understand it, after deployment, the Agent monitors the deployed files and if any of these files change or disappear on a node, delta is produced. Does the Agent automatically re-run the deployment? Or does it simply notify the console of a mismatch state?

[2] - If one releases a patch consisting of say:

- new_install_script
- jar_2 (updated version)
- new_jar
- config_Y (updated version)

Does the Agent now only monitor this 'new' model components? Or does it still produce delta if one or more of the original files changes or disappears?

[3] - Does the Agent actually monitor files? Or does it monitor processes that run executable components?
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Partial/Patch deployment

frenchyan
Administrator


On Tue, Nov 1, 2016 at 11:38 AM, joseheitor [via glu] <[hidden email]> wrote:
Consider the model for a full deployment to a node like this:

- install_script
- jar_1
- jar_2
- war_1
- war_2
- config_X
- config_Y

[1] - As I understand it, after deployment, the Agent monitors the deployed files and if any of these files change or disappear on a node, delta is produced. Does the Agent automatically re-run the deployment?


The agent does not do any monitoring on its own. You can add monitoring to it as described here (http://www.pongasoft.com/blog/yan/glu/2011/03/18/building-monitoring-solution-with-glu/). Each agent stores its state (which script was deployed and in which state of the state machine it's in) in ZooKeeper. It will not monitor (unless you do it manually) that jar_1 has been installed and has not been deleted from a particular location. The console (= webapp) monitors ZooKeeper and knows the state of all agents. There is never an automatic deployment in glu by default. But you can build it on top of it.
 
[2] - If one releases a patch consisting of say:

- new_install_script
- jar_2
- new_jar
- config_Y

Does the Agent now only monitor this 'new' model? Or does it still produce delta if one or more of the original files changes or disappears?

If you change the model which contains a new script with new value, the console will tell you that there is a delta that needs to be applied.

Before you invest too much in glu, you should make sure you read this post though: http://glu.977617.n3.nabble.com/State-of-glu-October-2016-PLEASE-READ-FIRST-td4027029.html 

Yan

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Partial/Patch deployment

joseheitor
In reply to this post by joseheitor
Thanks, Yan.

I appreciate your candidness about the state of the project. I have not found anything else that compares with your platform though...can you point me to any alternatives that you might recommend?

Thanks.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Partial/Patch deployment

frenchyan
Administrator
In the past (many years ago), there was some comparison with Chef and Puppet. At the time they were not playing in the same space at all (they were lower level). As far as I know both those projects are still around and have most likely evolved. Unclear how exactly.

Otherwise it seems that with the latest cloud technologies, Docker, rkt and others, things have changed quite a bit: now you are no longer deploying apps, but entire containers. Although I am not familiar with it at all, Kubernetes is advertising itself as a "production-grade container orchestration". 


​Yan
Loading...