Skip to main content

Floating IPs

A floating IP is an IP address that can be dynamically assigned to different servers or nodes in a network, similar to virtual IPs in other HA systems. It can be used to provide high availability and fail-over capabilities between multiple nodes.

In the S1 system, two controller nodes work together to provide storage services to clients. These nodes typically share access to the same physical storage resources, such as disk enclosures. By using a floating IP, clients can connect to the storage appliance through a single IP address, regardless of which node is currently serving their requests.

In the event of a failure or maintenance event on one of the nodes, the floating IP can be reassigned to another node that is still operational. This allows clients to continue accessing the storage services without interruption.

Listing floating IPs

To see existing floating IPs, use the floatingips list command.

Usage:

floatingips list [<name>] [--ip=<ip>] 

Options:

Options and arguments Description
<name> Display a specific floating IP.
--ip=<ip> Display a specific IP address.

Examples:

  1. To list all floating IP addresses in S1 system, run

    floatingips list 
  2. To display floating IP details for a floating IP named Xf11, run

    floatingips list Xf11
  3. To display floating IP details for floating IP address 192.168.20.11, run

    floatingips list --ip 192.168.20.11
  4. To display floating IP details for floating IP name Xf11 and IP address 192.168.20.11, run

    floatingip list Xf11 --ip 192.168.20.11

Creating a floating IP

To create a floating IP, use the floatingips create command

Usage:

floatingips create <name> (--dummy)|(--address=<ip> --mask=<subnet> [--gateway=<ip>]) --nodes=<s1_nodes> --interfaces=<interfaces>

Options:

Options and arguments Description
<name> The name of the floating IP.
--dummy To create a dummy floating IP, primarily used for replication transitions purposes.
--address=<ip> The IP address to use for the floating IP.
--mask=<subnet> The subnet mask for the floating IP.
--gateway=<ip> The gateway IP address for the floating IP.
--nodes=<S1_nodes> The names of the S1 nodes that will use the floating IP. These are positional arguments. The order of the specified nodes corresponds to the order of the interfaces.
--interfaces=<interfaces> The network interface card (NIC) names. Replace <interfaces> with the names of the NICs that the floating IP will use in each node. You can use the TAB auto-complete to display the available interfaces. These are positional arguments. The order of the specified interfaces corresponds to the order of the specified nodes.

Examples:

  1. To create a floating IP name Xf11 on address 192.168.20.111 with mask 255.255.255.0 and gateway 192.168.20.1 on nodes s1-6020 with interface so6c and node s1-6021 with interface so91, run

    floatingips create Xf11 --address 192.168.20.111 --mask 255.255.255.0 --gateway 192.168.20.1 --nodes s1-6020 s1-6021 --interfaces so6c so91
  2. To create a dummy floating IP dmy on nodes s1-6020 with interface so6c and node s1-6021 with interface so91, run

    floatingips create dmy --dummy --nodes s1-6020 s1-6021 --interfaces so6c so91

Editing a floating IP

To edit a floating IP, use the command floatingips edit.

Usage:

floatingips edit <name> [--newname=<name>] [--dummy]|[--address=<ip> --mask=<subnet> --gateway=<ip>] [--nodes=<NS-name…> --interfaces=<NS-NIC…>]

Options:

Options and arguments Description
<name> To specify the name of the floating IP, replace <name> with the name of the floating IP that you want to edit.
newname=<name> To rename the floating IP. Replace <name> with a new name of your choice.
--dummy To edit a dummy floating IP a dummy floating
--address=<ip> To edit the IP address of the floating IP. Replace <ip> with a new IP address.
--mask=<subnet> To edit the subnet mask address.
--gateway=<ip> To edit the gateway IP address of the network.
--nodes=<S1_nodes> To edit the name of the node server, replace <NS-name> with node-server name.
--interfaces=<interfaces> To edit the name of the network interface card (NIC). Replace <NS-NIC…> with NIC names that are installed in your server nodes (use the TAB key to display list of NICs that are installed on the node-server).

Example:

  1. To rename floating IP xyz to abc, run

    floatingips xyz --newname abc
  2. To rename floating IP mks to flpp and to change its address to 192.168.13.13, run

    floatingips mks --newname flpp --address 192.168.13.13
  3. To rename floating IP Xf11 to fp12 and change its address to 192.168.30.222 with mask 255.255.255.0 and gateway 192.168.30.1 and to change nodes s1-6020 to RH11 with interface mth and node s1-6021 with interface so91, run

    floatingips edit Xf11 --newname fp12 --address 192.168.30.222 --mask 255.255.255.0 --gateway 192.168.30.1 --nodes RH11  s1-6021 --interfaces mth so91
  4. To rename dummy IP ddd to hkk, run

    floatingips  edit ddd --newname hkk

Pairing between local and remote floating IP

A floating IP pair refers to the association of a local floating IP with a remote floating IP. This pairing is required for replicating NAS (Network-Attached Storage) or object storage systems.

The purpose of pairing floating IPs is to establish a connection or link between the local and remote systems, allowing for data replication or synchronization. By assigning a specific name to the pair, you can easily identify and manage the association.

To pair between local and remote floating IPs, use the floatingips pair command.

Usage:

floatingips pair <name> --targetSystem=<local-sys-name> --targetFloatingIp=<remote-sys-name>

Options:

Options and arguments Description
<name> To specify the name of the floating IP on the local system.
--targetSystem=<remote_system> Specifies the name of the remote system to pair with. The remote system must be connected to the same relay machine. You can use the TAB auto-complete to show the available systems.
--targetFloatingIp=<remote_floating_ip> Specifies the name of the floating IP on the remote system. You can use the TAB auto-complete to show the available floating IPs on the specified target system.

Example:

To use floating IP Xf11 to pair between local system name Cloud1 and remote system name Rem, run

floatingips pair xf11 --targetSystem Cloud1 --targetFloatingIp Rem

Unpairing a floating IP

To un-pair floating IP from a remote system, use the floatingips unpair command

Usage:

floatingips unpair <name> --targetSystem=<local-sys-name> 

Options:

Options and arguments Description
<name> Specifies the name of the floating IP on the local system.
--targetSystem=<remote_system> Specifies the name of the remote system to un-pair from. Replace <remote_system> with the name of the remote system.

Example:

  1. Local system name Cloud1 that is paired to a remote system through floating IP name fhr can be un-paired by running:

    floatingips unpair fhr --targetsystem Cloud1

Delete a floating IP

To delete a floating IP, use the floatingips delete command

Usage:

floatingips delete <name>

Options:

Options and arguments Description
<name> To specify the name of the floating IP that you want to delete.

Example:

To delete floating IP name fhr, run

floatingips delete fhr