Created 12-13-2015 03:00 AM
Hi All,
I have written a custom service and i am able to run it successfully using Ambari.
But now want to understand about
How do i go about upgrade it? Does Ambari provide some support to do this OR i have to write some custom command to do that OR i need to do it manually? Is the RPM package recommended practice for Ambari custom components in this case?
Also in the source code i saw that there is a support for hooks. How do i implement hooks?
How to get existing services configurations(e.g. HDFS, YARN), installation homes to define classpath? Do i have to use the REST services?
Thanks & Regards,
Abhijit
Created 12-13-2015 03:30 AM
+ @Alejandro Fernandez @smohanty
For sample upgrade code for Ambari services, you can look at existing Ambari services for example of this. In Hbase master service, you will find the method to be overridden:
https://github.com/apache/ambari/blob/trunk/ambari...
Here is the upgrade class being called:
https://github.com/apache/ambari/blob/trunk/ambari...
To get configurations from components of existing services, you can use the config object to do this in params.py. In the above Hbase example, you can see some samples here
https://github.com/apache/ambari/blob/trunk/ambari...
Some code samples of more basic Ambari services are available below..these may be useful for those getting started with building services (but so far they don't implement the upgrade hooks)
http://hortonworks.com/partners/learn/#ambari
For more details on how rolling/express upgrades work from end user perspective, you can check the below article
Created 12-13-2015 03:30 AM
+ @Alejandro Fernandez @smohanty
For sample upgrade code for Ambari services, you can look at existing Ambari services for example of this. In Hbase master service, you will find the method to be overridden:
https://github.com/apache/ambari/blob/trunk/ambari...
Here is the upgrade class being called:
https://github.com/apache/ambari/blob/trunk/ambari...
To get configurations from components of existing services, you can use the config object to do this in params.py. In the above Hbase example, you can see some samples here
https://github.com/apache/ambari/blob/trunk/ambari...
Some code samples of more basic Ambari services are available below..these may be useful for those getting started with building services (but so far they don't implement the upgrade hooks)
http://hortonworks.com/partners/learn/#ambari
For more details on how rolling/express upgrades work from end user perspective, you can check the below article
Created 12-14-2015 03:16 AM
Thanks @Ali Bajwa for the pointers!!
Created 12-14-2015 03:21 AM
Most welcome! Btw just curious: what kind of Ambari service are you working on? Is the code up on git somewhere?
Created 12-15-2015 03:04 AM
It is for one of the big data analytics product that we are building. Its not on git but in private repo.