While updating our network on the Rocks Cluster, the nodes had to reinstall (this is default protocol). Now however the nodes got stuck during PXE (over the net automatic installation) on the setting of the language.
This is annoying as it would mean connect a screen and a keyboard to every node to install. This however is an indication that something is wrong all together, however finding what proved a little bit tricky, that’s why I share it here.
To find if you face the same issue, execute :
sudo -u apache /opt/rocks/bin/rocks list host profile compute-0-0
This will show the configuration the node pulled from the head-node. In my case it looked like :
Traceback (most recent call last): File "/opt/rocks/bin/rocks", line 301, in <module> command.runWrapper(name, args[i:]) File "/opt/rocks/lib/python2.6/site-packages/rocks/commands/__init__.py", line 2194, in runWrapper self.run(self._params, self._args) File "/opt/rocks/lib/python2.6/site-packages/rocks/commands/list/host/profile/__init__.py", line 301, in run for host in self.getHostnames(args): File "/opt/rocks/lib/python2.6/site-packages/rocks/commands/__init__.py", line 773, in getHostnames min,max = self.db.fetchone() TypeError: 'NoneType' object is not iterable
While this should be a large XML file structure like. After allot of extensive google skills (and this 2013 topic) I found out that a simple MySQL update had dropped the root password out of the global configuration, this can be found :
a update, generally saves it here :
it should look like this :
[mysqld] user = rocksdb port = 40000 socket = /var/opt/rocks/mysql/mysql.sock datadir = /var/opt/rocks/mysql [client] user = rocksdb port = 40000 socket = /var/opt/rocks/mysql/mysql.sock password = <password>
You don’t have to restart the MySQL or the service, just let the node reboot and it will install properly 🙂