使用devstack安装openstack

环境介绍,宿主机器 Fedora release 29 (Twenty Nine)

40核心cpu,32g内存

设想, 在fedora中安装kvm,虚拟出Ubuntu,然后在Ubuntu中安装openstack.

使用egrep -c '(svm|vmx)' /proc/cpuinfo查询本机是否支持虚拟化,如果返回结果大于0代表支持。  

如果是0你需要检查你的硬件是否支持虚拟机化或主板是否开启了虚拟化选项。

Fedora(centos/RHEL)的环境准备

  1. 配置国内yum源

    备份原有的yum源配置,然后 下载

    fedora-ustc.repo 到配置文件目录 /etc/yum.repos.d/

    yum makecache

2 . 下载Ubuntu18.4镜像文件

​ 下载地址:http://mirrors.ustc.edu.cn/ubuntu-cdimage/releases/18.04.2/release/ubuntu-18.04.2-server-amd64.iso

  • kvm环境搭建

    安装软件包:

    yum install -y qemu-kvm libvirt ###qemu-kvm用来创建虚拟机硬盘,libvirt用来管理虚拟机

    yum install -y virt-install ###用来创建虚拟机

    关闭防火墙,关闭selinux,清除iptables

    systemctl stop firewalld.service

    iptables -F

    vim /etc/selinux/config

    修改为 SELINUX=disabled

Ubuntu下的环境准备

配置国内源。
sudo sed -i 's/archive.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list 安装KVM
执行以下命令安装KVM sudo apt update
sudo apt install qemu qemu-kvm libvirt-bin bridge-utils virt-manager
将libvirtd添加自启动 sudo systemctl start libvirtd.service
sudo systemctl enable libvirtd.service
```
KVM安装完成后,首先需要进行网络设定,KVM支持四种网络模式:
- 桥接模式
- NAT模式
- 用户网络模式
- 直接分配设备模式 原本宿主机是通过网卡eth0连接外部网络的,网桥模式会新创建一个网桥br0,接管eth0来连接外部网络,然后将宿主机和虚拟机的网卡eth0都绑定到网桥上。 使用桥接模式需要进行以下操作: 方法1: *** 需要安装ifupdown工具下面的修改才能生效 `sudo apt install ifupdown`*** 编辑/etc/network/interfaces,增加如下内容 auto br0
iface br0 inet dhcp # 网桥使用DHCP模式,从DHCP服务器获取IP
bridge_ports enp3s0 # 网卡名称,网桥创建前连接外部的网卡,可通过ifconfig命令查看,有IP地址的就是
bridge_stp on # 避免数据链路出现死循环
bridge_fd 0 # 将转发延迟设置为0
接下来需要重启networking服务(如果是通过SSH连接到宿主机上的,这一步会导致网络中断,如果出现问题可能导致连不上宿主机,最好在宿主机上直接操作) systemctl restart networking.service
使用ifconfig命令查看IP是否从enp3s0(网桥创建前的网卡)变到了br0上,如果没有变化则需要重启。 方法2: Ubuntu18默认管理ip的方式改为netplan了。
默认配置文件:
/etc/netplan/50-cloud-init.yaml 修改成: network:
ethernets:
eth0:
addresses: []
dhcp4: false
version: 2
bridges:
br0:
interfaces: [eth0]
dhcp4: false
addresses: [10.1.1.9/24]
gateway4: 10.1.1.1
nameservers:
addresses: [223.5.5.5] 然后直接执行 `netplan apply` 即可. 如果宿主机ip已经成功变到网桥上,并且宿主机能正常上网而虚拟机获取不到ip,可能是ufw没有允许ip转发导致的,编辑/etc/default/ufw允许ip转发。 DEFAULT_FORWARD_POLICY="ACCEPT"
重启ufw服务让设置生效 systemctl restart ufw.service

在kvm中安装Ubuntu

  1. 安装前的准备

    mkdir ubuntu;cd ubuntu

    1. 注册一个新的虚拟网卡

    ​ ```



    vbr















     1. 把以上配置文件保存为 vbr.xml

     2. 注册到系统设备中

        `virsh net-define vbr.xml`

     3. 启动虚拟网卡设备

        `virsh net-start vbr`

     4. 设置为开机自启动

        `virsh net-autostart vbr`

     5. 创建一个磁盘镜像文件

        `qemu-img create -f qcow ubuntu.raw 40G`

  2. 安装Ubuntu系统

     1. 使用kvm创建一个虚拟机

        `virt-install --virt-type kvm --name ubuntu1804 --ram 20480 --cdrom=/var/ftp/share/1t/ubuntu-18.04.2-server-amd64.iso --disk path=/var/ftp/share/1t/ubuntu.raw --network network=vbr --graphics vnc,listen=0.0.0.0,keymap=en-us --noautoconsole`

        —virt-type kvm ###使用kvm技术

        —name ubuntu1804 虚拟机的名称

        --ram 20480 设置虚拟机的内存 Mb

        --cdrom=/var/ftp/share/1t/ubuntu-18.04.2-server-amd64.iso 引导的镜像

        --disk path=/var/ftp/share/1t/ubuntu.raw  #使用刚才创建的硬盘镜像文件

        --network network=vbr  #使用刚才注册的网络接口

        --graphics vnc,listen=0.0.0.0,keymap=en-us  #使用vnc连接, 注意要选择en-us作为key-map,否则键位布局可能会乱

     2. 启动Ubuntu虚拟机

        `virsh dumpxml ubuntu1804  > ubuntu1804.xml`  备份一份虚拟机的配置文件备用.

        virsh edit ubuntu1804.xml 按需修改配置,如cpu数量之类的.

        删除刚才创建的虚拟机

        `virsh destroy ubuntu1804`

        `virsh undefine ubuntu1804`

        使用我们修改好的虚拟机配置文件重新创建并启动虚拟机

        `virsh define ubuntu1804.xml`

        `virsh start ubuntu1804`

     3. 使用vncview 连接宿主机的ip

        说明:启动Ubuntu虚拟机之后kvm就会监听本地所有地址vncserver默认端口了. 我们只要用vncview连接到 宿主机 就能直接管理新创建的Ubuntu虚拟机了.

        按需安装好Ubuntu. 选择语言-键盘布局-配置主机名和网络-时区-分区模式- 自行安装即可。

   3. 安装Windows10系统 【试验过程并不需要】
