Friday, December 7, 2007

Solaris Jupmstart Sparc

The Jumpstart mechanism was developed by Sun in order to simplify installations on large networks of mostly similar hardware. The basic idea is that system configuration information is stored on a central server. When new clients are added to the network, the client boots from the central configuration server and then runs an automated install program which partitions the client's disk(s), installs the operating system, and makes appropriate local configuration changes (setting network parameters, hostname, etc.). Creating the configuration server requires a fair amount of System Administration expertise.

The Jumpstart process also allows the local administrator to create custom scripts that are run either before ("pre-install") or after ("post-install") the Jumpstart process (or both). This allows sites to create even more finely customized install routines for their particular site.

Jumpstart provides for unattended installation of Solaris machines. Supports multiple OS releases. Supports multiple architectures (Sparc and Intel). Supports multiple configurations for hosts based on a variety of criteria.

JumpStart Server

  • Boot Server - Uses RARP and bootp or DHCP to set the basic network parameters. Uses tftp to load a boot kernel to perform the more complex task of mounting the appropriate directories used to install the Solaris packages. Boot server must exist on same network as client.
  • Install Server - Contains Solaris packages, copied from the Solaris installation DVD, to be installed. Contains a Solaris miniroot the client mounts via NFS. The OS install is performed while running from this miniroot. Multiple Install servers can be used to distribute the load.
  • Configuration Server - Contains site-specific information used for a custom jumpstart installation. sysidcfg file used to set basic network configuration; this is needed to perform an unattended install. A different sysidcfg file is needed for each architecture and OS release. Typically only have a single Configuration server for administrative ease. Load is rarely a factor. ( sysidcfg, rules.ok, class files, pre-install and post-install files share via NFS mount.)

JumpStart Configure

Easy to configuration All in one server

1. # mkdir /export/install

2. # mkdir /export/config

3. # cd /cdrom/cdrom0/Solaris_10/Misc/jumpstart_sample

4. # cp -r * /export/config

5. # cd /cdrom/cdrom0/Solaris_10/Tools

6. # ./setup_install_server /export/install
# not recommened, but read images from DVD is very slow.

7. # ./setup_install_server -b /export/install
# This case for boot server only

8. # vi /etc/ethers
8:0:20:11:22:33 client1 # one client per one line

9. # vi /etc/hosts
192.168.1.101 client1 # one client per one line

10. # cd /export/config

11. # vi rules
#keyword value [begin_script] [profile] [finish_script]
#keyword value [&& [!] keyword value ] [begin_script] [profile] [finish_script]
#
#hostname client1 - client1_class client1-post
any - - client_class post_script


12. # vi client_class
install_type initial_install
system_type standalone
partitioning explicit
cluster SUNWCXall
filesys c0t0d0s0 1024 /
filesys c0t0d0s1 1024 swap
filesys c0t0d0s3 4096 /usr
filesys c0t0d0s4 1024 /opt
filesys c0t0d0s5 free /export
filesys c0t0d0s7 200 /export/home
filesys c1t1d0s0 all /data

13. # vi post_script
#!/bin/sh
####### password for root #######
PASSWD=
Cb8aoSNHNbIBM # ==> root
cp /a/etc/shadow /a/etc/shadow.orig

nawk -F: '{
if ( $1 == "root" )
printf"%s:%s:%s:%s:%s:%s:%s:%s:%s\n",$1,passwd,$3,$4,$5,$6,$7,$8,$9
else
printf"%s:%s:%s:%s:%s:%s:%s:%s:%s\n",$1,$2,$3,$4,$5,$6,$7,$8,$9
}' passwd="$PASSWD" /a/etc/shadow.orig > /a/etc/shadow

rm -f /a/etc/shadow.orig
sed -e 's/0 # root/1 # root/' ${SI_SYS_STATE} > /tmp/state.$$
mv /tmp/state.$$ ${SI_SYS_STATE}

14. # ./check

15. # echo " share -o ro,anon=0 /export/config " >> /etc/dfs/dfstab

16. # svcadm restart nfs/server #==> or shareall

17. # cd /export/install/Solaris_10/Tools

18. # ./add_install_client -c `uname -n`:/export/config \
-p `uname -n`:/export/config \
-s `uname -n`:/export/install client sun4u

19. # ./add_install_client -c `uname -n`:/export/config \
-p `uname -n`:/export/config \
-s `uname -n`:/export/install client1 sun4u

20. # dfshares server #confirm for /export/install and /export/config are shared

21. # ls /tftpboot # confirm ready for TFTP enable

22. # /export/install/Solaris_10/Tools/rm_install_client client # for remove client

--------------------------------------------------

Client

ok boot net - install

or

ok boot net - install nowin




0 comments: