Support Questions

Find answers, ask questions, and share your expertise
Announcements
Celebrating as our community reaches 100,000 members! Thank you!

How to specify memory allocation to Kudu in CM Static Service Pools?

avatar
Rising Star

For Impala, hbase, hdfs and yarn services, I can specify memory allocation in static service pools UI in Cloudera Manager.  Not so for Kudu.

 

So do I manually under-allocate all the others to leave open whatever I want for Kudu, and then config Kudu's "Tablet Server Hard Memory Limit"?

 

CDH 5.15.1  CM 5.15.1

1 ACCEPTED SOLUTION

avatar
Expert Contributor

Yes, unfortunately this was an oversight, and will be corrected in a future release. For now you can either do the workaround you suggested (manually underallocating for the others, then manually configuring Kudu's memory limit).

 

Or, if you want to roll up your sleeves a bit:

  1. ssh to the CM server machine.
  2. For each file named KUDU*.jar (in /usr/share/cmf/common_jars, I believe):
  3. Extract the JAR file using the 'jar' utility.
  4. Modify descriptor/service.sdl by finding the memory_limit_hard_bytes entry, adding a comma after "default" :  4294967296, and adding a new line with the contents "autoConfigShare" : 100
  5. Recreate the JAR around the extracted files (including the modified service.sdl)
  6. Overwrite the existing KUDU*.jar files with the new ones you created in step #5.
  7. Restart the CM server.

You should now see an entry in he static service pools UI for Kudu's Tablet Server Hard Memory Limit.

View solution in original post

1 REPLY 1

avatar
Expert Contributor

Yes, unfortunately this was an oversight, and will be corrected in a future release. For now you can either do the workaround you suggested (manually underallocating for the others, then manually configuring Kudu's memory limit).

 

Or, if you want to roll up your sleeves a bit:

  1. ssh to the CM server machine.
  2. For each file named KUDU*.jar (in /usr/share/cmf/common_jars, I believe):
  3. Extract the JAR file using the 'jar' utility.
  4. Modify descriptor/service.sdl by finding the memory_limit_hard_bytes entry, adding a comma after "default" :  4294967296, and adding a new line with the contents "autoConfigShare" : 100
  5. Recreate the JAR around the extracted files (including the modified service.sdl)
  6. Overwrite the existing KUDU*.jar files with the new ones you created in step #5.
  7. Restart the CM server.

You should now see an entry in he static service pools UI for Kudu's Tablet Server Hard Memory Limit.