OpenStack 命令化管理详解
说明 :
Kolla 安装成功 OpenStack 后,可使用 Horizon(Dashboard)后台管理界面操作维护云计算集群,作者在工作使用过程中发现使用 Horizon 界面操作过于繁琐和难以理解,而使用 OpenStack 客户端命令行操作更为简洁明了,于是整理了较为完善的命令行操作说明。
1、公网、内网、路由
删除执行 /usr/share/kolla-ansible/init-runonce
初始化配置的默认网络
openstack router delete 'demo-router'
openstack network delete 'demo-net'
openstack network delete 'public1'
创建 flat 类型公网,物理网络设备名见:less /etc/kolla/neutron-openvswitch-agent/ml2_conf.ini
openstack network create --provider-network-type flat \
--provider-physical-network physnet1 \
--external --share '公网'
创建公网子网
openstack subnet create \
--subnet-range 10.0.20.0/24 --gateway 10.0.20.1 \
--allocation-pool start=10.0.20.99,end=10.0.20.149 \
--dns-nameserver 223.5.5.5 --dns-nameserver 8.8.8.8 \
--network '公网' '公网子网'
创建 vxlan 类型内网
openstack network create --provider-network-type vxlan '内网'
创建内网子网
openstack subnet create \
--subnet-range 10.0.0.0/24 --gateway 10.0.0.1 \
--allocation-pool start=10.0.0.99,end=10.0.0.149 \
--dns-nameserver 223.5.5.5 --dns-nameserver 8.8.8.8 \
--network '内网' '内网子网'
创建路由,绑定到公网
openstack router create '路由器'
openstack router set --enable-snat --external-gateway '公网' \
--fixed-ip subnet=公网子网,ip-address=10.0.20.98 '路由器'
创建内网网关接口,并绑定到路由
openstack port create --fixed-ip subnet=内网子网,ip-address=10.0.0.1 \
--network '内网' '内网网关接口'
openstack router add port '路由器' '内网网关接口'
删除路由、内网、公网
openstack router remove subnet '路由器' '内网子网'
openstack router remove subnet '路由器' '公网子网'
openstack router delete '路由器'
openstack network delete '内网'
openstack network delete '公网'
2、实例类型
查看实例类型列表
openstack flavor list
删除初始化的实例类型
openstack flavor delete '1'
创建一个实例类型
openstack flavor create --id 1 \
--vcpus 2 --ram 1024 --disk 1 \
--public 'm.small'
3、系统镜像
查看镜像列表
openstack image list
删除镜像
openstack image delete 'CentOS 7.5 64位'
上传镜像到集群:CentOS 7.5 64 位
openstack image create --disk-format qcow2 \
--min-disk 4 --min-ram 1024 \
--file /root/cloud-images/CentOS-7-x86_64-GenericCloud-1805.qcow2c \
--public 'CentOS 7.5 64位'
4、虚拟机实例
创建一个私钥
mkdir -p ~/openstack/cloud-keypairs
ssh-keygen -t rsa -b 2048 -f '~/openstack/cloud-keypairs/s100-keypair' -P ''
删除密钥对
openstack keypair delete 's100-keypair"
创建密钥对
openstack keypair create --public-key ~/cloud-keypairs/s100-keypair.pub 's100-keypair'
删除公网浮动 IP
openstack floating ip delete '10.0.20.100'
删除私网 IP 接口
openstack port delete 's100-port'
删除已有实例
openstack server delete --wait 's100'
创建私网 IP 接口
openstack port create --device-owner compute:nova \
--fixed-ip subnet=内网子网,ip-address=10.0.10.100 \
--network '内网' 's100-port'
创建公网浮动 IP,并绑定到私网
openstack floating ip create --subnet '公网子网' \
--floating-ip-address 10.0.20.100 \
--port 's100-port' \
'公网'
生成 cloud-init 配置文件,注意 CoreOS、CentOS、Ubuntu 的 cloud-init 文件各有不同
mkdir -p ~/openstack/cloud-configs
tee ~/openstack/cloud-configs/s100-cloudinit.yml <<EOF
#cloud-config
chpasswd:
list: |
root:openstack
expire: false
disable_root: false
ssh_pwauth: yes
timezone: Asia/Shanghai
EOF
创建实例并绑定私网 IP 接口和浮动 IP
openstack server create --image 'CentOS 7.5 64位' --flavor 'm.small' \
--key-name 's100-keypair' --availability-zone 'nova' --port 's100-port' \
--user-data ~/openstack/cloud-configs/s100-cloudinit.yml --wait 's100'
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于