Advanced Features

The following guide will introduce you to advanced features available in MetaCentrum Cloud. For basic instructions on how to start a virtual machine instance, see Quick Start.

Virtual Networks

MetaCentrum Cloud offers software-defined networking as one of its services. Users have the ability to create their own networks and subnets, connect them with routers, and set up tiered network topologies.

Prerequisites:

  • Basic understanding of routing
  • Basic understanding of TCP/IP

For details, refer to the official documentation.

Create Network

  1. Go to Project > Network > Networks, click on Create Network.

  2. Choose name and click Next.

  3. In the subnet tab, choose a subnet name. In Network Address Source, select Allocate Network Addres from a pool. In Address pool select any of the available pools. Click Next.

  4. Click Create. Do not change any other options.

  5. Go to Project > Network > Network Topology, review your newly created network topology.

Create Router

  1. Go to Project > Network > Routers, click on the Create Router button.

  2. Choose a name. Select External Network and click Create Router.

    Notice:
    Please, remember that your will have to allocate floating IP addresses in the selected External Network for all instances using this router as a gateway.
  3. Go to Project > Network > Network Topology, the newly create router should be now present.

  4. Click on the router icon, select Add Interface.

  5. Choose the previously created network/subnet from the drop-down menu. Click Submit.

  6. The router is now attached to an external network.

    Notice:
    Routers can also be used to route traffic between internal networks. This is an advanced topic not covered in this guide.

Orchestration

The OpenStack orchestration service can be used to deploy and manage complex virtual topologies as single entities, including basic auto-scaling and self-healing.

This feature is provided as is and configuration is entirely the responsibility of the user.

For details, refer to the official documentation.

Image upload

We don't support uploading own images by default. MetaCentrum Cloud images are optimized for running in the cloud and we recommend users to customize them instead of building own images from scratch. If you need upload custom image, please contact user support for appropriate permissions.

Instructions for uploading custom image:

  1. Upload only images in RAW format (not qcow2, vmdk, etc.).

  2. Upload is supported only through OpenStack CLI with Application Credentials.

  3. Each image needs to contain metadata:

    hw_scsi_model=virtio-scsi
    hw_disk_bus=scsi
    hw_rng_model=virtio
    hw_qemu_guest_agent=yes
    os_require_quiesce=yes
    

    Following needs to be setup correctly (consult official documentation) or instances won't start:

    os_type=linux # example
    os_distro=ubuntu # example
    
  4. Images should contain cloud-init, qemu-guest-agent and grow-part tools

  5. OpenStack will resize instance after start. Image shouldn't contain any empty partitions or free space

Add SWAP file to instance

By default VMs after creation do not have SWAP partition. If you need to add a SWAP file to your system you can download and run script that create SWAP file on your VM.

Local SSDs

Default MetaCentrum Cloud storage is implemented via CEPH storage cluster deployed on top of HDDs. This configuration should be sufficient for most cases. For instances, that requires high throughput and IOPS, it is possible to utilize hypervizor local SSDs. Requirements for instances on hypervizor local SSD:

  • instances can be deployed only via API (CLI, Ansible, Terraform ...), instances deployed via web gui (Horizon) will always use CEPH for it's storage
  • supported only by flavors with ssd-ephem suffix (e.g. hpc.4core-16ram-ssd-ephem)
  • instances can be rebooted without prior notice or you can be required to delete them
  • you can request them, when asking for new project, or for existing project on cloud@metacentrum.cz

LBaaS

LBaaS (Load Balancer as a service) provides user with load balancing service, that can be fully managed via OpenStack API (some basic tasks are supported by GUI). Core benefits:

  • creation and management of load balancer resources can be easily automatized via API, or existing tools like Ansible or Terraform
  • applications can be easily scaled by starting up more OpenStack instances and registering them into the load balancer
  • public IPv4 addresses saving - you can deploy one load balancer with one public IP and serve multiple services on multiple pools of instances by TCP/UDP port or L7 policies

This feature is provided as is and configuration is entirely the responsibility of the user.

Official documentation for LBaaS (Octavia) service - https://docs.openstack.org/octavia/latest/user/index.html

results matching ""

    No results matching ""