Skip to main content

Floating IPs

A floating IP is a virtual IP address that isn't permanently tied to one node — StorONE moves it between nodes as needed, so clients keep using the same address regardless of which physical node is actually serving it. This is what lets a client connection survive a node failover: the client keeps talking to the same IP, and StorONE points that IP at whichever node is currently able to serve it.

Floating IPs are used for two things:

  • Client connectivity — the address hosts actually connect to for iSCSI, NFS, SMB, or object access, instead of connecting to a node's own fixed IP.
  • Replication pairing — a floating IP can be paired with a floating IP on a remote system, which is how StorONE keeps NAS/object replication targets reachable at a stable address across a failover. See Pairing floating IPs for replication for that side of things; this page covers the mechanics of the floating IP itself.

On Microsoft Azure, client-facing floating IPs work differently: a load-balancer VM provides the fixed address, and it's configured from the VM's user data rather than with these commands. See Deploying StorONE on Microsoft Azure.

Because a floating IP can run on any node in the cluster, it needs to know which network interface to use on each node it might land on — that's why creating or editing one asks for a node-to-interface mapping rather than a single interface name.

Creating a floating IP

Using the web interface

  1. Open Inventory > Floating IPs.
  2. Click Create.
  3. Under Name, enter a name for the floating IP.
  4. Under IP Address, enter the Address, Mask, and, if needed, a Gateway.
  5. Under Interfaces per Node, add one row per node the floating IP might run on, choosing the network interface to use on that node.
  6. Confirm to create the floating IP.

Using the CLI

floatingips create <name> --address=<ip> --mask=<subnet> [--gateway=<ip>] --nodes=<text...> --interfaces=<text...>
Option Description
<name> The name for the new floating IP.
--address=<ip> The IP address of the floating IP.
--mask=<subnet> The subnet mask of the floating IP.
--gateway=<ip> The gateway of the floating IP.
--nodes=<text...> The nodes to host the floating IP on, paired positionally with --interfaces.
--interfaces=<text...> The network interface on each corresponding node, paired positionally with --nodes.

Examples

Create a floating IP on a two-node cluster, using eth0 on both nodes:

floatingips create clients-vip --address 10.10.20.50 --mask 255.255.255.0 --gateway 10.10.20.1 --nodes s1-node-01,s1-node-02 --interfaces eth0,eth0

Create one where the two nodes use different interface names:

floatingips create clients-vip --address 10.10.20.50 --mask 255.255.255.0 --nodes s1-node-01,s1-node-02 --interfaces eth0,eth1

Editing a floating IP

You can rename a floating IP, change its address/mask/gateway, or update its node-to-interface mapping. One exception: if this floating IP is the inactive side of a replication pair (a "stub" waiting to be activated — see Pairing floating IPs for replication), you can't change its address or mask directly here — make that change on the active side instead.

Using the web interface

  1. Open Inventory > Floating IPs, select the floating IP, and click Edit.
  2. Under Parameters, update the name, address, mask, and/or gateway as needed.
  3. Under Interfaces Per Node, update the node-to-interface mapping if needed.
  4. Confirm the change.

Using the CLI

floatingips edit <name> [--newname=<name>] [--address=<ip> --mask=<subnet> --gateway=<ip> --nodes=<text...> --interfaces=<text...>]
Option Description
<name> The name of the floating IP to edit.
--newname=<name> The new name for the floating IP.
--address=<ip> The new IP address for the floating IP.
--mask=<subnet> The new subnet mask for the floating IP.
--gateway=<ip> The new gateway for the floating IP.
--nodes=<text...> The nodes to host the floating IP on, paired positionally with --interfaces.
--interfaces=<text...> The network interface on each corresponding node, paired positionally with --nodes.

Examples

Rename clients-vip to nfs-vip:

floatingips edit clients-vip --newname nfs-vip

Change the address:

floatingips edit nfs-vip --address 10.10.20.60 --mask 255.255.255.0

Listing floating IPs

Using the web interface

Open Inventory > Floating IPs. Use the toolbar's filtering options to search by name or IP address.

Using the CLI

floatingips list [<name>] [--ip=<ip>]
Option Description
<name> Filter by floating IP name.
--ip=<ip> Filter by IP address.

Examples

List every floating IP:

floatingips list

Find the floating IP with a specific address:

floatingips list --ip 10.10.20.50

Deleting a floating IP

Using the web interface

  1. Open Inventory > Floating IPs, select the floating IP, and click Delete.
  2. Confirm the deletion.

Using the CLI

floatingips delete <name> [--force]
Option Description
<name> The floating IP to delete.
--force Skip the confirmation prompt.

Examples

Delete nfs-vip:

floatingips delete nfs-vip

Delete without a confirmation prompt:

floatingips delete nfs-vip --force

Next: Pairing floating IPs for replication — pairing, unpairing, and activating floating IPs across systems.