Instead of using a trivial function, simply generate the local node from main.go, manually assign fields from the nodeMeta struct.
This means nodeMeta can be private again, and also makes it easier to pass a Node object to the cluster for local meta, instead of a generic byte[] function. For later updating, that node is passed using Update() instead of New().
Splitting into modules will help keep concerns separate, at the cost of a slightly more verbose code.