daisycloud-core/code/pxe_server_install/pxe_install/pxe/pxe_kickstart.cfg

210 lines
5.6 KiB
INI
Executable File

# Kickstart file automatically generated by anaconda.
install
nfs --server=192.170.0.1 --dir=iso_nfs_dir
lang en_US.UTF-8
keyboard us
text
rootpw ossdbg1
firewall --disabled
authconfig --enableshadow --enablemd5
selinux --disabled
timezone --utc Asia/Shanghai
logging --host=192.170.0.1 --port=514 --level=debug
%include /tmp/part-include
zerombr
#bootloader --location=mbr --driveorder=sda
#bootloader_append_holder
#####reboot
# The following is the partition information you requested
# Note that any partitions you deleted are not expressed
# here so unless you clear all partitions first, this is
# not guaranteed to work
#clearpart --drives=sda --all
part /boot --fstype ext3 --size=400 --ondisk=sda
part biosboot --fstype=biosboot --size=1 --ondisk=sda
#LVM install
#end_part
volgroup vg_sys pv.01 --pesize=4096
volgroup cindervolumes pv.02 --pesize=4096
volgroup vg_docker pv.03 --pesize=4096
volgroup vg_data pv.04 --pesize=4096
logvol swap --fstype swap --vgname=vg_data --size=2000 --name=lv_swap
#lv_root
#lv_db
#lv_mongodb
#lv_glance_mount
#lv_nova
#vg_cinder
%packages --ignoremissing
@Core
glibc.i686
nss-softokn-freebl.i686
libgcc.i686
%end
%pre
#!/bin/sh
sleep 10
function lvm_clean()
{
#vg_rename
vgs_v_file=/tmp/vgs_v.txt
vgs -v > $vgs_v_file
lines=`cat $vgs_v_file |wc -l`
vg_name=`cat $vgs_v_file |awk '{print $1}'`
vg_name_arr=($vg_name)
vg_uuid=`cat $vgs_v_file |awk '{print $9}'`
vg_uuid_arr=($vg_uuid)
for (( i=1; i<$lines; i++ )); do
vgrename ${vg_uuid_arr[$i]} ${vg_name_arr[$i]}_$i
echo "vgrename ${vg_uuid_arr[$i]} ${vg_name_arr[$i]}_$i"
done
#remove lvs
lvscan_file=/tmp/lvscan.txt
lvscan > $lvscan_file
sed -i "s/'//g" $lvscan_file
lines=`cat $lvscan_file |wc -l`
lv_name=`cat $lvscan_file |awk '{print $2}'`
lv_name_arr=($lv_name)
for (( i=0; i<$lines; i++ )); do
lvchange -a n ${lv_name_arr[$i]}
lvremove ${lv_name_arr[$i]} -f
[[ `lvscan |grep -w "${lv_name_arr[$i]}"` == "" ]] && echo "lvchange -a n & lvremove ${lv_name_arr[$i]} success"
done
#remove vgs
vgs_file=/tmp/vgs.txt
vgs > $vgs_file
lines=`cat $vgs_file |wc -l`
vg_name=`cat $vgs_file |awk '{print $1}'`
vg_name_arr=($vg_name)
for (( i=1; i<$lines; i++ )); do
vgchange -a n ${vg_name_arr[$i]}
vgremove ${vg_name_arr[$i]} -f
[[ `vgs |grep -w "${vg_name_arr[$i]}"` == "" ]] && echo "vgchange -a n & vgremove ${vg_name_arr[$i]} success"
done
#remove pvs
pvs_file=/tmp/pvs.txt
pvs > $pvs_file
lines=`cat $pvs_file |wc -l`
pv_name=`cat $pvs_file |awk '{print $1}'`
pv_name_arr=($pv_name)
for (( i=1; i<$lines; i++ )); do
pvchange -a n ${pv_name_arr[$i]}
pvremove ${pv_name_arr[$i]} -f
[[ `pvs |grep -w "${pv_name_arr[$i]}"` == "" ]] && echo "pvchange -a n & pvremove ${pv_name_arr[$i]} success"
done
}
function part_clean()
{
disknamelist=sda
echo disknamelist=$disknamelist
disknamelist=`echo $disknamelist | sed "s/,/ /g"`
echo disknamelist=$disknamelist
disknamelist=($disknamelist)
for ((i=0;i<${#disknamelist[*]};i++))
do
echo i=$i
devname=`echo ${disknamelist[$i]}`
echo $devname
if [ -b /dev/$devname ];then
dev_part_list=""
dev_part_no=0
DEV_DISK=/dev/${devname}
dev_part_list=`ls /dev/${devname}[0-9] 2>/dev/null`
echo ${DEV_DISK} list: $dev_part_list
for j in $dev_part_list
do
if [[ -b $j ]]; then
dev_part_no="${j#*$devname}"
parted ${DEV_DISK} rm $dev_part_no -s
[ -b $j ] && echo "delete partion $j fail" || echo "delete partion $j success"
fi
done
fi
done
dev_list_last=`ls /dev/sd*`
echo dev_list_last=$dev_list_last
}
lvm_clean
part_clean
echo "#partitioning schem e generated in %pre for 2 drives" > /tmp/part-include
echo "bootloader --location=mbr --boot-drive=sda --driveorder=sda" >> /tmp/part-include
echo "clearpart --drives=sda --all" >> /tmp/part-include
%end
%post --nochroot
#!/bin/bash
INSTALL_SRC_ROOT=/mnt/isodir
LOCAL_DISK_ROOT=/mnt/sysimage
OS_INSTALL_SRC=$INSTALL_SRC_ROOT/os_install
OS_INSTALL_DST=$LOCAL_DISK_ROOT/home/os_install
OS_ISO_SRC=$INSTALL_SRC_ROOT/os_iso
OS_ISO_MOUNT_SRC=$INSTALL_SRC_ROOT/os_mount_iso
mkdir -p $OS_INSTALL_DST
#挂载源目录
NFS_SERVER_ADDRESS=192.170.0.1
[ ! -d $OS_INSTALL_SRC ] && { mkdir -p $OS_INSTALL_SRC; }
mount -o nolock $NFS_SERVER_ADDRESS:/home/install_share/macaddr $OS_INSTALL_SRC
cp -f ${OS_INSTALL_SRC}/os.json ${OS_INSTALL_DST}/
cp -rf ${OS_INSTALL_SRC}/usrdata ${OS_INSTALL_DST}/
umount $OS_INSTALL_SRC
%end
%post
#!/bin/bash
#change network name and add vlan configuration
tmpline=`uuidgen`
tmpline=`echo $tmpline|tr -d '-'`
echo "$tmpline"> /etc/hostname
mkdir -p /mnt/huge_1GB
#fstab_hugetlbfs_place_holder
#lv_glance_nomount
#end lv_glance_nomount
#lv_provider_nomount
#end lv_provider_nomount
ssh-keygen -t rsa -P '' -f /root/.ssh/id_rsa
chmod 600 /root/.ssh/authorized_keys
cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys
REPO_ROUTE=/etc/yum.repos.d
[ ! -d ${REPO_ROUTE} ] && { mkdir -p ${REPO_ROUTE}; echo "create ${REPO_ROUTE}" >> /home/os_install/usrdata/pxe_install.log; }
#nic fix
NIC_CFG=/home/os_install/usrdata/nic_net_cfg.sh
[ -e ${NIC_CFG} ] && { chmod +x ${NIC_CFG}; ${NIC_CFG}; echo "excute ${NIC_CFG}" >> /home/os_install/usrdata/pxe_install.log; }
#clear db_lv
[ -d /var/lib/mysql ] && { rm -rf /var/lib/mysql/*; echo "rm -rf /var/lib/mysql/*" >> /home/os_install/usrdata/pxe_install.log; }
sleep 30
%end