Skip to content

Launching an instance with a persistent private IP via Horizon (GUI)

Overview

This guide details how to instantiate a single compute instance with a pre-configured, persistent private IP address using the firstcolo Cloud Horizon dashboard.

Prerequisites

  • Valid firstcolo Cloud credentials (username, passphrase, and domain).
  • Familiarity with terminal/SSH and SSH key management.

Creating Network Port

The following instructions detail how to provision a network port.

Step 1: Accessing the OpenStack CLI

Open your terminal or command prompt. Log in to the OpenStack CLI using your firstcolo Cloud credentials. (Refer to your firstcolo Cloud documentation for specific login instructions if needed).

Step 2: Obtaining Network and Subnet IDs

To create the port, you'll need the IDs of your network and subnet. You can find these IDs using either the Horizon GUI or the OpenStack CLI.

Locating IDs via the Horizon GUI:

Navigate to Networks: In the Horizon dashboard, click on "Networks." Select Your Network: Choose the network you want to use. View Subnets: Click on the "Subnets" tab. Locate IDs: On this page, you'll find the Network ID and the Subnet ID.

Locating IDs via the OpenStack CLI:

Use the neutron subnet-show command:

$ neutron subnet-show <SUBNET_ID>
(Replace with the ID or Name of your subnet.)

View the Output: The command will display detailed information about the subnet, including the Network ID and the Subnet ID.

subnet-show

Step 3: Creating the Network Port

Execute the neutron port-create command:

$ neutron port-create \
    --name <PORT_NAME> \
    --fixed-ip subnet_id=<SUBNET_ID>,ip_address=<IP_ADDRESS> \
    <NETWORK_ID>
Replace the placeholders:

: Enter a descriptive name for the network port.

: Replace with the ID of your subnet (obtained in Step 2).

: Enter the specific, fixed IP address you want to assign to the port. This IP can be outside the subnet's allocation pool.

: Replace with the ID of your network (obtained in Step 2).

Explanation of Command Parameters:

--name: Assigns a name to the network port.

--fixed-ip: Specifies the subnet and IP address to be assigned to the port.

: Associates the port with the specified network.


Launching an Instance with Private IP (requires previous step: creating the network port)

Steps

  1. Import SSH Keys:

  2. Create Security Group for SSH Access:

  3. Log In to firstcolo Cloud Dashboard:

  4. Navigate to Instances:

    • Go to "Project" > "Instances." instance-list
  5. Launch Instance:

    • Click "Launch Instance."
    • Enter an "Instance Name."
    • Click "Next." launch-instance
  6. Configure Boot Source:

    • Select a boot source and enable "Create New Volume."
    • Set the volume size.
    • Choose a source image.
    • Click "Next." boot-source
  7. Select Flavor:

    • Choose a flavor.
    • Click "Next." nova-flavors
  8. Choose Network Port:

    • Select your pre-created network port from the "Available" section. Make sure not to select a network, but the recently created network port!
    • Click "Next." network-port
  9. Configure Security Groups:

    • Select the "default" and "ssh" security groups.
    • Click "Next." horizon-compute-instances
  10. Select Key Pair:

    • Choose your SSH key pair.
    • Click "Launch Instance." instance-keypair
  11. Monitor Instance Provisioning:

    • Observe the instance status in the instance list. new-instance
  12. Access Console (Optional):

    • Click on the instance and go to the "Console" tab to view console output. instance-console

Important Note:

Establishing an external connection to your instance with a private IP requires that the network is connected to a router which has access to the external network.

  1. Connect via SSH:

    • After associating a floating IP, open a terminal and connect using:
      ssh debian@<public IP> -i ~/.ssh/<private SSH key>
      
    • (Replace <public IP> and <private SSH key> with your values.)
  2. Verify Connection:

    • After associating the floating IP, you should now be logged into your instance.

Conclusion

We have successfully assigned a persistent private IP address to your instance. This guarantees that the private IP address will remain unchanged.