Solaris discovery

  • Release version: Washingtondc
  • Updated February 1, 2024
  • 5 minutes to read
  • Discovery identifies and classifies information about Solaris computers.

    Note:
    For information on Probe to Pattern migration see the knowledge article KB0694477.

    Supported operating systems

    • Oracle Solaris 10
    • Oracle Solaris 11

    Prerequisites

    Discovery stores data in the [cmdb_running_process] table with truncated command line parameters up to 80 characters. This can cause multiple applications to be merged into one CI. To get the full command line and prevent this issue, run pargs -a and parse the result.

    For Discovery to use patterns to find Solaris computers, you must install SNEEP. Otherwise, Discovery cannot find the serial number.

    If using Solaris zones, each zone should be configured to return a unique value for the serial number. Otherwise, each zone will return the same number causing issues with CI identification.

    Note:
    Solaris discovery only supports local zones installed on the same host as the global zone. If the local zone is installed on a different host from the global zone, the zoneadm list -cip command won't retrieve the UUID for the local zone.

    Solaris - ADM probe requires installing the LSOF command.

    Note:
    See the knowledge article KB0687582 for information on model_id and manufacturer.

    Credentials

    Configure SSH credentials for the systems you want to discover.

    For a list of privileged commands that you need for Discovery and Service Mapping, see Service Mapping commands requiring a privileged user. This list includes commands that require elevated rights to discover and map Unix-based hosts in your organization.

    Classifier, probes, and pattern

    Classifier Probes Pattern
    Solaris

    (UNIX Classification)

    • Horizontal discovery probe: launches patterns
    • Solaris - Installed Software^
    • Solaris - Identity*
    • Solaris - CPU*
    • Solaris - Hardware Model*
    • Solaris - Memory*
    • Solaris - Network ARP Tables*
    • Solaris - OS Patches*
    • Solaris - Storage*
    • Solaris - Zones*
    • Solaris - Disks*
    • DNS*
    Solaris Server

    *For new instances, these probes are inactive on the classifier. Discovery uses patterns for discovery.

    ^This probe remains active by default, even when Discovery uses pattern discovery.

    To use patterns, verify that the correct pattern is specified in the horizontal pattern probe on the classifier. See Add the Horizontal Pattern probe to a classifier for instructions.

    Data collected

    Label Table name Field name Source
    Operating System cmdb_ci_computer os uname
    Short description cmdb_ci_solaris_server short_description uname
    Name cmdb_ci_solaris_server name DNS, NBT
    Hostname cmdb_ci_solaris_server host_name DNS, NBT
    DNS domain cmdb_ci_solaris_server dns_domain DNS
    Start date cmdb_ci_solaris_server start_date uptime
    CPU type cmdb_ci_computer cpu_type kstat
    CPU speed (MHz) cmdb_ci_computer cpu_speed kstat
    CPU count cmdb_ci_computer cpu_count kstat
    CPU core count cmdb_ci_computer cpu_core_count kstat
    CPU core thread cmdb_ci_computer cpu_core_thread kstat
    Model number cmdb_ci_solaris_server model_number suntype
    Model ID cmdb_ci_solaris_server model_id suntype
    RAM (MB) cmdb_ci_computer ram prtconf
    Disk space (GB) cmdb_ci_solaris_server disk_space iostat
    Serial Number cmdb_ci_solaris_server serial_number sneep *
    Manufacturer cmdb_ci_disk manufacturer iostat
    Model ID cmdb_ci_disk model_id iostat
    Volume serial number cmdb_ci_disk volume_serial_number iostat
    Disk space (GB) cmdb_ci_disk disk_space iostat
    Name cmdb_ci_disk name iostat
    Name cmdb_ci_file_system name df
    Capacity (MB) cmdb_ci_file_system capacity df
    Available Space (MB) cmdb_ci_file_system available_space df
    Mount point cmdb_ci_file_system mount_point df
    Name cmdb_ci_patches name showrev
    Name cmdb_running_process name ps
    Command cmdb_running_process command ps
    Connects to cmdb_running_process connects_to lsof
    Listening on cmdb_running_process listening_on lsof
    Type cmdb_running_process type ps
    PID cmdb_running_process pid ps
    Parameters cmdb_running_process parameters ps
    Name cmdb_ci_network_adapter name ifconfig
    IP address cmdb_ci_network_adapter ip_address ifconfig
    MAC address cmdb_ci_network_adapter mac_address ifconfig
    Netmask cmdb_ci_network_adapter netmask ifconfig
    Default gateway cmdb_ci_hardware default_gateway netstat
    * To discover Fujitsu PRIMEPOWER devices, you must install Oracle SNEEP and run Solaris discovery with root credentials.

    Solaris zone discovery

    Discovery maps the relationships between global and local Solaris zones upon detection.

    In the following example, a Solaris global zone contains two local zones: zone01 and zone02. Each local zone is represented by a physical Solaris CI record and a Virtual Machine Instance record. Each of the local zones is tied to a Zone Server, demonstrating how virtualization relates to the global zone (mmp1).

    Figure 1. Solaris zone relationship map
    Solaris zone relationship map

    The TCP connection and process information for local zone servers must be collected by running commands on their parent global zone. The relationship path between the local and global zone physical machines must be established before TCP connection and process information for local zone servers can be collected.

    Case 1: Global zone discovered first.
    • The system creates the Solaris server CI for the global zone.
    • Discovery detects the local zones, creates a hypervisor zone server record, and creates a virtual machine instance record for each Solaris device in the local zone.
    • Discovery creates the relationship between the hypervisor record and the VM instance record.
    Case 2: Local zone discovered first.
    • The system creates the Solaris server CI for the local zone.
    • Discovery sets the correlation ID, so that it can be reconciled during later global zone discoveries.
    Case 3: Global zone discovered after creation of local zone Solaris server CIs.
    • Global zone Discovery detects local zones.
    • Discovery creates a hypervisor zone server record, and creates a virtual machine instance record for each Solaris device in the local zone.
    • Discovery creates the relationship between the hypervisor record and the VM instance record. In addition, it creates the relationship between the physical local zone VM and its virtual machine instance record.
    • The global zone runs the Solaris - ADM probe on itself, filtering by the local zone, and updates the physical local zone VMs with this data.

    Case 4: The relationship path between physical local and global zone machines is established.

    Subsequent discoveries of the global zone refresh the TCP connection and process information for the contained local zones.

    When the system discovers a global zone, the Solaris - Zones & ADM Launcher probe triggers the Solaris - ADM probe to explore the global zone and each local zone found. Because the Solaris - ADM probe must run on the global zone to detect TCP connection and process information from its local zones, you might see multiple ECC queue records that appear identical.

    Figure 2. ECC queue entries for a zone Discovery
    ECC queue entries for a zone Discovery

    Upon examining the payload, however, you will see that each probe is actually targeting a different zone CI to filter on and update.

    Figure 3. Local zone payload
    Local zone payload
    Table 1. Data collected on Solaris zones
    Label Table Name Field Name Source
    Version cmdb_ci_vm_zones version zoneadm, zonename
    Correlation ID cmdb_ci_vm_zones correlation_id zoneadm, zonename
    Name cmdb_ci_solaris_instance name zoneadm, zonename
    Parent cmdb_ci_solaris_instance parent Internal
    CMDB CI cmdb_ci_solaris_instance cmdb_ci Internal
    Correlation ID cmdb_ci_solaris_instance correlation_id zoneadm, zonename
    Note:
    cmdb_ci_solaris_instance extends cmdb_ci_vm_instance.