| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
| |
* Incorrect reference to $c instead of $_c caused loop to never
terminate.
* Need to flush multipath devices before trying again.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
| |
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
| |
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
| |
This points to a file containing static entries that should be
inserted into /etc/hosts on each node.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
| |
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
| |
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
| |
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
| |
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
|
| |
Even if all of the devices are there, multipath doesn't necessarily do
what we expect. This attempts to run multipath for up to 30 seconds
until the right number of slave devices appear.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The current code uses a sleep to try to ensure that all the iSCSI
devices have appeared before running multipath. Like any situation
involving a seemingly random sleep this is a bug. When the host
machine is heavily loaded 5 seconds isn't enough.
This adds an extra initscript to handle this more properly. The
initscript is always installed but is only enabled using chkconfig on
relevant nodes.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
|
| |
Add new variable SHARED_DISK_MULTIPATH_CALLOUT to parameterise the
uid_callout option and use SYSTEM_DISK_PREFIX to decide what to
blacklist.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The main problem was that $secondary was unset so mmcrcluster would
generate a usage message because there would be no argument to -s.
However, 'onnode 1 ...' was used and would generate a spurious warning
while failing to set secondary.
This version uses "onnode all ..." once and then manipulates the
resulting list of hosts.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
| |
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
| |
These changes don't work. :-(
This reverts commit 831738a709251d57b13e8c02bfcc1f60dcb5a895.
|
|
|
|
| |
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
| |
Add some TSM magic so that the backup and archive pools spill over
into the space management pool.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
|
|
| |
This should be run on a sofs_front node and will configure all
sofs_front nodes to do HSM. Updated so that the first tsm_server node
is configured as the server and HSM is only configured on sofs_front
nodes.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
|
| |
This was obviously a typo. Given that the TSM support has been broken
for a while I don't think finally fixing the typo will hurt anyone.
:-)
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This scripts hasn't received any love since the handling of node types
was generaliased. Although we're meant to run this script on a
tsm_server node, we use the hostname of the first tsm_server node in
the NODES list. Similarly, we setup all sofs_front nodes as client
nodes in the server config.
This isn't yet well tested but a quick test suggests that it does
work.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
|
|
|
| |
Remove default TSM entry from the "all" hosts file.
Add new hosts file for "rhel_base" nodes that does not include
anything for CIFSNAME. If a rhel_base node is used as a test client
then it should lookup CIFSNAME in DNS and connect via a real IP.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Previous contents of base/ are now in base/all.
* create_node_COMMON() takes an extra argument (inserted as $3) that
specifies the node type. All of the create_node_* functions pass
"$type" for this argument.
* setup_base() now has an optional argument, which is only passed by
create_node_COMMON. Rather than simply copying and substituting
templates for the entire $BASE_TEMPLATES/ subdirectory it now does
this for $BASE_TEMPLATES/all and then $BASE_TEMPLATES/$type.
Therefore, the contents of the type-specific directory override the
contents of "all" directory.
* releases/SoFS.common uses the "all" version of SoFS-postinstall.sh
when setting POSTINSTALL_TEMPLATE. This variable also now respects
$BASE_TEMPLATES instead of hard-coding the base/ subdirectory.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
|
| |
Having this list of packages hardcoded in the postinstall script is a
maintenance nightmare. This does the same thing using a variable,
with the default value in releases/SoFS.common.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
| |
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
| |
Thanks to Klaus Smolin and Ronnie Sahlberge.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
|
|
| |
GPFS 3.3 requires that adminMode be set to allToAll for mm commands to
be run from any node. The redirect from /dev/null ensures that older
versions of GPFS won't get stuck when they prompt you to warn about an
unknown option - hopefully the failure will be graceful.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
| |
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
| |
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
| |
I must have copied from an example that I tested and inadvertently
changed @@CLUSTER@@ to "m1" in the GPFS cluster name.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
| |
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
| |
The previous commit introduced an error because the template
substitution seems to eat backslashes in certain circumstances.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
|
|
|
|
| |
SOFS_GUI_PACKAGES can now be set to empty to stop these packages being
installed by the postinstall.
Also, if SOFS_GUI_PACKAGES is non-null, WITH_SOFS_GUI is null and
there is at least 1 sofs_gui node in NODES, then still attempt to
install the GUI pacakges.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
|
| |
The previous version made the script confusing to read once the
template substitution had been done. Assign the value to a variable
for clarity.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
|
| |
Indicates how many NSDs are used by the default GPFS filesystem that
is setup by setup_gpfs.sh. The default empty value indicates that all
available NSDs should be used.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
| |
Use only the storage nodes and n1. Might refine this later.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
| |
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
|
|
| |
This allows IDE to be used for system disks and some other type,
perhaps virtio, to be used for the shared disks. I seem to be seeing
some corruption issues with the combination of qcow2 and virtio, so
this will allow me to experiment with the raw shared disks and virtio.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
|
|
| |
Recent versions of CTDB no longer comment out the relevant line in the
config file, so weaken the substitution. While we're here, clean
things up a bit: use "sed -i" to do in-place modification and use
cnpushfile for clarity.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
| |
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
| |
The version of kvm under RHEL5.4 does not support the SCSI emulation.
So allow the use of ide or virtio instead.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
| |
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
| |
There looks to be nothing harmful in conf.base-SoFS-1.5.3, so merge it
all into conf.base-SoFS and remove the 1.5.3-specific version.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
ctdb 1.0.78 changes the format of the output of "ctdb -Y status",
causing the cluster_is_healthy() function in
base/root/scripts/functions to always fail. This relaxes the matching
to look for a 1 bit in the output for a node rather than a particular
number of 0s.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|/
|
|
| |
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
| |
No longer mysteriously fail if there is only one entry in NSD_SERVER -
use the first node in the CTDB cluster as the secondary GPFS server.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Both scripts now use nsd_server_common.bash to re-exec on the first
node defined in $NSD_SERVERS if that variable is set (to the list of
sofs_storage nodes by 50sofs.defconf). They also also include the NSD
servers in the file that is passed to mmcrnsd and mmcrfs.
setup_gpfs.sh includes any NSD servers in the list of nodes for the
GPFS cluster, using them as the primary and secondary GPFS servers.
setup_gpfs.sh just sources mknsd.sh to avoid duplication of logic.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Using "yum clean all" before doing a "yum update" seems to avoid
certain weird problems. We were doing a clean before an update in
both the basic postinstall (which is always present) and the
SoFS-postinstall. However, this wasn't avoiding problems when a base
image was being used for some other purpose. The current thinking is
to put a clean after the update in the basic postinstall - so this is
the last thing that happens when a base is created without the
SoFS-postinstall. This should mean that, when a node is created using
the base, any updates will need to fetch fresh repo data... so the
update should be clean.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
|
|
| |
There is occasionally weirdness where something to do with yum gets
left in a strange state that causes dependency problems. Adding a
gratuitous "yum clean all" before doing a "yum update" seems to avoid
some of these problems... and it isn't very expensive...
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
New function make_public_addresses() generates a template fragment for
public addresses. New configuration variable PUBLIC_ADDRESSES is set
to "|make_public_addresses", which builds a sensible set of public
addresses with addresses in a range relative to nodes' management
addresses. conf.base-SOFS* files include @@@PUBLIC_ADDRESSES@@@
rather than "static" public address definitions.
This means that the default public addresses for multiple virtual
clusters on the same virtualisation host will no longer clash.
The old behaviour, with public addresses whose suffixes start at 101,
can be re-enabled by setting PUBLIC_ADDRESSES to
"|make_public_addresses 101 1 3". A more sensible approach, which
generates public addresses for the right number of nodes and excludes
public addresses from node 1, involves setting PUBLIC_ADDRESSES to
just "|make_public_addresses 101".
Signed-off-by: Martin Schwenke <martin@meltin.net>
|
|
|
|
|
|
| |
Forgot to "git add" it last time and it got missed.
Signed-off-by: Martin Schwenke <martin@meltin.net>
|