AI Install Server Creation

AI Install Server Creation

Install the Oracle server with Solaris 11.4 (or another version?)

Set hostname & IP address of your choice. (example – ai-svr 192.200.8.146)

Pick a location on the server where the media will be installed, this needs to be a reasonable size! (this should be on its own ZFS filesystem if possible)

For example; zpool create IPS raidz “list disks here”

Download a FULL repo & installation guide from oracle cloud…..

https://www.oracle.com/uk/solaris/solaris11/downloads/solaris-downloads.html

Install full repo as per installation guide downloaded .

Download the latest Solaris SRU from Oracle (optional?)

Download the installation file from Oracle

Copy all these files to a directory on the new ai-server!

unzip the installation guide, here you find the installation script “install-repo.ksh”

create the REPO directory structure.

pkgrepo create /IPS/Solaris11_4/publisher/solaris

use this to create the repo

For example; ./install-repo.ksh -c -v -d /IPS/Solaris11_4

Create the infrastructure.

svccfg -s pkg/server add Solaris11_4

svccfg -s pkg/server:Solaris11_4 addpg pkg application

svccfg -s pkg/server:Solaris11_4 setprop pkg/port=84

svccfg -s pkg/server:Solaris11_4 setprop pkg/inst_root=/IPS/Solaris11_4

original server in computer room has this path below……………

/IPS/Solaris11_4/publisher/solaris

svccfg -s application/pkg/server:Solaris11_4 setprop pkg/readonly=true

svccfg -s pkg/server list

svccfg -s pkg/server:Solaris11_4 addpg general framework

svccfg -s pkg/server:Solaris11_4 addpropvalue general/complete astring: Solaris11_4

svccfg -s pkg/server:Solaris11_4 addpropvalue general/enabled boolean: true

svcadm refresh application/pkg/server:Solaris11_4

svcadm enable application/pkg/server:Solaris11_4

svcs -a |grep server

svccfg -s pkg/server:Solaris11_4 listprop

svcadm enable svc:/network/dns/multicast:default

root@ai-svr:/IPS# svcs -a |grep svc:/network/dns/multicast:default

online 12:33:41 svc:/network/dns/multicast:default

create the DHCP range (-c is for how many IP’s you require)

root@ai-svr:/IPS# installadm set-server -i 192.200.8.1 -c 10

Cannot do '-i|--ip-start <dhcp_ip_start> -c|--ip-count

<count_of_ipaddr>' as AI updates to DHCP server configuration are

disabled.

Would you like to also enable DHCP management (-m|--manage-dhcp)? [y|N]: y

Creating DHCP server configuration file

Warning: /etc/inet/dhcpd4.conf is missing nameserver entries. This must be fixed if your install clients will use DNS to resolve hostnames.

Adding DHCP IP range: 192.200.8.1 [10]

Unable to determine a route for network 192.200.8.0. Setting the route temporarily to 0.0.0.0; this should be changed to an appropriate value in the DHCP configuration file. Please see dhcpd(8) for further information.

Warning: AI server will now manage DHCP

Changed Server

Enabling SMF service svc:/network/dhcp/server:ipv4

installadm create-service -n s11_4_sparc -p solaris=http://192.200.8.146:84 -a sparc

OK to use subdir of /export/auto_install to store image? [y|N]: y

0% : Creating service from: pkg:/install-image/solaris-auto-install

0% : Using publisher(s):

0% : solaris: http://192.200.8.146:84/

5% : Refreshing Publisher(s)

15% : Planning Phase

25% : Download Phase

62% : Actions Phase

91% : Finalize Phase

91% : Creating sparc service: s11_4_sparc

91% : Image path: /export/auto_install/s11_4_sparc

91% : Setting "solaris" publisher URL in default manifest to:

91% : http://192.200.8.146:84/

91% : Creating default-sparc alias

91% : Setting "solaris" publisher URL in default manifest to:

91% : http://192.200.8.146:84/

91% : Setting the default SPARC bootfile(s) in the local DHCP configuration to:

91% : http://192.200.8.146:5555/cgi-bin/wanboot-cgi

