openstack 客户端命令行简介


OpenStack Client(openstack 命令)是一个 统一的命令行工具,用于与 OpenStack 的 各个服务(如 Nova、Neutron、Cinder、Keystone 等)进行交互。以下是 openstack 命令的详细解释和常用命令示例。

基本用法

openstack 命令的基本语法如下:

openstack <service> <action> [options]
  • <service>: OpenStack 服务名称(如 server、network、volume 等)。
  • <action>: 对服务执行的操作(如 create、list、delete 等)。
  • [options]: 可选参数,用于指定操作的详细信息。

常用命令分类

身份认证(Keystone)

Keystone 是 OpenStack 的身份认证服务,用于管理用户、项目、角色和域。
在这里插入图片描述

常用命令

  • 列出用户
(venv) [root@ubuntu2204 ~]#openstack user list
+----------------------------------+-------------------+
| ID                               | Name              |
+----------------------------------+-------------------+
| 651bbd0eb5ea4e5098c2444f0e125309 | admin             |
| 8fa8623c829842008a8c0ab01878530d | glance            |
| 28f48ef6ec454e95bd8a3a3e58eeb31d | placement         |
| 6bedfae6ed8e4a4997f3b9f87f8de745 | nova              |
| 4fb76b1cc9334817a2e8db3ecd12cec1 | neutron           |
| b6744c95272e4cd1a3853b12ba1cb44f | heat              |
| 0e02e26ff3b64ebea02f43455627e812 | heat_domain_admin |
+----------------------------------+-------------------+
  • 创建用户
openstack user create --domain Default --password <password> <username>
  • 列出项目
(venv) [root@ubuntu2204 ~]#openstack project list
+----------------------------------+---------+
| ID                               | Name    |
+----------------------------------+---------+
| 3c70793b4fe14133a360bc432b77ea58 | service |
| fec2f636dfb4459fa3ffb7b81d3c70e0 | admin   |
+----------------------------------+---------+
  • 创建项目
openstack project create --domain Default <project-name>
  • 列出角色
(venv) [root@ubuntu2204 ~]#openstack role list
+----------------------------------+------------------+
| ID                               | Name             |
+----------------------------------+------------------+
| 1c2049b698d948388e57744b4b17d6c0 | service          |
| 867d46adacc14d46ae80419d8856d99b | heat_stack_user  |
| 939764ab6e91490a981ce64f567569e6 | member           |
| bb2638999db24d76ac1d339ab62935ca | heat_stack_owner |
| cd1701d33da84099a8b2c3f86e4347e6 | admin            |
| db24b9c95ee1432191429b8f5a8e9520 | manager          |
| e0c04efe8e50479f87515d38f32de73d | reader           |
+----------------------------------+------------------+
  • 分配角色
openstack role add --project <project-name> --user <username> <role-name>
openstack role add --domain <domain-name> --user <user> <role-name>

计算服务(Nova)

Nova 是 OpenStack 的计算服务,用于管理虚拟机实例。

常用命令:

  • 列出虚拟机实例
    openstack server list
    
  • 创建虚拟机实例
    # flavor 是虚拟机的配置模板,定义了虚拟机的 CPU、内存和磁盘等资源。
    # <flavor-name> 需要替换为你实际使用的 flavor 名称,例如 m1.small 或 m1.medium。
    # image 是虚拟机的操作系统镜像,可以是 Linux、Windows 或其他操作系统的镜像。
    # nic 用于指定虚拟机的网络接口。你可以通过 openstack network list 命令查看可用的网络及其 ID。
    openstack server create --flavor <flavor-name> --image <image-name> --nic net-id=<network-id> <instance-name>
    
  • 删除虚拟机实例
    openstack server delete <instance-id>
    
  • 查看虚拟机详情
    openstack server show <instance-id>
    
  • 启动/停止虚拟机
    openstack server start <instance-id>
    openstack server stop <instance-id>
    

网络服务(Neutron)

Neutron 是 OpenStack 的网络服务,用于管理网络、子网、路由器和安全组。

常用命令:

  • 列出网络

    openstack network list
    
  • 创建网络

  • 列出子网

(venv) [root@ubuntu2204 ~]# openstack network list
+--------------------------------------+----------+--------------------------------------+
| ID                                   | Name     | Subnets                              |
+--------------------------------------+----------+--------------------------------------+
| 780c435e-2a45-404d-a6fd-bd670bf656ac | public1  | d1cfcd50-040e-41b1-b3b5-df7e47be33ec |
| fd088459-bfe3-44e6-bc2b-46aa2d9de23f | demo-net | 11a98d9f-8750-47b4-b3e0-76e9f36d7fbb |
+--------------------------------------+----------+--------------------------------------+
  • 创建子网
    openstack subnet create --network <network-name> --subnet-range <cidr> <subnet-name>
    
  • 列出路由器
(venv) [root@ubuntu2204 ~]#  openstack router list
+--------------------------------------+-------------+--------+-------+----------------------------------+-------------+-------+
| ID                                   | Name        | Status | State | Project                          | Distributed | HA    |
+--------------------------------------+-------------+--------+-------+----------------------------------+-------------+-------+
| e896c1f0-2c19-4690-9085-d1102bdae1d2 | demo-router | ACTIVE | UP    | fec2f636dfb4459fa3ffb7b81d3c70e0 | False       | False |
+--------------------------------------+-------------+--------+-------+----------------------------------+-------------+-------+
  • 创建路由器
    openstack router create <router-name>
    
  • 添加接口到路由器
    openstack router add subnet <router-name> <subnet-name>
    

块存储服务(Cinder)

Cinder 是 OpenStack 的块存储服务,用于管理卷和快照。

常用命令:

  • 列出卷
    openstack volume list
    
  • 创建卷
    openstack volume create --size <size-in-GB> <volume-name>
    
  • 删除卷
    openstack volume delete <volume-id>
    
  • 挂载卷到虚拟机
    openstack server add volume <instance-id> <volume-id>
    
  • 卸载卷
    openstack server remove volume <instance-id> <volume-id>
    

镜像服务(Glance)

Glance 是 OpenStack 的镜像服务,用于管理虚拟机镜像。

常用命令:

  • 列出镜像
(venv) [root@ubuntu2204 ~]#openstack image list
+--------------------------------------+--------+--------+
| ID                                   | Name   | Status |
+--------------------------------------+--------+--------+
| 1c6924e2-5b1d-4bac-9bab-e90a6e63a383 | cirros | active |
+--------------------------------------+--------+--------+
  • 上传镜像
  openstack image create --file <image-file> --disk-format qcow2 --container-format bare <image-name>
  • 删除镜像
 openstack image delete <image-id>

2.6 对象存储服务(Swift)

Swift 是 OpenStack 的对象存储服务,用于管理对象和容器。

常用命令:

  • 列出容器
    openstack container list
    
  • 创建容器
    openstack container create <container-name>
    
  • 上传对象
    openstack object create <container-name> <file-path>
    
  • 下载对象
    openstack object save <container-name> <object-name>
    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值