Created 12-11-2015 12:59 AM
Hi, I am trying to develop a custom service for ambari. My question is for a cassandra client I am installing the whole cassandra package and doing start cassandra so that I would only use the client to connect to the cluster. But is there any way to tell ambari that only install specific package on client and some specific package on slaves. If it is possible I will be only able to install cassandra client on client nodes.
Created 12-11-2015 01:10 AM
I would recommend looking at code for HBASE as an example as it has master, slaves and client
https://github.com/apache/ambari/tree/trunk/ambari...
In the metainfo.xml you specify which code should get executed on the master (ie hbase_master.py), clients (hbase_client.py) and slaves (hbase_regionserver.py)
Created 12-11-2015 01:10 AM
I would recommend looking at code for HBASE as an example as it has master, slaves and client
https://github.com/apache/ambari/tree/trunk/ambari...
In the metainfo.xml you specify which code should get executed on the master (ie hbase_master.py), clients (hbase_client.py) and slaves (hbase_regionserver.py)
Created 12-18-2015 12:59 AM
@Amey Jain did this help? If so could you please accept the answer so it doesn't show up in our list of open issues?
Created 12-18-2015 03:18 AM
@Ali Bajwa so just want to clarify, in the client script the install method is calling install_package(env) method and same ofr master, from where install_package is picking up the package names? is it from metainfo.xml (osspecifics tag)? or can we write in the install method Execute(format('yum install cassandra'))?
Created 12-18-2015 03:33 AM
Yes the install_package method will pick the package names listed under <package> item of metainfo.xml. We avoid putting "yum install" in the code because for other platforms (like ubuntu) the command would be different. For example of how to specify the package, see here. It basically means that on all platforms install the package called "hbase" using whatever is the appropriate call for platform.
Alternatively you can specify different package names for each platform/version using something like this in the metainfo.xml
Created 12-18-2015 03:41 AM
@Amey Jain you can also check the metainfo.xml for the Cassandra service built by Greg Hill here.
(btw any reason why you can't reuse the Cassandra Ambari service he has already worked on?)
Created 01-06-2016 09:35 PM
@Ali Bajwalooks like the link your are saying is cassandra service is not correct. It takes me to trunk.