This topic describes how to resolve the problem of a metadata server
that is in the "Not running" or "Not added" state.
Context
This procedure applies when one of more of the following occurs when
you run the sfscli
lsserver command on the metadata server:
- The master and subordinate metadata servers are shown as "not running
subordinates."
- The master metadata server only shows data for that particular server
(it should show data for all subordinate metadata servers).
- The sfscli lsserver command shows that the metadata server is either
in the "Not added" or "Not running" state.
Steps
- Perform the following preliminary steps, listed by symptom, to
try to solve the problem:
- If the metadata server is shown in the "Not added" or "Not
running" state, start or add the metadata server to the cluster using the
appropriate sfscli commands.
If neither of these procedures applies to the situation or fails
to solve the problem, perform the following steps:
- On the master metadata server, determine if the Tank.Config and
the Tank.Bootstrap files exist in the /usr/tank/server/config directory.
If they exist, rename them for later use and recreate them by executing the
following from the master metadata server:
- Stop Cimom by entering: /usr/tank/admin/bin/stopCimom
- Run the command: /usr/tank/admin/bin/setupsfs -newserver. This creates a new Tank.Config file.
The results of running
the lsserver command should now indicate that the server is in the "not
added subordinate" state.
- Run the command: sfscli stopserver master_server_name
- Change to the /usr/tank/server/bin directory.
- Run: tank extractbootrecord -device /dev/rvpathX where /dev/rvpathX is that name of the master metadata
LUN. This creates a new Tank.Bootstrap file.
- To find the master disk, run the command: tank lsdisklabel
-device /dev/rvpathX The disk with
a Disk Type of "M" is the master.
- Run the command: sfscli startserver master_server_name
- Run the command: sfscli lsserver The server should now be the "online master."
- From the master metadata server, start any subordinates
by running:sfscli startserver subordinate_server_name The subordinate server might shutdown at this point. If it does,
it should restart automatically. If it does not restart automatically, start
the server and run sfscli lsserver. The results should
show that the subordinate is now online. If it does not, repeat step 3.
Postrequisites
If there is no Tank.Config file in the /usr/tank/server/config directory
of the subordinate, then perform the following:
- On the subordinate server, run setupTank -newserver.
- On the master metadata server, run sfscli startserver subordinate_server_name.
If there is no Tank.Bootstrap file in the /usr/tank/server/config
directory of the subordinate metadata server, then copy the file from the
master metadata server.