Skip to main content

Pure Storage FlashArray (Purity//FA REST)

v0.1.5

Read-only access to a Pure Storage FlashArray over its Purity//FA REST API 2.x: array identity / capacity / performance, alerts, controller and hardware / drive health, volumes and per-volume space, the host -> volume -> LUN connection map, host and target-port identities, per-controller network interface state, and replication / array-connection status. Drives a remote array via curl; every call is a GET.

14 allowed by default
Pack ID
pure-flasharray
Vendor
emisar
OS
linux
Actions
14
Required binaries. Install these on the host before relying on the pack — an action that calls a missing one fails at run time.
curl

Install

emisar pack install fetches this pack, re-validates it, and verifies its content hash against the --hash below — the exact bytes this page was rendered against, so a tampered copy is rejected — before copying it into the runner's packs dir. The command reloads a running daemon itself; no manual restart.

on the runner host
sudo emisar pack install pure-flasharray --hash sha256:a5388eae64f2736976e00dec10a9d5d5f645f0517f2a54a9a60b6f001150b686

Actions 14 total

View on GitHub
  • pure.alerts script low

    GET /alerts

    List open (unresolved) array alerts, filtered to state='open' — each with its severity (info / warning / critical), component, and summary. Use to answer "what is the array complaining about right now?". Returns {items:[...], more_items_remaining, ...}, one item per open alert.

    View source on GitHub
  • pure.array_connections script low

    GET /array-connections

    List connected-array / replication status — each peer array this array is connected to, the connection type (async / sync replication), and its status. Use to confirm replication peers are connected and healthy. Returns {items:[...], more_items_remaining, ...}, one item per connected array.

    View source on GitHub
  • pure.arrays script low

    GET /arrays

    Show array identity and top-line health — array name, id, Purity//FA OS version, and the headline capacity fields. The starting point for "which array is this and is it healthy?". Returns {items:[...], more_items_remaining, ...}; one item per array.

    View source on GitHub
  • pure.arrays_performance script low

    GET /arrays/performance

    Show array-wide performance — the latest sample of read/write/mirrored latency, IOPS, and bandwidth. Use to answer "is the array slow right now?". Returns {items:[...], more_items_remaining, ...}; the single item is the most recent real-time sample for the array.

    View source on GitHub
  • pure.arrays_space script low

    GET /arrays/space

    Show array-wide space accounting — total and used capacity, plus the data reduction and thin-provisioning ratios behind it. Use to answer "how full is the array and what is the effective reduction?". Returns {items:[...], more_items_remaining, ...} with a space breakdown per array.

    View source on GitHub
  • pure.connections script low

    GET /connections

    Show the host -> volume -> LUN map: every connection between a host (or host group) and a volume, with the LUN the volume is presented at. This is the authoritative answer to "which host sees which volume, at which LUN?" — the first stop for any "my server can't see its LUN" or "is this volume even mapped?" question. Returns {items:[...], more_items_remaining, ...}, one item per host/volume connection; can be large on a busy array.

    View source on GitHub
  • pure.controllers script low

    GET /controllers

    List the array's controllers — for each, its mode (primary / secondary), model, running Purity//FA version, and status. Use to confirm the HA pair is healthy and which controller is primary. Returns {items:[...], more_items_remaining, ...}, one item per controller.

    View source on GitHub
  • pure.drives script low

    GET /drives

    List flash and NVRAM modules — for each drive, its type, capacity, and status (healthy / unhealthy / evacuating / unused). Use to find a failed or evacuating module. Returns {items:[...], more_items_remaining, ...}, one item per drive.

    View source on GitHub
  • pure.hardware script low

    GET /hardware

    Show physical component health — chassis, power supplies, fans, temperature sensors, and other hardware items, each with its status and (where applicable) reading. Use to find a failed PSU/fan or a hot sensor. Returns {items:[...], more_items_remaining, ...}, one item per component.

    View source on GitHub
  • pure.hosts script low

    GET /hosts

    List the host inventory — each host object and the initiator identities registered to it: iSCSI IQNs, Fibre Channel WWNs, and NVMe NQNs. Use to confirm an initiator is registered to the expected host. Returns {items:[...], more_items_remaining, ...}, one item per host.

    View source on GitHub
  • pure.network_interfaces script low

    GET /network-interfaces

    List per-controller network interfaces — each interface's enabled / up-or-down state, speed, address, and the services it carries (management, iSCSI, replication, NVMe-oF). Use this to answer "is the target port up?" before chasing a host-side path problem. Returns {items:[...], more_items_remaining, ...}, one item per interface.

    View source on GitHub
  • pure.ports script low

    GET /ports

    List target-port identities — the array-side iSCSI IQNs, Fibre Channel WWNs, and NVMe NQNs, with iSCSI portal IPs where applicable. Use to learn what addresses a host should be connecting to. Returns {items:[...], more_items_remaining, ...}, one item per target port.

    View source on GitHub
  • pure.volumes script low

    GET /volumes

    List the volume inventory — each volume's name, id, provisioned (virtual) size, and whether it is destroyed / pending eradication. Use to confirm a volume exists and its size. Returns {items:[...], more_items_remaining, ...}, one item per volume; can be large on arrays with many volumes.

    View source on GitHub
  • pure.volumes_space script low

    GET /volumes/space

    Show per-volume space accounting — for each volume, the physical space used by its unique data and by snapshots, plus its data-reduction and total-reduction ratios. Use to find which volumes consume the most capacity. Returns {items:[...], more_items_remaining, ...}, one item per volume.

    View source on GitHub