yum install dhcp.i386 yum install tftp-server.i386 yum install system-config-netboot.i386
/etc/dhcp.conf
inserindo o MAC Address da máquina
ddns-update-style none; option space PXE; option PXE.mtftp-ip code 1 = ip-address; option PXE.mtftp-cport code 2 = unsigned integer 16; option PXE.mtftp-sport code 3 = unsigned integer 16; option PXE.mtftp-tmout code 4 = unsigned integer 8; option PXE.mtftp-delay code 5 = unsigned integer 8; option PXE.discovery-control code 6 = unsigned integer 8; option PXE.discovery-mcast-addr code 7 = ip-address; class "pxeclients" { match if substring (option vendor-class-identifier, 0, 9) = "PXEClient"; option vendor-class-identifier "PXEClient"; vendor-option-space PXE; option PXE.mtftp-ip 0.0.0.0; } subnet 200.136.80.0 netmask 255.255.255.0 { } subnet 192.168.1.0 netmask 255.255.255.0 { deny unknown-clients; min-lease-time 300; default-lease-time 1800; max-lease-time 1800; use-host-decl-names on; option subnet-mask 255.255.255.0; option routers 192.168.1.150; host node83 { hardware ethernet 00:30:48:89:26:AD; fixed-address 192.168.1.83; filename "/tftpboot/linux-install/pxelinux.0"; } }Depois inicie o serviço
service dhcpd start
/etc/xinetd.d/tftp
esteja assim (principalmente a opção disable
)
{ socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = /tftpboot disable = no per_source = 11 cps = 100 2 flags = IPv4 }Edite o arquivo
/tftpboot/linux-install/pxelinux.cfg/default
dando o local do seu arquivo para o kickstart e a interface de rede utilizada pelo servidor (a osg-ce) para fazer a instalação (no caso a rede interna, eth1)
DISPLAY msgs/message.txt TIMEOUT 10 PROMPT 1 DEFAULT linux kernel vmlinuz append ks=nfs:192.168.1.150:/export/linux/kickstart/ks.cfg initrd=initrd.img devfs=nomount ksdevice=eth1 LOCALBOOT 0Edite a mensagem apresentada no boot, também
47 07 47 Press: 07 47 0741boot 0747 for normal boot 07 47 0741linux 0747 to install a new node 07 47 07Copie as imagens necessárias do próprio repositório:
cd /tftpboot/linux-install wget ftp://ftp.scientificlinux.org/linux/scientific/46/x86_64/images/SL/pxeboot/vmlinuz wget ftp://ftp.scientificlinux.org/linux/scientific/46/x86_64/images/SL/pxeboot/initrd.imgCopie o
pxelinux.0
para o local apontado no seu arquivo de configuração do dhcp
cp /tftpboot/linux-install/pxelinux.0 /tftpboot/.
/root/anaconda-ks.cfg
de um node em operação, esta no local apontado pelo pxelinux.cfg/default
, no nosso caso /export/linux/kickstart/ks.cfg
:
install nfs --server=192.168.1.150 --dir=/export/linux/scientific/46 lang en_US.UTF-8 langsupport --default en_US.UTF-8 en_US.UTF-8 pt_BR.UTF-8 keyboard br-abnt2 network --device eth1 --bootproto dhcp rootpw --iscrypted $1$iRzYaomV$ENFqdjD7qCeLaZn6SMoIB/ firewall --disabled authconfig --enableshadow --enablemd5 selinux --disabled timezone --utc America/Sao_Paulo bootloader --location=mbr --driveorder=sda # 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 --all part /boot --fstype ext3 --size=100 --asprimary part / --fstype ext3 --size=10240 --asprimary part /var --fstype ext3 --size=2048 part swap --size=2048 --asprimary part /tmp --fstype ext3 --size=500 part /scratch --fstype ext3 --size=1 --grow %packages @ engineering-and-scientific @ brazilian-support @ admin-tools @ portuguese-support @ editors @ system-tools @ base-x @ graphics @ development-tools @ misc-sl @ gnome-desktop @ dialup @ apt-rpm @ yum @ openafs-client @ server-cfg -octave -pvm -units kernel-smp kernel grub -samba-client -lam -lapack -blas %post
/etc/exports
contém as linhas necessárias para que a instalação seja realizada
/export/postinstall 192.168.1.0/24(rw,async,no_root_squash) /export/linux/scientific/46 192.168.1.0/24(rw,async,no_root_squash) /export/linux/kickstart 192.168.1.0/24(rw,async,no_root_squash)Sem reiniciar o nfs
exportfs -a
ks.cfg
indica onde fica os pacotes do SL necessários. Criamos um repositório para isso
rsync -avzlH --delete --exclude=sites/Fermi --exclude=errata/debuginfo --exclude=errata/obsolete rsync://rsync.scientificlinux.org/scientific/46/x86_64/ /export/linux/scientific/46/
F12
, para que a instalação seja feita.
authorized_keys gmond.conf node_instalar.sh ntp.conf condor hosts nsswitch.conf pacman-3.26 ganglia-monitor-core-gmond-2.5.7-1.x86_64.rpm mailnode nsswitch.conf.rpmnew step-tickers
O arquivo condor
é o arquivo de inicialização do condor. O diretório mailnode
contém os mesmos do /etc/sendmail
access helpfile mailertable.db sendmail.cf.rpmnew submit.cf.bak virtusertable access.db local-host-names Makefile sendmail.mc submit.cf.rpmnew virtusertable.db domaintable local-host-names.db sendmail.cf sendmail.mc.rpmnew submit.mc domaintable.db mailertable sendmail.cf.bak submit.cf trusted-users
Todos estes arquivos são retirados de um node comum.
Execute então este script no node que será instalado
#!/bin/bash TEMP=/teste #Em FNODE coloque o primeiro nó do rack para acertar o physical view do gmond RACK=5; FNODE=71; mkdir $TEMP; mount -t nfs 192.168.1.150:/export/postinstall $TEMP; cd $TEMP; cp ntp.conf /etc/.; cp hosts /etc/hosts; cp nsswitch.conf /etc/.; cp step-tickers /etc/ntp/.; cp condor /etc/init.d/condor; cp gmond.conf /etc/.; #copiando a chave para fazer scp e ssh mkdir /root/.ssh; chmod 600 /root/.ssh; cp authorized_keys /root/.ssh/.; #configuracao de rede mv /etc/resolv.conf /etc/resolv.conf.old; echo domain grid >>/etc/resolv.conf; echo nameserver 192.168.1.150 >>/etc/resolv.conf; echo nameserver 143.108.30.90 >>/etc/resolv.conf; echo nameserver 143.107.128.16 >>/etc/resolv.conf; mv /etc/sysconfig/network /etc/sysconfig/network.old; NNAME=`ifconfig eth1 | grep Bcast |cut -c31- | cut -d " " -f1`; echo NETWORKING=yes >>/etc/sysconfig/network; echo HOSTNAME=node${NNAME}| cat >>/etc/sysconfig/network; echo GATEWAY=192.168.1.150| cat>>/etc/sysconfig/network; echo NISDOMAIN=grid|cat>>/etc/sysconfig/network; #para permitir o logwatch de enviar e-mail para osg-ce echo root: root@osgce.grid|cat>>/etc/aliases; #alterando a configuracao default de e-mails mv /etc/mail /etc/mail.old; cp -pr $TEMP/mailnode /etc/mail; chkconfig sendmail on; mv /etc/sysconfig/network-scripts/ifcfg-eth1 /etc/sysconfig/network-scripts/ifcfg-eth1.bak; cat /etc/sysconfig/network-scripts/ifcfg-eth1.bak| sed -e "/BOOTPROTO=dhcp/d"| sed -e "/ONBOOT=no/d"| sed -e "/HWADDR/d"|cat >> /etc/sysconfig/network-scripts/ifcfg-eth1; rm /etc/sysconfig/network-scripts/ifcfg-eth1.bak; #echo ONBOOT=yes|cat>>/etc/sysconfig/network-scripts/ifcfg-eth1; MACADDR=`ifconfig eth1 | grep HWaddr| cut -c39-`; echo HWADDR=${MACADDR}|cat>>/etc/sysconfig/network-scripts/ifcfg-eth1;echo BROADCAST=192.168.1.255|cat>>/etc/sysconfig/network-scripts/ifcfg-eth1;IP=`ifconfig eth1 | grep Bcast |cut -c21- | cut -d " " -f1`; echo IPADDR=${IP}|cat>>/etc/sysconfig/network-scripts/ifcfg-eth1 ; echo NETMASK=255.255.255.0|cat>>/etc/sysconfig/network-scripts/ifcfg-eth1; echo NETWORK=192.168.1.0| cat >> /etc/sysconfig/network-scripts/ifcfg-eth1; #Definindo ponto de montagem dos nodes #echo osgce:/opt/osg-1.0.0 /OSG nfs rw,hard,bg,rsize=32768,wsize=32768,udp,nfsvers=3,addr=192.168.1.150 0 0 |cat >>/etc/mtab; #echo acs:/hdacs /hdacs nfs rw,hard,bg,rsize=32768,wsize=32768,udp,nfsvers=3,addr=192.168.1.154 0 0 |cat >>/etc/mtab ; #echo osgce:/home /home nfs rw,hard,bg,rsize=32768,wsize=32768,udp,nfsvers=3,addr=192.168.1.150 0 0 |cat >>/etc/mtab; echo "osgce:/home /home nfs rw,hard,bg,rsize=32768,wsize=32768,udp,nfsvers=3"|cat >>/etc/fstab; echo "osgce:/opt/osg-1.0.0 /OSG nfs rw,hard,bg,rsize=32768,wsize=32768,udp,nfsvers=3"| cat>>/etc/fstab; echo "acs:/hdacs /hdacs nfs rw,hard,bg,noauto,rsize=32768,wsize=32768,udp,nfsvers=3"|cat >>/etc/fstab; #criando pontos de montagem mkdir /OSG chkconfig ntpd on; echo ypserver 192.168.1.150|cat>>/etc/yp.conf; chkconfig ypbind on; service ypbind start; #mkdir /usr/local/opt; #ln -s /OSG /usr/local/opt/OSG; ln -s /OSG /opt/osg-1.0.0; mkdir /scratch/condor; mkdir /scratch/OSG; #configurando para o condor #useradd -d /scratch/condor -u 521 condor; chmod a+rw /scratch/OSG; chown condor:condor /scratch/condor; #ln -s /usr/local/opt/OSG/condor/etc/condor_config /scratch/condor/condor_config; cd /scratch/condor; touch condor_config.local; mkdir execute log spool; chown condor condor_config.local execute log spool; chkconfig --add condor; #instalando o gmond let RANK=NNAME-FNODE; echo location \"'$RACK','$RANK',0\"| cat >>/etc/gmond.conf; groupadd -g 104 ganglia; useradd -d /var/lib/ganglia -s /bin/false -g ganglia -u 107 ganglia ; rpm -ivh $TEMP/ganglia-monitor-core-gmond-2.5.7-1.x86_64.rpm; #Para o tmpwatch echo 'for d in /scratch/OSG/*; do' >>/etc/cron.daily/tmpwatch echo ' if [ -d "$d" ]; then' >> /etc/cron.daily/tmpwatch echo ' /usr/sbin/tmpwatch -f 192 \"$d\"' >>/etc/cron.daily/tmpwatch echo ' fi' >>/etc/cron.daily/tmpwatch echo 'done' >>/etc/cron.daily/tmpwatch #comecando a instalacao do worker node client cd $TEMP/pacman-3.26 source setup.sh mkdir /opt/OSG-wn-client cd /opt/OSG-wn-client VDTSETUP_AGREE_TO_LICENSES=y export VDTSETUP_AGREE_TO_LICENSES VDTSETUP_INSTALL_CERTS=l export VDTSETUP_INSTALL_CERTS VDTSETUP_EDG_CRL_UPDATE=n export VDTSETUP_EDG_CRL_UPDATE VDTSETUP_ENABLE_ROTATE=y export VDTSETUP_ENABLE_ROTATE VDTSETUP_CA_CERT_UPDATER=n export VDTSETUP_CA_CERT_UPDATER pacman -trust-all-caches -get OSG:wn-client #comecando a instalacao do glexec mkdir /opt/glexec cd /opt/glexec pacman -trust-all-caches -get http://vdt.cs.wisc.edu/vdt_181_cache:Glexec sed -i 's/yourmachine.yourdomain/osg-ce.sprace.org.br/g' /etc/glexec/contrib/gums_interface/getmapping.cfg source setup.sh vdt-control --on mkdir /opt/glexec/glite/etc # lembrar de montar o /OSG mount -t nfs 192.168.1.150:/opt/osg-1.0.0 /OSG mkdir /etc/grid-security;ln -s /OSG/globus/share/certificates /etc/grid-security/certificates cp /OSG/glite/etc/vomses /opt/glexec/glite/etc/. cd /; umount $TEMP rm -rf $TEMP;Reinicie a máquina após isso.
mkdir /opt/condor-x86_64 tar -xvzf condor-7.0.5-linux-x86_64-rhel5-dynamic.tar.gz cd condor-7.0.5 ./condor_configure --install --maybe-daemon-owner --install-log /opt/condor-x86_64/post_install --install-dir /opt/condor-x86_64 cp /OSG/condor/etc/condor_config /opt/condor-x86_64/etc/condor_config vim /opt/condor-x86_64/etc/condor_config CONDOR_LOCATION = /opt/condor-x86_64Somente editando a última linha já é necessário.
Também modifique o arquivo de inicialização do condor /etc/init.d/condor
CONDOR_SBIN=/opt/condor-x86_64
Como queremos somente que os jobs do cmssoft sejam roteados para lá, edite o arquivo local de configuração do condor, /scratch/condor/condor_config.local
START = (Owner == "cmssoft")
Agora partimos para a configuração na osg-ce. Primeiro edite a linha no servidor condor para rotear realmente os jobs do cmssoft para um node 64 bits, editando /OSG/condor/etc/condor_config
APPEND_REQUIREMENTS = ((Disk > 3000000 || machine == "osg-ce.sprace.org.br") && \ (UidDomain == "grid") && \ (machine != "osg-ce.sprace.org.br" || JobUniverse == 12) && (Owner != "cmssoft" || JobUniverse == 12 )) || \ ((Owner == "cmssoft" && JobUniverse != 12 ) && (Arch == "X86_64" && OpSys == "LINUX") && (UidDomain == "grid") )
Como ainda mantemos o gatekeeper 32-bits, existe um script que insere o requerimento exigindo que os jobs que entram sejam executados em nodes nessa arquitetura, o que não queremos no nosso caso, logo comente, em $VDT_LOCATION/globus/lib/perl/Globus/GRAM/JobManager/condor.pm
# $requirements .= " && Arch == \"" . $description->condor_arch() . "\" ";
-- MarcoAndreFerreiraDias - 15 Feb 2009
antalya escort bursa escort eskisehir escort istanbul escort izmir escort