100% : Created Service s11_4_sparc

100% : Refreshing SMF service svc:/system/install/server:default

100% : Restarting SMF service svc:/network/dhcp/server:ipv4

pkg set-publisher -P -g http://192.200.8.146:84 solaris

root@ai-svr:/etc/inet# pkg publisher

PUBLISHER TYPE STATUS P LOCATION

solaris origin online F http://192.200.8.146:84/

solaris origin online F http://pkg.oracle.com/solaris/release/

root@ai-svr:/etc/inet# pkg unset-publisher solaris

Updating package cache 1/1

Create manifests & profiles…..

create (using ai-wizard) or copy (from original ai server - remember to change the Solaris version number and publisher!) manifests & profiles to /export/manifests & /export/profiles directories)

use the create-manifest to associate the manifest (this must be done on all new manifests or the system will not see the manifest!)

installadm create-manifest -n s11_4_sparc -f ./sparc_mirror_disk_11_4.xml -m sparc_mirror_disk_11_4 (use this if you are in the “/export/manifests” directory, otherwise path it “-f /export/manifests”)

(Create Manifest sparc_mirror_disk_11_4)

add the manifest to the Solaris service.....

installadm set-service -M sparc_mirror_disk_11_4 -n s11_4_sparc

(Changed Service s11_4_sparc)

root@ai-svr:/export/manifests# installadm list -mcp

There are no clients configured for local services.

Service Name Manifest Name Type Status Criteria

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

default-sparc orig_default derived default none

s11_4_sparc sparc_mirror_disk_11_4 xml default none

orig_default derived inactive none

There are no profiles configured for local services.

Add the client details……

installadm create-client -e 0:21:28:b0:87:d4 -n s11_4_sparc

Add the profile.....

installadm create-profile -f /export/profiles/host1_profile.xml -n s11_4_sparc -c mac=0:21:28:b0:87:d4

(Created Profile host1_profile.xml)

*Additional information *

Oracle pkg server; there is a legacy server for Solaris 11.3, this will give you access to base REPO’s.

pkg set-publisher -P -g http://pkg.oracle.com/solaris/legacy/release/ solaris

root@ai-svr:/export/manifests# pkg publisher

PUBLISHER TYPE STATUS P LOCATION

solaris origin online F http://192.200.8.146:83/

solaris origin online F http://pkg.oracle.com/solaris/legacy/release/

