openstack- shell实现自动化创建虚机脚本

openstack- 自动化创建虚机脚本

工作中需要经常创建虚机、 网络、 检查虚机网络等操作,这样需要多次执行的操作,而且命令比较多使用起来需要查看命令帮助的操作,或者需要多次执行的命令我们可以脚本化

 

这里我写了一个shell 脚本,

1. 创建一个网络               (需要自己去填写固定的网络名,网段信息)

2. 创建一个虚机               (更加自己的需求选择网络、镜像、flavor、az域 来创建虚机)

3. 检查虚机的网络             (这个根据环境选择,检查创建的虚机网络的连通性)

4.快速创建一个虚机             (根据提前的自定义的网络虚机名镜像来创建虚机,不需要我们选择)

5.退出

 

 

 

 

 

 

 

#!/bin/bash
while :
do
echo -e "################################ "
echo -e "TEST YK SHELL Script "
echo -e "################################ "

#VM_NAME=Test-vm-1234
#NET_NAME=Test-net-yk
#SUBNET_NAME=Test-subnet-yk
#NETWORK="199.199.1.0/24"
#IMAGE_NAME=TestVM

source /root/openrc
cat<<EOF
    1. create new network
    2. create new vm
    3. check vm network
4. quickly create testvm
    q. exit
EOF

read -p "Please enter an option:" volume
case $volume in
1) echo "create new network"
openstack network list
echo -e "--------------------Network name cannot be repeated ----------------\n"
read -p "Please enter an network name:" NET_NAME
read -p "Please enter an subnet name:" SUBNET_NAME
read -p "Please enter an nework: eg:192.168.1.0/24:" NETWORK
echo -e "-----------Create Test Network------------\n"
source /root/openrc
Net_id=$(openstack network list | grep $NET_NAME | awk -F "|" '{print $2}' | tr '/n' ' ' | sed -e 's/^ //g' )

#openstack network list | grep $NET_NAME | awk -F "|" '{print $2}' > /dev/null 2>&1
openstack network list | grep $NET_NAME >> /dev/null 2>&1
if [ $? == 0 ] ; then
# openstack network delete $Net_id
# openstack network create $NET_NAME
# neutron subnet-create --name $SUBNET_NAME $NET_NAME $NETWORK
# echo "create network success "
openstack network list | grep $NET_NAME
echo -e "-------------\033[42m $NET_NAME\033[0m \033[31m network already exists \033[0m-------------\n"
Net_id

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值