Quantcast
Channel: Mandalika's scratchpad
Viewing all articles
Browse latest Browse all 115

Solaris 11.2 Highlights [Part 2] in 4 Minutes or Less

$
0
0

Part 1: Solaris 11.2 Highlights in 6 Minutes or Less

Highlights contd.,

Package related ..

Minimal Set of System Packages

For the past few years, it is one of the hot topics -- what is the bare minimum [set of packages] needed to run applications. There were a number of blog posts and few technical articles around creating minimal Solaris configurations. Finally users/customers who wish to have their OS installed with minimal set of required system packages for running most of the applications in general, can just install solaris-minimal-server package and not worry about anything else such as removing unwanted packages.


# pkg install pkg:/group/system/solaris-minimal-server

Oracle Database Pre-requisite Package

Until Solaris 11.1, it is up to the users to check the package dependencies and make sure to have those installed before attempting to install Oracle database software especially using graphic installer. Solaris 11.2 frees up the users from the burden of checking and installing individual [required] packages by providing a brand new package called oracle-rdbms-server-12cR1-preinstall. Users just need to install this package for a smoother database software installation later.


# pkg install pkg:/group/prerequisite/oracle/oracle-rdbms-server-12cR1-preinstall

Mirroring a Package Repository

11.2 provides the ability to create local IPS package repositories and keeps them in synch with the IPS package repositories hosted publicly by Oracle Corporation. The key in achieving this is the SMF service svc:/application/pkg/mirror. The following webpage has the essential steps listed on a high-level.

How to Automatically Copy a Repository From the Internet

Another enhancement is the cloning of a package repository using --clone option of pkgrecv command.

Observability related ..

Network traffic diagnostics:

A brand new command, ipstat(1M), reports IP traffic statistics.


# ipstat -?
Usage: ipstat [-cmnrt] [-a address[,address...]] [-A address[,address...]]
[-d d|u] [-i interface[,interface...]] [-l nlines] [-p protocol[,protocol...]]
[-s key | -S key] [-u R|K|M|G|T|P] [-x opt[=val][,opt[=val]...]]

# ipstat -uM 5

SOURCE DEST PROTO INT BYTES
etc5mdbadm01.us.oracle.com etc2m-appadm01.us.oracle.c TCP net8 76.3M
etc2m-appadm01.us.oracle.c etc5mdbadm01.us.oracle.com TCP net8 0.6M
dns1.us.oracle.com etc2m-appadm01.us.oracle.c UDP net8 0.0M
169.254.182.76 169.254.182.77 UDP net20 0.0M
...

Total: bytes in: 76.3M bytes out: 0.6M

Another new command, tcpstat(1M), reports TCP and UDP traffic statistics.


# tcpstat -?
Usage: tcpstat [-cmnrt] [-a address[,...]] [-A address[,...]] [-d d|u] [-i pid[,...]]
[-l nlines] [-p port[,...]] [-P port[,...]] [-s key | -S key] [-x opt[=val][,...]]
[-z zonename[,...]] [interval [count]]

# tcpstat 5

ZONE PID PROTO SADDR SPORT DADDR DPORT BYTES
global 1267 TCP etc5mdbadm01.us. 42972 etc2m-appadm01.u 22 84.3M
global 1267 TCP etc2m-appadm01.u 22 etc5mdbadm01.us. 42972 48.0K
global 1089 UDP 169.254.182.76 161 169.254.182.77 33436 137.0
global 1089 UDP 169.254.182.77 33436 169.254.182.76 161 44.0
...
...

Total: bytes in: 84.3M bytes out: 48.4K

# tcpstat -i 43982 5 <-- TCP stats for a given pid

ZONE PID PROTO SADDR SPORT DADDR DPORT BYTES
global 43982 TCP etc2m-appadm01.u 43524 etc5mdbadm02.us. 22 73.7M
global 43982 TCP etc5mdbadm02.us. 22 etc2m-appadm01.u 43524 41.9K

Total: bytes in: 42.1K bytes out: 73.7M

Up until 11.1, it is not so straight-forward to figure out what process created a network endpoint -- one has to rely on a combination of commands such as netstat, pfiles or lsof and proc filesystem (/proc) to extract that information. Solaris 11.2 attempts to make it easy by enhancing the existing tool netstat(1M). Enhanced netstat(1M) shows what user, pid created and control a network endpoint. -u is the magic flag.


# netstat -aun <-- notice the -u flag in netstat command; and User, Pid, Command columns in the output

UDP: IPv4
Local Address Remote Address User Pid Command State
-------------------- -------------------- -------- ------ -------------- ----------
*.* root 162 in.mpathd Unbound
*.* netadm 765 nwamd Unbound
*.55388 root 805 picld Idle
...
...

TCP: IPv4
Local Address Remote Address User Pid Command Swind Send-Q Rwind Recv-Q State
-------------------- -------------------- -------- ------ ------------- ------- ------ ------- ------ -----------
10.129.101.1.22 10.129.158.100.38096 root 1267 sshd 128872 0 128872 0 ESTABLISHED
192.168.28.2.49540 192.168.28.1.3260 root 0 2094176 0 1177974 0 ESTABLISHED
127.0.0.1.49118 *.* root 2943 nmz 0 0 1048576 0 LISTEN
127.0.0.1.1008 *.* pkg5srv 16012 httpd.worker 0 0 1048576 0 LISTEN
...

[x86 only] Memory Access Locality Characterization and Analysis

Solaris 11.2 introduced another brand new tool, numatop(1M), that helps in characterizing the NUMA behavior of processes and threads on systems with Intel Westmere, Sandy Bridge and Ivy Bridge processors. If not installed by default, install the numatop package as shown below.


# pkg install pkg:/diagnostic/numatop

Performance related ..

This is a grey area - so, just be informed that there are some ZFS and Oracle database related performance enhancements.

Starting with 11.2, ZFS synchronous write transactions are committed in parallel, which should help improve the I/O throughput.

Database startup time has been greatly improved in Solaris 11 releases -- it's been further improved in 11.2. Customers with databases that use hundreds of Gigabytes or Terabyte(s) of memory will notice the improvement to the database startup times. Other changes to asynchronous I/O, inter-process communication using event ports etc., help improve the performance of the recent releases of Oracle database such as 12c.

Miscellaneous ..

Java 8

Java 7 is still the default in Solaris 11.2 release, but Java 8 can be installed from the IPS package repository.

eg.,


# pkg install pkg:/developer/java/jdk-8 <-- Java Development Kit
# pkg install pkg:/runtime/java/jre-8 <-- Java Runtime

Bootable USB Media

Solaris 11.2 introduces the support for booting SPARC systems from USB media. Use Solaris Distribution Constructor (requires distribution-constructor package) to create the USB bootable media, or copy a bootable/installation image to the USB media using usbcopy(1M) and dd(1M) commands.

Oracle Hardware Management Pack

Oracle Hardware Management Pack is a set of tools that are integrated into the Solaris OS distribution, that show the existing hardware configuration, help configure hardware RAID volumes, update server firmware, configure ILOM service processor, enable monitoring the hardware using existing tools etc., Look for pkg:/system/management/hmp/hmp-* packages.

Few other interesting packages:

Parallel implementation of bzip2 : compress/pbzip2
NVM Express (nvme) utility : system/storage/nvme-utilities
Utility to administer cluster of servers : terminal/cssh


Viewing all articles
Browse latest Browse all 115