you can use this publisher to update your installation server REPO ( obviously a network connection will be required and DNS will need to be configured – see how to at the end of this document

PLEASE NOTE………….

There is a bug and the following command will fail if the locale is not set accordingly, set this before you run the “pkgrecv” command below (maybe this is for 11.3 only?)

export LC_ALL=en_US.UTF_8

pkgrecv -r -s http://pkg.oracle.com/solaris/legacy/release/ -d /IPS/Solaris11_3 0.5.11-0.175.3 "*"

rebuild REPO and restart service

pkgrepo rebuild -s /IPS/Solaris11_3

svcadm restart application/pkg/server:default

You can check your local REPO (change the IP address and port number accordingly)

root@ai-svr:~# pkgrepo list -s http://192.200.8.146:83 |grep entire

solaris entire 0.5.11-0.175.3.35.0.6.0:20180810T152259Z

solaris entire 0.5.11-0.175.3.1.0.5.2:20170605T210005Z

solaris entire 0.5.11-0.175.3.1.0.5.1:20170105T000952Z

solaris entire 0.5.11-0.175.3.1.0.5.0:20151006T140051Z

solaris entire 0.5.11-0.175.2.1.0.2.1:20140923T224940Z

solaris entire 0.5.11-0.175.2.1.0.2.0:20140723T184046Z

solaris entire 0.5.11-0.175.2.0.0.42.0:20140624T193832Z

solaris entire 0.5.11-0.175.1.0.0.24.2:20120919T190135Z

solaris entire 0.5.11-0.175.0.10.1.0.0:20120918T160900Z

solaris entire 0.5.11-0.175.0.0.0.2.0:20111020T143822Z

solaris entire 0.5.11-0.151.0.1:20101105T054056Z

Now add the latest 11.3 repo 11_3_35_6_0 and rebuild the repo to ensure the repo works correctly!

To clone a REPO

Create the new REPO directory structure

pkgrepo create /IPS/Solaris11_3_v2/publisher/solaris

set locale (this is a fix /workaround as it will fail the “pkgrecv”

(ensure that the locale is one that supports UTF-8/C codeset)

export LC_ALL=en_US.UTF_8

clone REPO

pkgrecv -s /IPS/Solaris11_3 -d /IPS/Solaris11_3_v2 --clone -p '*'

Processing packages for publisher solaris ... /IPS/Solaris11_3_v2 --clone -p '*'

Retrieving and evaluating 24576 package(s)...

Committing Manifests \

This will take some time, this is an extract below!

system/data/terminfo 21513/24576 3119526/3490660 60944/69258 682k system/data/terminfo 21513/24576 3119526/3490660 60944/69258 684k system/data/terminfo 21513/24576 3119526/3490660 60944/69258 684k system/data/terminfo 21513/24576 3119526/3490660 60944/69258 672k system/data/terminfo 21513/24576 3119526/3490660 60944/69258 671k system/data/terminfo 21514/24576 3119526/3490660 60944/69258 668k SUNWfppd 21514/24576 3119526/3490660 60944/69258 668k SUNWfppd 21515/24576 3119526/3490660 60944/69258 668k library/python/amqp-27 21515/24576 3119526/3490660 60944/69258 668k library/python/amqp-27 21515/24576 3119526/3490660 60944/69258 662k library/python/amqp-27 21515/24576 3119559/3490660 60944/69258 349k library/python/amqp-27 21516/24576 3119559/3490660 60944/69258 298k ...c-reconfiguration/sun-fire-880 21516/24576 3119559/3490660 60944/69258 298k ...c-reconfiguration/sun-fire-880 21517/24576 3119563/3490660 60944/69258 276k library/python/networkx-27 21517/24576 3119563/3490660 60944/69258 276k gnome/applet/gnome-applets 24576/24576 3490660/3490660 69258/69258 2.7M/s

Verifying repository contents.

Initiating repository verification.

Scanning repository (this could take some time) 0/24577 /

root@ai-svr:/# pkgrepo list -s /IPS/Solaris11_3_v2 |grep entire

solaris entire 0.5.11-0.175.3.35.0.6.0:20180810T152259Z

solaris entire 0.5.11-0.175.3.1.0.5.2:20170605T210005Z

solaris entire 0.5.11-0.175.3.1.0.5.1:20170105T000952Z

solaris entire 0.5.11-0.175.3.1.0.5.0:20151006T140051Z

solaris entire 0.5.11-0.175.2.1.0.2.1:20140923T224940Z

solaris entire 0.5.11-0.175.2.1.0.2.0:20140723T184046Z

solaris entire 0.5.11-0.175.2.0.0.42.0:20140624T193832Z

solaris entire 0.5.11-0.175.1.0.0.24.2:20120919T190135Z

solaris entire 0.5.11-0.175.0.10.1.0.0:20120918T160900Z

solaris entire 0.5.11-0.175.0.0.0.2.0:20111020T143822Z

solaris entire 0.5.11-0.151.0.1:20101105T054056Z

root@ai-svr:/#

Configure DNS manually

svccfg -s network/dns/client

svc:/network/dns/client> setprop config/search = astring: hamilton.co.uk

svc:/network/dns/client> setprop config/nameserver = net_address: 8.8.8.8

svc:/network/dns/client> select network/dns/client:default

svc:/network/dns/client:default> refresh

svc:/network/dns/client:default> validate

svc:/network/dns/client:default> select name-service/switch

svc:/system/name-service/switch> setprop config/host = astring: "files dns"

svc:/system/name-service/switch> select system/name-service/switch:default

svc:/system/name-service/switch:default> refresh

svc:/system/name-service/switch:default> validate

svc:/system/name-service/switch:default> quit

svcadm enable dns/client

svcadm enable name-service/switch

$ nslookup

> www.oracle.com