openstack怎么创建云主机?

HCRM技术_小炮 云主机 2025-10-06 2 0

准备工作

在开始创建之前,请确保你已满足以下条件:

1、拥有有效的 OpenStack 账户和密码:包括你的项目名称、用户名和密码。

2、拥有访问权限

Dashboard 地址用于网页登录。

API 凭证如果你打算使用命令行,需要下载一个RC 文件(openrc.shproject-openrc.sh),它包含了环境变量。

3、必要的资源可用

镜像云主机的操作系统模板,如 CentOS、Ubuntu、Windows 等。

规格定义云主机的 CPU、内存和磁盘大小。

网络至少有一个可用的网络,云主机会连接到这个网络以获取 IP 地址。

安全组定义允许访问云主机的网络规则(如 SSH、HTTP、HTTPS 端口)。

密钥对(强烈推荐用于 Linux)用于安全地通过 SSH 登录到云主机。

方法一:通过 Dashboard(Horizon)网页控制台创建

这是最直观的方式,适合新手和日常管理。

1、登录 Dashboard

* 在浏览器中打开你的 OpenStack Dashboard 地址。

* 输入你的用户名和密码,选择正确的项目/域,然后登录。

2、导航到“实例”页面

* 在左侧导航栏中,找到Compute 部分,点击Instances

3、启动实例

* 点击页面右上角的Launch Instance 按钮。

4、填写实例详情

这会打开一个多步骤的对话框。

Details 标签页

Instance Name为你的云主机起一个名字,例如my-webserver

Description(可选)添加描述。

Availability Zone通常保持默认nova

Source 标签页选择启动源(镜像)

* 在Select Boot Source 下,通常选择Image

* 点击No 旁边的向上箭头,从可用镜像列表中选择一个(如Ubuntu 20.04CentOS 8)。

* 根据需要调整Size (GB)

Flavor 标签页选择硬件规格

* 从列表中选择一个合适的规格(如m1.small,c1.medium),规格定义了 vCPU、内存和根磁盘的大小。

Networks 标签页连接网络

* 在可用网络列表中,选择你想要连接的网络,然后点击其旁边的向上箭头 图标,将其移到 “Selected” 栏。

Network Ports通常不需要修改,使用自动分配即可。

Security Groups 标签页配置防火墙规则

* 默认会选中default 安全组,确保这个安全组允许 SSH(端口 22)或 RDP(端口 3389)的访问,否则你将无法远程登录。

* 你可以点击Manage Rules 来编辑安全组规则。

Key Pair 标签页(关键!用于 Linux)

* 如果你还没有密钥对,点击Create Key Pair,输入一个名字(如my-key),然后点击创建,浏览器会自动下载一个.pem 文件。请妥善保管此文件!

* 如果你已有密钥对,直接从下拉列表中选择它。

ConfigurationServer Groups 标签页通常可以保持默认。

5、创建实例

* 检查所有配置无误后,点击对话框底部的Launch Instance 按钮。

6、等待并获取IP地址

* 回到 Instances 页面,你会看到新实例的状态从Build 变为Active,表示创建成功。

* 在实例的IP Address 列,你会看到分配到的 IP 地址,使用这个 IP 和你的密钥文件即可 SSH 登录。

方法二:通过命令行客户端(OpenStack Client)创建

这种方式适合自动化脚本和高级用户。

1、安装并配置 OpenStack Client

安装客户端pip install python-openstackclient

配置环境变量

* 从 Dashboard 下载RC 文件。

在终端中执行source /path/to/your/project-openrc.sh

* 输入你的密码。

2、创建步骤(命令示例)

以下命令演示了创建一个名为cli-vm 的 Ubuntu 云主机的完整流程。

1. 列出可用的镜像,找到 Ubuntu 镜像的 Name 或 ID
openstack image list
2. 列出可用的规格
openstack flavor list
3. 列出可用的网络
openstack network list
4. 列出可用的安全组
openstack security group list
5. 列出可用的密钥对
openstack keypair list
6. 启动实例!
将下面的 <image_name>, <flavor_name>, <network_name>, <keypair_name> 替换为实际值
openstack server create \
  --image "Ubuntu 20.04" \
  --flavor "m1.small" \
  --network "private-network" \
  --security-group "default" \
  --key-name "my-key" \
  cli-vm

3、检查状态和连接

查看实例状态openstack server list

查看实例的详细信息,包括 IP 地址openstack server show cli-vm

使用 SSH 登录(假设 IP 是192.168.1.10

        ssh -i /path/to/your/my-key.pem ubuntu@192.168.1.10

常见问题与技巧

无法 SSH 登录?

* 检查安全组规则是否放行了端口22 (SSH)。

* 检查密钥对是否正确关联,并且使用了正确的私钥文件(.pem)。

对于 Linux,默认用户通常是

* Ubuntu:ubuntu

* CentOS:centos

* Debian:debian

* Fedora:fedora

* 确保你使用的是私有密钥,而不是公钥。

没有公网IP?

* 你可能需要创建一个浮动 IP 并将其关联到你的云主机。

Dashboard 操作在 Instances 页面,对目标实例点击下拉菜单,选择Associate Floating IP

命令行操作

        # 分配一个浮动IP
        openstack floating ip create public
        # 关联浮动IP到实例
        openstack server add floating ip cli-vm <floating-ip-address>

使用云初始化(Cloud-Init)

* 在 Launch Instance 对话框的Configuration 标签页中,你可以直接输入#cloud-config 脚本,用于在首次启动时自动化配置主机(如设置密码、安装软件、运行脚本等)。

选择适合你的方法开始创建你的第一台 OpenStack 云主机吧!Dashboard 更适合入门和可视化操作,而命令行则在自动化和批量操作中更强大。

文章摘自:https://idc.huochengrm.cn/zj/17347.html

评论