ASM autostart

  • Last Updated 3/31/2023, 12:34:01 PM UTC
  • About 3 min read

Plugin info

name: ora-asm-start

Starts oracle ASM instances when down and emits events for the start process result

WARNING: This plugin should not be used on RAC deployments. You should install and use Oracle Restart and its associated utilities.

# Prerequisites

  • Linux
    • User Groups: oinstall, asmadmin, asmdba
  • Windows
    • Group Memeberships: ORA_ASMADMIN, ORA_ASMDBA

Important, the connection to the database/ASM takes place over BEQ. This means that the process resource limits for myrmex-ad must match those set for the oracle database/ASM processes. Set these limits in the systemd unit file for myrmex-ad and then reload and restart the myrmex-ad service. Refer to https://www.man7.org/linux/man-pages/man5/systemd.exec.5.html#PROCESS_PROPERTIES (opens new window) for the process limit directives and their ulimit equivalents.

# Event Subscriptions

  • myrmex/ora-asm-status/sid/down

# Events

  • myrmex/ora-asm-start/sid/already_running set to 1 when ASM instance was found to be running while attempting to start it
    • Dimensions
      • sid the ASM SID
  • myrmex/ora-asm-start/sid/started set to 1 when ASM instance was successfully started
    • Dimensions:
      • sid the ASM SID
  • myrmex/ora-asm-start/sid/error set ot 1 when ASM instance failed to start
    • Dimensions:
      • sid the ASM SID
  • myrmex/plugins/error/plugin/msg set to error message on plugin execution failure
    • Dimensions
      • plugin the name of the plugin that failed

# Configuration

Plugin is configured with a yaml file:

  • instances: list of databases start confs that this plugin can start
    • source: the value that will appear as the source of metrics generated by this configuration. defaults to plugin hostname
    • oracle_home: path to ASM sid ORACLE_HOME
    • sid: the ASM SID
    • connect_as: (optional) one of sysdba, sysoper, sysasm. Default is sysdba
    • skip_wait_css: skip waiting for Cluster Synchronization Service to availble. default is false
    • css_wait_timeout: how long to wait for Cluster Synchronization Service to become available. optional default is 10m. format is \d+(s|m|h)

# Example Configuration

# list of databases start confs that this plugin can start
instances:
    # path to oracle_home for this sid
  - oracle_home: 'C:\home\oracle\product\12.1.0\dbhome_1'
    sid: +ASM
    # skip waiting for Cluster Synchronization Service to availble. default is false
    skip_wait_css: false
    # how long to wait for Cluster Synchronization Service to become available. optional default is 10m
    css_wait_timeout: 5m

# Validate Configuration

ora-asm-start  --run-conf /path/to/config/file.yaml --validate

# Testing

Run the plugin from the command line to start an ASM instance

ora-asm-start --run-conf /path/to/config/file.yaml --run-events/path/to/sid/down/events.json

# Example test event file

[
    {
        "namespace": [
            {
                "value": "myrmex"
            },
            {
                "value": "ora-asm-status"
            },
            {
                "name": "sid",
                "value": "+ASM"
            },
            {
                "value": "down"
            }
        ],
        "timestamp": "2019-05-10T18:25:43.511Z",
        "data": 1
    }
]

# List events emmited by this plugin

ora-asm-start --events
Last Updated: 3/31/2023, 12:34:01 PM