aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Thibodeau <kyron@neuralbs.com>2008-07-04 01:10:36 -0400
committerEric Thibodeau <kyron@neuralbs.com>2008-07-04 01:10:36 -0400
commit920a8782602dc075fde21589ea8758c6acae0702 (patch)
treefa043efa82aac38d521812d341afc8743e4a2da1 /overlay
parentCorrect bgus in the ebuilds (incomplete variable changes) (diff)
downloadclustering-livecd-920a8782602dc075fde21589ea8758c6acae0702.tar.gz
clustering-livecd-920a8782602dc075fde21589ea8758c6acae0702.tar.bz2
clustering-livecd-920a8782602dc075fde21589ea8758c6acae0702.zip
NFSroot stage4 + automatic configs and correction on LiveCD(master node) and much much more ;)
Diffstat (limited to 'overlay')
-rw-r--r--overlay/net-nds/ldap-auth/ChangeLog3
-rw-r--r--overlay/net-nds/ldap-auth/Manifest2
-rw-r--r--overlay/net-nds/ldap-auth/ldap-auth-0.1.ebuild12
-rw-r--r--overlay/sys-cluster/beowulf-head/ChangeLog3
-rw-r--r--overlay/sys-cluster/beowulf-head/Manifest3
-rw-r--r--overlay/sys-cluster/beowulf-head/beowulf-head-0.1.ebuild58
-rw-r--r--overlay/sys-cluster/beowulf-head/files/cluster.conf22
7 files changed, 74 insertions, 29 deletions
diff --git a/overlay/net-nds/ldap-auth/ChangeLog b/overlay/net-nds/ldap-auth/ChangeLog
new file mode 100644
index 0000000..3996322
--- /dev/null
+++ b/overlay/net-nds/ldap-auth/ChangeLog
@@ -0,0 +1,3 @@
+# Eric Thibodeau 03-07-08
+ Put ewarns in a more appropriate place so it's not as easy to miss.
+
diff --git a/overlay/net-nds/ldap-auth/Manifest b/overlay/net-nds/ldap-auth/Manifest
index 0132572..c9cf7fe 100644
--- a/overlay/net-nds/ldap-auth/Manifest
+++ b/overlay/net-nds/ldap-auth/Manifest
@@ -1,2 +1,2 @@
AUX cluster_ldap_skel.conf 3849 RMD160 21ddf218b92583b48ee0cfca2936d2eb55c6d652 SHA1 c79f463486e88ada5af76ed19c465a97bb680bf6 SHA256 473d7bab701aaac2b9091c577cebdca4822ec37b8ed94002f33a37cf6e329bbf
-EBUILD ldap-auth-0.1.ebuild 13594 RMD160 ce84849c1a6c8ffa6ee3d105856cc8cc851595d6 SHA1 be9e46a60e3adbf0b09e3528bf0744b049611fc8 SHA256 52ba0d363484b4328da2d96fb97a98a904b7dc050b600dcf35fb6f3b55b1f17a
+EBUILD ldap-auth-0.1.ebuild 13594 RMD160 5012d70cbf00256c8ba37ac5383f50a1b3772d45 SHA1 d858b0e6612d06069ffb6eeb7f8c6e7194737400 SHA256 f090eebfa125176095881071bf5e72c66019bcdce9f9d05a5a6f938f8890c9b5
diff --git a/overlay/net-nds/ldap-auth/ldap-auth-0.1.ebuild b/overlay/net-nds/ldap-auth/ldap-auth-0.1.ebuild
index 6d1e420..2c8065e 100644
--- a/overlay/net-nds/ldap-auth/ldap-auth-0.1.ebuild
+++ b/overlay/net-nds/ldap-auth/ldap-auth-0.1.ebuild
@@ -415,12 +415,6 @@ config_diradm()
-e 's:DEFAULT_LOGINSHELL="/bin/localshell":DEFAULT_LOGINSHELL="/bin/bash":' \
${ROOT}/etc/diradm.conf
- ewarn "You must now use 'diradm' as your user, group and password manager!!!"
- ewarn "For diradm to work, the rootdn password has to be put in cleartext in"
- ewarn "/etc/ldap.secret and the files has to be readable by root only."
- ewarn "The script does that for you but you're responsible for managing that"
- ewarn "file. You have been warned!"
-
echo ${ROOTDNPWD} > /etc/ldap.secret
chmod 600 /etc/ldap.secret
@@ -455,5 +449,11 @@ pkg_config()
install_nssswitch
#fi
+ ewarn "You must now use 'diradm' as your user, group and password manager!!!"
+ ewarn "For diradm to work, the rootdn password has to be put in cleartext in"
+ ewarn "/etc/ldap.secret and the files has to be readable by root only."
+ ewarn "The script does that for you but you're responsible for managing that"
+ ewarn "file. You have been warned!"
+
}
diff --git a/overlay/sys-cluster/beowulf-head/ChangeLog b/overlay/sys-cluster/beowulf-head/ChangeLog
new file mode 100644
index 0000000..b7015c0
--- /dev/null
+++ b/overlay/sys-cluster/beowulf-head/ChangeLog
@@ -0,0 +1,3 @@
+# Eric Thibodeau 03-07-08
+ - get_ip_config wasn't being called
+ - Check for net-dns/dnsmasq USE=tftp
diff --git a/overlay/sys-cluster/beowulf-head/Manifest b/overlay/sys-cluster/beowulf-head/Manifest
index 8c94d58..449637a 100644
--- a/overlay/sys-cluster/beowulf-head/Manifest
+++ b/overlay/sys-cluster/beowulf-head/Manifest
@@ -1,2 +1,3 @@
AUX cluster.conf 1592 RMD160 58464c00571c6c84e7ed1d63686f0d02f88b1597 SHA1 1d35aaba87de3a40de6a5922777f0760453cbf75 SHA256 8065a6610621e233d966b5c45f154fcba1ca1c699f42c86af7ae9f5b16053d65
-EBUILD beowulf-head-0.1.ebuild 3929 RMD160 5da7640e581b3efe59181811e6da491288e8e75a SHA1 390b1d58e12ee76f188afd4c22865bb19cbf3980 SHA256 d78bf247106c51e1752ae47cce16e54665f83472d8dae329d900f41106e47a88
+EBUILD beowulf-head-0.1.ebuild 4120 RMD160 3d3fcbe754d847355b51b8a2d069ab360f5ef6a9 SHA1 ffcf9be5d4c3cb7333ec55be0323a0aa2789fcfb SHA256 cc174265ba8eb540bac2b476f3ce27466af325c8752bf12d6ae1113a7c6e01d5
+MISC ChangeLog 101 RMD160 d735719ccc09237e68e4e984eb5451000b06c382 SHA1 79098d1e8ae451f0430d363da6b717966ade6e78 SHA256 8dd010e2772026c4a6b86839842931b99c85c44a5e9f380864cc275b55587ac2
diff --git a/overlay/sys-cluster/beowulf-head/beowulf-head-0.1.ebuild b/overlay/sys-cluster/beowulf-head/beowulf-head-0.1.ebuild
index b88339e..8cb877c 100644
--- a/overlay/sys-cluster/beowulf-head/beowulf-head-0.1.ebuild
+++ b/overlay/sys-cluster/beowulf-head/beowulf-head-0.1.ebuild
@@ -9,19 +9,22 @@ SRC_URI=""
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ~x86"
-IUSE="autoconfigure"
+IUSE=""
DEPEND=""
RDEPEND="net-nds/ldap-auth
sys-boot/syslinux
net-dns/dnsmasq
net-misc/sipcalc
- net-fs/nfs-utils"
+ net-fs/nfs-utils
+ sys-cluster/c3"
CONFPATH="/etc/gentoo"
CONFIG_FILE="cluster.conf"
-gent_ip_config()
+inherit confutils
+
+get_ip_config()
{
CLUSTER_ETH_IP="$(sipcalc ${CLUSTER_ETH} | egrep 'Host address\W*-' | cut -d- -f2)"
RANGE_START="$(sipcalc ${CLUSTER_ETH} | egrep 'Host address\W*-' | cut -d- -f2)"
@@ -96,7 +99,7 @@ pxe_conf()
label $PROFNAME
kernel ${BOOTPATH}/vmlinuz
- append initrd=/initramfs ramdisk=8192 ip=dhcp root=nfs;tmpfs
+ append initrd=${BOOTPATH}/initramfs ip=dhcp root=nfs;tmpfs
label local
localboot 0
@@ -113,22 +116,39 @@ pxe_conf()
nfs_root_conf()
{
- cat > ${ROOT}/etc/exportfs <<-EOF
- ${NFSROOT} $NETADDR/$SUBNET(ro,no_root_squash,async,no_subtree_check)
- EOF
+ [ -d ${NFSROOT} ] || die "${NFSROOT} is missing! Either create your own of find one ;)"
+ if [ ! -f ${NFSROOT}/boot/vmlinuz ]; then
+ ewarn "Couldn't find ${NFSROOT}/boot/vmlinuz !"
+ ewarn "This is what we built the config files to expect."
+ ewarn "You might have to perform"
+ fi
+
+ echo "${NFSROOT} $NETADDR/$SUBNET(ro,$NFSEPORTOPTS)" > ${ROOT}/etc/exportfs
+
+ # Yes, this could be looped on RO and RW...but that wouldn't be more redable
+ for I in $ROEXPORTS
+ do
+ echo "${I} $NETADDR/$SUBNET(ro,$NFSEPORTOPTS)" >> ${ROOT}/etc/exportfs
+ echo "${I/\/} -ro,$NFSMOUNTOPTS $CLUSTER_ETH_Ir:${I}" >> ${NFSROOT}/etc/autofs/auto.nfs
+ done
+
+ for I in $RWEXPORTS
+ do
+ echo "${I} $NETADDR/$SUBNET(rw,$NFSEPORTOPTS)" >> ${ROOT}/etc/exportfs
+ echo "${I/\/} -ro,$NFSMOUNTOPTS $CLUSTER_ETH_Ir:${I}" >> ${NFSROOT}/etc/autofs/auto.nfs
+ done
- mkdir -p ${NFSROOT}
- einfo "${NFSROOT} has been populated, all configs point to this root"
- einfo "to boot, furthermore, the fonfigs expect the kernel to be"
- einfo "${NFSROOT}/boot/vmlinuz"
}
parse_config()
{
[[ -f ${1} ]] || die "${1} missing!!! re-emerge ${PF}"
- if ! use autoconfigure; then
- . ${1}
- [[ $CONFIG_OK != "yes" ]] && die "You need to edit ${CONFIG_FILE} and set CONFIG_OK=\"yes\""
+ . ${1}
+ [[ $CONFIG_OK != "yes" ]] && die "You need to edit ${CONFIG_FILE} and set CONFIG_OK=\"yes\""
+}
+pkg_setup() {
+ if ! built_with_use net-dns/dnsmasq tftp ; then
+ die "net-dns/dnsmasq must be built with USE=tftp to be used with ${P}!"
fi
}
@@ -138,17 +158,15 @@ src_install()
insinto ${CONFPATH}
doins ${FILESDIR}/${CONFIG_FILE}
- if ! use autoconfigure; then
- elog "You need to edit ${CONFPATH}/${CONFIG_FILE} to your likings"
- elog "Once you are done, set CONFIG_OK=\"yes\" in there and"
- elog "call emerge --config =${CATEGORY}/${PF}"
- fi
+ elog "You need to edit ${CONFPATH}/${CONFIG_FILE} to your likings"
+ elog "Once you are done, set CONFIG_OK=\"yes\" in there and"
+ elog "call emerge --config =${CATEGORY}/${PF}"
}
pkg_config()
{
parse_config "${CONFPATH}/${CONFIG_FILE}"
-
+ get_ip_config
dnsmasq_conf
pxe_conf
nfs_root_conf
diff --git a/overlay/sys-cluster/beowulf-head/files/cluster.conf b/overlay/sys-cluster/beowulf-head/files/cluster.conf
index 1a2fbf9..363f3a9 100644
--- a/overlay/sys-cluster/beowulf-head/files/cluster.conf
+++ b/overlay/sys-cluster/beowulf-head/files/cluster.conf
@@ -20,7 +20,7 @@ PUBETH="eth0"
# You can also specify specify an IP/SUBNET as follows:
# CLUSTER_ETH="10.0.0.1/24"
# CLUSTER_ETH="10.0.0.1 255.255.255.0"
-CLUSTER_ETH="10.9.8.1/24"
+CLUSTER_ETH="eth1"
# Not sure we want this to be (auto)configurable since
# we are building an isolated (true) Beowulf cluster
@@ -41,3 +41,23 @@ PXELINUX="${TFTPROOT}/pxelinux.0"
# this is kept within TFTPROOT:
NFSROOT="${TFTPROOT}/nfsroot/$(uname -m)"
+# We take care of exporting the NFSROOT filesystem Read Only but you
+# also typically need the user's $HOME to be exported as RW.
+# If you need to export more than 1 path, make a space speparated list:
+# RWEXPORTS="/home /otherpath /andagain"
+RWEXPORTS="/home "
+
+# You might also want some read only exports like /opt/matlab64 to
+# be accessible (same multiple path applies as above:
+#ROEXPORTS="/opt/matlab64 "
+ROEXPORTS=""
+
+# This option give you the flexibility of defining some specific options such
+# as asyc, sync, etc. Do NOT set the rw/ro options here, use the variables above.
+# Refer exportfs(8) for more details:
+NFSEPORTOPTS="no_root_squash,async,no_subtree_check"
+
+# NFSMOUNTOPTS: same as above but for mounting ;)
+# Again, NO ro/rw
+NFSMOUNTOPTS="rsize=8192,wsize=8192,soft,intr,actimeo=120,timeo=14"
+