安装Windows 10虚拟机会出现没有virtio驱动的问题,导致安装程序找不到硬盘,所以需要先下载virtio驱动。
["virtio驱动下载地址"](https://docs.fedoraproject.org/en-US/quick-docs/creating-windows-virtual-machines-using-virtio-drivers/index.html) `cd vmsfile\imgs\` #创建Win10虚拟机
```
sudo virt-install -n win10
--description "win10"
--os-type=win --os-variant=win10
--ram=4096 --vcpus=2
--disk path=win_10.img,bus=virtio,size=100
--network bridge:br0
--accelerate
--graphics vnc,listen=0.0.0.0,keymap=en-us
--cdrom=systemiso/virtio-win.iso
--cdrom=systemiso/cn_windows_10_consumer_editions_version_1803_updated_march_2018_x64_dvd_12063766.iso
``` + 使用vnc客户端链接虚拟机
+ 查看虚拟机列表
+ `sudo virsh list` #查看正在运行中的虚拟机
+ `sudo virsh list --all` #查看当前所有的虚拟机,包括不是运行中的
+ 查看指定及其的vnc端口
+ `sudo virsh vncdisplay win10` #查指定虚拟机的vnc端口
+ 使用vncview 链接到虚拟机中。 ### 开始使用devstack安装
修改apt源为中科大源
`sudo sed -i 's/archive.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list`
#如果你觉得http不安全可以用http:替换为https:
修改pip配置文件使用国内源 `git clone http://git.trystack.cn/openstack-dev/devstack.git`
# 复制模板配置文件到当前目录然后修改
`cp samples/local.conf ./`

浮动ip的范围,其中会把10.1.1.33设置为浮动ip的网关。 如果10.1.1.0/24是你用来访问外网网段,那你需要在本地路由执行`route add -net 10.1.1.32/27 10.1.1.33` 这样你才能访问到openstack中虚拟机的浮动ip。

FLOATING_RANGE=10.1.1.33/27

#内部传输

FIXED_RANGE=10.11.12.0/24

FIXED_NETWORK_SIZE=256

外网接口

FLAT_INTERFACE=eth0


> 安装时候一般出现问题:git克隆太慢手动重试。 报API问题 可以执行 unstack.sh 或clean.sh 在试试。
使用国内git仓库,速度会快很多  
```
GIT_BASE=http://git.trystack.cn
NOVNC_REPO=http://git.trystack.cn/kanaka/noVNC.git
SPICE_REPO=http://git.trystack.cn/git/spice/spice-html5.git
``` 设置浮动ip之前只要配置一下路由即可。  
新建一个路由,然后在public交换机中新建一个接口链接内网share交换机就行了。   安装比较简单的:
主要问题,就是配置网络接口和浮动ip
可以参考一下链接:
dashboard中配置网络的
https://www.cnblogs.com/shoufengwei/p/7154087.html
https://blog.51cto.com/11555417/2344396
安装详情:
https://blog.csdn.net/Neu_Halen/article/details/73344750
https://blog.51cto.com/wzlinux/1969781
官方配置文档:单机模式安装
https://docs.openstack.org/devstack/latest/guides/single-machine.html
https://ask.openstack.org/en/question/82291/devstack-localconf/
腾讯云的pypi地址
 https://mirrors.cloud.tencent.com/help/pypi.html
腾讯云的镜像站
https://mirrors.cloud.tencent.com/
ubuntu18.04 netplan管理ip
https://www.hi-linux.com/posts/49513.html
openstack配置网络相关
https://blog.51cto.com/11555417/2345230
Neutron 网络基本概念
https://www.cnblogs.com/CloudMan6/p/5716947.html

使用devstack安装openstack的更多相关文章

  1. Vmware虚拟机Devstack安装openstack(All in one)

    Vmware虚拟机Devstack安装openstack(All in one) 博客园第一篇博客,先练习一下. 官方文档 环境 Vmware虚拟机 OS : Ubuntu 14.04 Nat网络,D ...

  2. devstack安装openstack newton版本

    准备使用devstack安装openstack N版,搞一套开发环境出来.一连整了4天,遇到各种问题,各种错误,一直到第4天下午4点多才算完成. 在这个过程中感觉到使用devstack搭建openst ...

  3. ubuntu18.04系统下用devstack安装openstack(最新版)

    ubuntu18.04系统下用devstack安装openstack(最新版) 2018年12月14日 16:34:14 Cherls 阅读数:427   前期准备: 安装git,升级pip,其他 s ...

  4. devstack安装openstack

    devstack是目前安装OpenStack最为方便的工具,一般用于开发和测试OpenStack.如果想在生产环境安装的话,需要对 devstack做很多定制,或者使用puppet/chef等更成熟的 ...

  5. Devstack 安装OpenStack Pike版本(单机环境)

    问题背景 最近在研究OpenStack的时候,需要对其源代码进行调试,公司服务器上部署的OpenStack环境又不能随意的进行折腾,为了研究的持续性和方便性,就决定再自己的虚拟机上面使用Devstac ...

  6. 使用DevStack安装openstack(单机环境)

    DevStack是一系列可扩展的脚本,用于根据git master的最新版本快速启动完整的OpenStack环境.它以交互方式用作开发环境,并作为OpenStack项目功能测试的基础. 参考源码. 警 ...

  7. 体验devstack安装openstack

    由于公司制度,工作环境是不能直接上网的,所以在工作时间从没有体验过devstack或者其他联网方式安装openstack. 因自己购置了一台不错的主机,因而决定尝试安装一番,经过一段为期不短的内心极度 ...

  8. ubuntu14.0.4.3 devstack 安装openstack

    参考网址: http://www.chenshake.com/install-ubuntu-14-04-devstack/ 现在装完一切正常,就是不能重启,一旦重启VM,会导致给br-ex设置的IP地 ...

  9. CentOS7 通过 devstack 安装 OpenStack

    安装前的准备 修改源 (可跳过) 将下载源变更到国内可以时下载速度大大提升 打开下面的文件 vim /etc/yum.repos.d/CentOS-Base.repo 将原来的注释掉改成: [base ...

随机推荐

  1. css 背景 background

    前言:这是笔者学习之后自己的理解与整理.如果有错误或者疑问的地方,请大家指正,我会持续更新! background我们一般用到的的属性有: background-attachment:背景(图片)是否 ...

  2. 多节点bigchaindb集群部署

    文章比较的长,安装下来大概4个小时左右,我个人使用的服务器,速度会快一点. 安装环境 ostname ip os node-admin 192.168.237.130 ubuntu 18.04.2 d ...

  3. VBA运算符(九)

    运算符可以用一个简单的表达式定义,例如:4 + 5等于9.这里,4和5称为操作数,+被称为运算符.VBA支持以下类型的运算符 - 算术运算符 比较运算符 逻辑(或关系)运算符 连接运算符 算术操作符 ...

  4. leetcode-55. Jump Game · Array

    题面 这个题面挺简单的,不难理解.给定非负数组,每一个元素都可以看作是一个格子.其中每一个元素值都代表当前可跳跃的格子数,判断是否可以到达最后的格子. 样例 Input: [2,3,1,1,4] Ou ...

  5. 什么是虚拟DOM

    一.前言 虚拟DOM概念随着react的诞生而诞生,由facebook提出,其卓越的性能很快得到广大开发者的认可:继react之后vue2.0也在其核心引入了虚拟DOM的概念,本文将以vue2.0使用 ...

  6. 【Zookeeper】实现哨兵机制(选举策略)

    一.Master选举使用场景及结构 二.代码实现 2.1 Maven依赖信息 2.2 IndexController 2.3 MyApplicationRunner 2.4 ElectionMaste ...

  7. 阿里高级架构师教你使用Spring Cloud Sleuth跟踪微服务

    随着微服务数量不断增长,需要跟踪一个请求从一个微服务到下一个微服务的传播过程,Spring Cloud Sleuth 正是解决这个问题,它在日志中引入唯一ID,以保证微服务调用之间的一致性,这样你就能 ...

  8. What Linux bind mounts are really doing

    Lots of Unixes have some form of 'loopback' mounts, where you can mount a bit of an existing filesys ...

  9. Metasploit Penetration (第一夜加班)

    1.最近白天瞒着上班,晚自习看英语,还要瞒着写论文(现在是看,之前的部分章节被老师否定了,现在开始要从新进行整理)所以只有这晚上来开始看我的渗透测试了,发现渗透的很多知识,只要你平时不用很快就会生疏, ...

  10. 【问题】Debian安装、配置sources.list、安装VMware Tools

    Debian安装: 我采用的是纯命令行安装方式.具体安装过程网上一大堆,不介绍了.需要强调一点,那个SSH Server必须选,否则像XShell这样的客户端不能访问Debian. 配置sources ...