The CentOS DevCloud is an IaaS instance setup and run within the CentOS Infra team as a resource for CentOS developers, SIGs, and contributors to run development and testing instances.

DevCloud may not be used to run public services, or anything that needs a reasonable SLA - it should itself be considered a dev environment.

Howto get an account

Once the request is processed, your user account will be sponsored in the 'devcloud_users' group, and you'll receive a mail notification.

In the minutes following your sponsorship by an admin, the sync script will create a user account on the following jump host (see http://wiki.centos.org/TipsAndTricks/SshTips/JumpHost) : jump.lon1.centos.org with the ssh public key coming from your ACO account created before. The same user will also be automatically created in OpenStack and a corresponding keypair attached to your account. You will then be able to login to this jump host and run commands to create instances, destroy instances etc.

You get a real IPv6 address with all instances, the IPv4 address is private space (172.x.x.x ) and works via a NAT to the internet. If you need inbound port access, you can request that via bugs.centos.org as well ( project: Buildsys, category: Dev Infrastructure ).

General Usage

Instance Map

We have CentOS 7 and 6 available; you can also request your own images to be included ( and shared with other users )

Instance/Flavor Type

CPU Cores

RAM

Disk space

small

0.5

2GB

10 GB

medium

1

4GB

10 GB

large

2

8GB

10 GB

If you need more disk space, we provide also some variants with a second 60GB disk presented at /dev/vdb in provisioned instances. You can format that drive, but keep in mind that it's also ephemeral, so when the instance will be destroyed, the second disk will be gone too. Here are the flavor variant names :

Instance/Flavor Type

CPU Cores

RAM

Disk space

/dev/vdb Disk space

small_eph60

0.5

2GB

10 GB

60GB

medium_eph60

1

4GB

10 GB

60GB

large_eph60

2

8GB

10 GB

60GB

The DevCloud currently runs off 4 physical machines, we hope to add another 4 to the cluster in the near future . So please be considerate about resources.

Creating an Instance

You can create a new instance by running (replace 'myvm' with a name you want to have for your vm, and 'small' with one valid flavor described above):

openstack server create --image 'centos_7' --flavor small --key-name ${USER}_key --nic net-id=$(openstack network list -f value |awk '{print $1}') myvm

To see a list of your instances, and their present state:

openstack server list

And to get details about a specific instance ( replace 'myvm' with the name of the instance ) :

openstack server show myvm

Connecting to an Instance

Once the VM is deployed, you can ssh (as 'centos' user) to the IP shown by openstack server list . example :

ssh centos@dev-33-1.lon1.centos.org

Don't forget though to connect to the jump host with ForwardAgent for this to work.

It's worth knowing that there is a default internal hostname assigned on each new VM, based on the IP assigned to the VM. For example, if your IP (returned by openstack server list) is 172.29.33.60, your hostname (known in the internal DNS, and so by the jump host) will be dev-33-60.lon1.centos.org (following the dev-$subnet-$ip.lon1.centos.org naming convention)

Destroying an Instance

You can terminate an instance with :

openstack server delete <id>

Note that this will completely destroy the instance, and remove all backing disks - there is no way to recover from this.

Getting Help

You can ask for help on the centos-devel list ( http://lists.centos.org/ ) or in #centos-devel irc channel.

DevCloud (last edited 2017-08-03 13:08:18 by FabianArrotin)