Still working on getting Tiburon out the door

in beta form. Tiburon is the open source based framework we are using to load our clusters: computing and storage, and provide modular interfaces to manage the systems. Basically if you are deploying more then 2 nodes, or two JackRabbits, you should not, ever, have to load each system and configure it. This should be automated. But done so in an intelligent manner.

And this is where I am thinking that the compute job ASL might have an analog in a management ASL. Look, provisioning/setting up/booting/installing/configuring nodes is just a different sort of job, right? Why not have the ASL have enough power/flexibility/extensibility to enable this to be done? And why not build the interpreter for the ASL in such a manner that you can plug new functionality in easily. The best languages get way out of the way of the person using them. They enable, and do not constrain. They are expressive without being overly verbose.

A good ASL would be simple. Yeah, we could use Perl/Python/Ruby. But those are more general purpose languages, with less in the way of abstraction. The ASL should be abstract. Then we really don’t care what language the ASL interpreter is written in.

For example:

open new temporary folder
get files from smb://joes_machine/input_decks/*.molecules to here
run application named molecular_dynamics_v1
gather our files into smb://joes_machine/output_decks/
close temporary folder

for a run, with temporary directory creation, data motion (though Exludus would likely argue that this second line really should come before the first line), application execution, data motion, and clean up.

You can do the same thing for provisioning

install baseline OS
install network booting options
configure RAID as RAID6 on each card with 2 hot spares
create iSCSI targets for each card

You are working at a higher level, you give up control for higher efficiency.

These were just ideas on ASLs, don’t take them as the final form. My point is that with a well engineered and extensible ASL, we can automate a number of tasks (that should be automated) without writing code (past a particlar point).

While this is neat technology, does anyone out there think they would have a use for an ASL like this?

Viewed 6493 times by 1255 viewers