In diesem Tutorial zeigen wir Ihnen, wie Sie eine Cloud-Instanz mit Hilfe der Openstack Kommandozeilentools (CLI) anlegen.
Was Sie in diesem Artikel lernen:
- Erstellen einer Openstack Instanz (vServer) mit dem Openstack CLI
- Zuweisung einer Floating-IP zur neuen Instanz
Für dieses Tutorial benötigen Sie
- Die Zugangsdaten für Ihr Virtuelles Rechenzentrum und
- Die Zugangsdaten für mein.HKN.de
- Eine Instanz mit installierten Python-Clients (CLI) und AdminRC-Datei in Ihrem VRZ.
Eine der häufigsten Aufgaben eines Admins ist das Anlegen von neuen Servern. Das Openstack CLIermöglicht einen schnellen Zugang zu Ihrem VRZ und damit erleichtert die Erstellung und das Management von Ressourcen. In diesem Artikel zeigen wir Ihnen, wie man einen neuen vServer mit einem Einzelbefehl anlegt.
Schritt für Schritt Anleitung: Anlegen eines vServers mit CLI
Schritt 1: Parameter
Um eine Instanz zu erstellen, müssen ein paar Informationen vorhanden sein:
- Die Instanz Quelle kann ein Image, Snapshot, oder Block-Storage-Volume sein, was in sich ein Image oder Snapshot beinhaltet.
- Ein Name für Ihren vServer.
- Ein Flavor für Ihre Instanz. Damit ist festgelegt wie viel RAM, CPU-Kerne und Speicherplatz Ihr neuer Server zunächst hat. Ein Flavor ist eine verfügbare Hardware-Konfiguration für Ihre Instanz.
- SSH-Schlüsselpaar für die Instanz, was bei der Einführung eines vServers ins Image angefügt werden muss, um eine Verbindung mit der Instanz zu ermöglichen.
- Netzwerk – das Netzwerk muss angegeben, zumindest dann, wenn es mehr als eins in Ihrem VRZ gibt.
Optionale Parameter
- Eine oder mehrere Sicherheitsgruppe, mit der man eingehender Netzwerkverkehr zu der Instanz und Firewall Policies definieren kann.
- Eine Floating-IP Adresse. (Public IP-Adress) – dann erforderlich, wenn über das Internet auf die Instanz zugegriffen werden soll.
- Block-Storage-Device als Dauerspeicher.
Schritt 2: Parameter beim Launchen einer Instanz
Notieren Sie bitte die ID Felder oder den Namen, die Sie für Ihrer Instanz ausgesucht haben
Eine Liste der verfügbare Flavors
hkn@controller-node:~$ openstack flavor list
+-----+-------------+------+------+-----------+-------+---------+
| ID | Name | RAM | Disk | Ephemeral | VCPUs |Is_Public|
+-----+-------------+------+------+-----------+-------+---------+
| 1 |A1.nano-5 | 512 | 1 | 0 | 1 | True |
| 2 |A1.2small-10 | 2048 | 20 | 0 | 1 | True |
| 3 |A1.medium-10 | 4096 | 40 | 0 | 2 | True |
| 4 |S1.large-50 | 8192 | 80 | 0 | 4 | True |
| 5 |S1.Xlarge-50 |16384 | 160 | 0 | 8 | True |
+-----+-------------+------+------+-----------+-------+---------+
Eine Liste der verfügbare Images
hkn@controller-node:~$ openstack image list
+--------------------------------------+------------------------+
| ID | Name | Status |
+--------------------------------------+---------------+--------+
| 397e713c-b95b-4186 | ubuntu-22.04 | active |
| df430cc2-3406-4061 | OPENCLOUD-ubuntu-20.04-nextcloud| active |
| 3cf852bd-2332-48f4 | debian-11 | active |
| 3cw8f2bd-2782-4gf5 | centos-8 | active |
+--------------------------------------+---------------+--------+
Eine Liste der verfügare Security-Groups
hkn@controller-node:~$ openstack security group list
+---------------------------------+------------------------+-----+
| ID | Name |Description| Projekt | Tags|
+---------------------------------+-----------+------------+-----+
| 397e713c-b95b-4186 | default |default |35dd3f4ab5d1| [ ] |
| df430cc2-3406-4061 | all-in |all-in |0468f5411292| [ ] |
| 3cw8f2bd-2782-4gf5 | hkn-service|hkn-service|5411292fccgt| [ ] |
+------------------------------------------+-----------+---------+
Eine Liste der verfügbare Schlüsselpaare
hkn@controller-node:~$ openstack keypair list
+----------+---------------------------------------+
| Name | Fingerprint | Type |
+----------+---------------------------------------+
| hkn_key | f1:95:b7:7f:956:4e:a7:f8:f7:06 | ssh |
| mykey | e0:88:ed:1b:22:25::20:85:46:1b | ssh |
+----------+---------------------------------------+
Eine Liste der Openstack Netzwerke
hkn@controller-node:~$ openstack network list
+----------+---------------------------------------+
| ID | Name | Subnets |
+---------------------------+----------------------+
| hkn_key | ext_hkn | d1d3-4ft2-b1g0-f5c87 |
| mykey | my_projekt | 93d5f-85b2d-3ksf-5dd |
+----------+----------------+----------------------+
Eine Liste der Openstack Subnetze (Falls vorhanden)
hkn@controller-node:~$ openstack subnet list
+----------+---------------------------------+-------------+
| ID | Name | Network | Subnet |
+---------------------------+----------------+-------------+
| 397e713 | my_projekt | 93d5f-85b-3ksf |10.40.37.0/24|
+----------+----------------+----------------+-------------+
Schritt 3: Launchen einer Instanz
openstack server create --flavor <Flavor_ID>
--image <Image_Name> --network <Nezwerk_ID>
--key-name <Key_Name>
--security-group <Group_Name> <Name_der_Instanz>
Anlegen eines vServers anhand eines praktischen Beispiels
hkn@controller-node:~$ openstack server create --flavor A1-2small-
10 --image ubuntu-22.04 --network a619e1ca-1392-42dc-b677-
b87cb796787f --key-name nc24-pub --security-group all-in vm01
+-----------------------------+-----------------------------------+
| Field | Value |
+-----------------------------+-----------------------------------+
| OS-DCF:diskConfig | MANUAL |
| OS-EXT-AZ:availability_zone | |
| OS-EXT-STS:power_state | NOSTATE |
| OS-EXT-STS:task_state | scheduling |
| OS-EXT-STS:vm_state | building |
| OS-SRV-USG:launched_at | None |
| OS-SRV-USG:terminated_at | None |
| accessIPv4 | |
| accessIPv6 | |
| addresses | |
| adminPass | Jwi8XFUPSTX3 |
| config_drive | |
| created | 2022-07-05T14:26:11Z |
| flavor | A1-2small-10 (97d9cd0-d4dedfea87b)|
| hostId | |
| id | e7f23453-8306-4e93-a225 |
| image | ubuntu-22.04 (9cb7-4f139f57a450) |
| key_name | nc24-pub |
| name | vm01 |
| progress | 0 |
| project_id | 35dd3f4ab5d140468f5411292fcc9552 |
| properties | |
| security_groups | name='a36fffaf-f94ead004b35' |
| status | BUILD |
| updated | 2022-07-05T14:26:12Z |
| user_id | d442d05f374a44278eb525a0bfaaca6f |
| volumes_attached | |
+-----------------------------+-----------------------------------+
Eine Liste der Laufende vServers in Ihrem Projekt
hkn@controller-node:~$ openstack server list
+----------+-----------+------+----------+---------+-------------+
| ID | Name |Status| Network | Image | Flavor |
+-----------------------------+----------+---------+-------------+
| 397e713 | vm01 |ACTIVE|my_network|ubuntu-22|A1.2small-10 |
+----------+-----------+------+----------+---------+-------------+
Schritt 4: Zuweisung einer Floating IP (optional)
Wenn Sie sich über das Internet per SSH mit Ihrem vServer verbinden möchten, ist es notwendig der Instanz eine Floating-IP zuzuweisen
Notieren Sie sich die Floating IP, welche Sie für Ihren vServer ausgesucht haben
openstack floating ip list
Die Floating-IP Ihrer Instanz zuweisen
openstack server add floating ip <Instanz_Name><Floating_IP>
Falls Sie noch keine Public-IP (Floating-IP) haben, führen Sie den folgenden Befehl aus um eine zu erstellen
Eine Liste der externe Netzwerke
openstack network list --external
Das externe Netzwerk mit dem flgendem Befehl verwenden
openstack floating ip create <External_Network>
Wie Sie sich per SSH mit Ihrem vServer verbinden können, finden Sie in folgendem Link heraus.