system overlay updates from IPMI and real node boot testing
This commit is contained in:
@@ -14,4 +14,4 @@ Include: yum
|
||||
shadow-utils rsyslog tcp_wrappers tzdata util-linux words \
|
||||
zlib tar less gzip which util-linux openssh-clients \
|
||||
openssh-server dhclient pciutils vim-minimal shadow-utils \
|
||||
strace cronie crontabs cpio wget centos-release
|
||||
strace cronie crontabs cpio wget centos-release ipmitool
|
||||
|
||||
26
go.mod
26
go.mod
@@ -24,7 +24,7 @@ require (
|
||||
github.com/golang/protobuf v1.4.2
|
||||
github.com/gorilla/mux v1.7.4
|
||||
github.com/juju/ansiterm v0.0.0-20180109212912-720a0952cc2a
|
||||
github.com/kelseyhightower/envconfig v1.4.0
|
||||
github.com/kelseyhightower/envconfig v1.4.0 // indirect
|
||||
github.com/klauspost/compress v1.11.1
|
||||
github.com/klauspost/pgzip v1.2.5
|
||||
github.com/lunixbochs/vtclean v0.0.0-20180621232353-2d01aacdc34a
|
||||
@@ -44,17 +44,17 @@ require (
|
||||
github.com/russross/blackfriday/v2 v2.0.1
|
||||
github.com/sirupsen/logrus v1.7.0
|
||||
github.com/spf13/cobra v1.1.1
|
||||
github.com/ttacon/chalk v0.0.0-20160626202418-22c06c80ed31
|
||||
github.com/ulikunitz/xz v0.5.8 // indirect
|
||||
github.com/vbauerster/mpb/v5 v5.3.0 // indirect
|
||||
go.etcd.io/bbolt v1.3.5 // indirect
|
||||
golang.org/x/crypto v0.0.0-20200604202706-70a84ac30bf9 // indirect
|
||||
golang.org/x/net v0.0.0-20200602114024-627f9648deb9 // indirect
|
||||
golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a // indirect
|
||||
golang.org/x/sys v0.0.0-20200909081042-eff7692f9009 // indirect
|
||||
google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013 // indirect
|
||||
google.golang.org/grpc v1.27.0 // indirect
|
||||
google.golang.org/protobuf v1.24.0 // indirect
|
||||
gopkg.in/square/go-jose.v2 v2.3.1 // indirect
|
||||
github.com/ttacon/chalk v0.0.0-20160626202418-22c06c80ed31 // indirect
|
||||
github.com/ulikunitz/xz v0.5.8
|
||||
github.com/vbauerster/mpb/v5 v5.3.0
|
||||
go.etcd.io/bbolt v1.3.5
|
||||
golang.org/x/crypto v0.0.0-20200604202706-70a84ac30bf9
|
||||
golang.org/x/net v0.0.0-20200602114024-627f9648deb9
|
||||
golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a
|
||||
golang.org/x/sys v0.0.0-20200909081042-eff7692f9009
|
||||
google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013
|
||||
google.golang.org/grpc v1.27.0
|
||||
google.golang.org/protobuf v1.24.0
|
||||
gopkg.in/square/go-jose.v2 v2.3.1
|
||||
gopkg.in/yaml.v2 v2.3.0
|
||||
)
|
||||
|
||||
@@ -6,3 +6,5 @@ GATEWAY={{$.Self.NetDevs.eth0.Gateway}}
|
||||
HWADDR={{$.Self.NetDevs.eth0.Hwaddr}}
|
||||
BOOTPROTO=static
|
||||
ONBOOT=yes
|
||||
DEVTIMEOUT=10
|
||||
|
||||
|
||||
@@ -33,6 +33,8 @@ mount -t devtmpfs devtmpfs /dev
|
||||
|
||||
nohup /warewulf/bin/wwclient >/var/log/wwclient.log 2>&1 </dev/null &
|
||||
|
||||
nohup /ipmi >/var/log/ipmi.log 2>&1 </dev/null &
|
||||
|
||||
echo "Calling /sbin/init..."
|
||||
echo
|
||||
|
||||
|
||||
@@ -1,36 +1,62 @@
|
||||
#!/bin/bash
|
||||
|
||||
error_exit() {
|
||||
echo "ERROR: $*"
|
||||
exit 1
|
||||
}
|
||||
|
||||
export PATH=/usr/bin:/bin:/usr/sbin:/sbin
|
||||
|
||||
if [ ! -e /dev/ipmi0 ]; then
|
||||
ipmi_dev=$(grep ipmidev /proc/devices | awk '{ print $1; }')
|
||||
mknod -m 0666 /dev/ipmi0 c $ipmi_dev 0
|
||||
ls -la /dev/ipmi0
|
||||
fi
|
||||
|
||||
IP="{{$.Self.IpmiIpaddr}}"
|
||||
NETMASK="{{$.Self.IpmiNetmask}}"
|
||||
NETMASK="{{$.Self.NetDevs.eth0.Netmask}}"
|
||||
GATEWAY="{{$.Self.NetDevs.eth0.Gateway}}"
|
||||
USER="{{$.Self.IpmiUserName}}"
|
||||
PASS="{{$.Self.IpmiPassword}}"
|
||||
|
||||
echo IP is $IP
|
||||
echo NETMASK is $NETMASK
|
||||
echo GATEWAY is $GATEWAY
|
||||
echo USER is $USER
|
||||
echo PASS is $PASS
|
||||
|
||||
exit 0
|
||||
if [ -z "$IP" ]; then
|
||||
error_exit "No IPMI IP address supplied, skipping IPMI configuration"
|
||||
fi
|
||||
|
||||
modprobe ipmi_si
|
||||
modprobe ipmi_ssif
|
||||
modprobe ipmi_devintf
|
||||
modprobe ipmi_msghandler
|
||||
|
||||
if [ ! -e /dev/ipmi0 ]; then
|
||||
sleep 1
|
||||
ipmi_dev=$(grep ipmidev /proc/devices | awk '{ print $1; }')
|
||||
mknod -m 0666 /dev/ipmi0 c $ipmi_dev 0
|
||||
ls -la /dev/ipmi0
|
||||
fi
|
||||
|
||||
# Network
|
||||
ipmitool lan set 1 access on
|
||||
ipmitool lan set 1 ipsrc static
|
||||
ipmitool lan set 1 ipaddr $IP
|
||||
ipmitool lan set 1 netmask $NETMASK
|
||||
ipmitool lan set 1 defgw ipaddr $GATEWAY
|
||||
|
||||
# User
|
||||
if [ "$USER" != "" ]; then
|
||||
ipmitool user set name 2 $USER
|
||||
ipmitool user set password 2 $PASS
|
||||
sleep 1
|
||||
ipmitool user priv 2 4 1
|
||||
ipmitool user enable 2
|
||||
fi
|
||||
|
||||
# Authentication
|
||||
ipmitool lan set 1 auth user md5,password
|
||||
ipmitool lan set 1 auth operator md5,password
|
||||
ipmitool lan set 1 auth admin md5,password
|
||||
ipmitool user enable 1
|
||||
ipmitool user priv 1 4 1
|
||||
#ipmitool lan set 1 auth user md5,password
|
||||
#ipmitool lan set 1 auth operator md5,password
|
||||
#ipmitool lan set 1 auth admin md5,password
|
||||
#ipmitool user enable 1
|
||||
#ipmitool user priv 1 4 1
|
||||
|
||||
# Authentication (allow None)
|
||||
#ipmitool lan set 1 auth user none,md5,password
|
||||
@@ -42,7 +68,9 @@ ipmitool user priv 1 4 1
|
||||
# Serial Over LAN
|
||||
ipmitool sol set force-encryption true 1
|
||||
ipmitool sol set force-authentication true 1
|
||||
ipmitool sol set privilege-level user 1
|
||||
ipmitool sol set privilege-level admin 1
|
||||
ipmitool sol payload enable 1 4
|
||||
ipmitool sol set enabled true 1
|
||||
ipmitool sol set non-volatile-bit-rate 19.2 1
|
||||
ipmitool sol set volatile-bit-rate 19.2 1
|
||||
|
||||
|
||||
Reference in New Issue
Block a user