环境准备

我这里用workstation创建了一个虚拟机,安装centos7.5 mini系统,这台虚拟机上有两张网卡,一张做openstack管理网,一张做为虚拟机的业务网卡。

我用来测试的VM配置是4C,8G,100G

如果想运行ubuntu cloud images的话最好是8C,16G,100G的配置,当然~~如果你用cirros的话那就随意咯!

基本信息如下

<table><tr><td bgcolor=orange> 背景色是 1 orange</td></tr></table>
[root@queens ~]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
[root@queens ~]# uname -r
3.10.0-862.el7.x86_64
[root@queens ~]# egrep '(vmx|svm)' /proc/cpuinfo
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 invpcid rtm rdseed adx smap xsaveopt ibpb ibrs stibp arat spec_ctrl intel_stibp arch_capabilities
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 invpcid rtm rdseed adx smap xsaveopt ibpb ibrs stibp arat spec_ctrl intel_stibp arch_capabilities
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 invpcid rtm rdseed adx smap xsaveopt ibpb ibrs stibp arat spec_ctrl intel_stibp arch_capabilities
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 invpcid rtm rdseed adx smap xsaveopt ibpb ibrs stibp arat spec_ctrl intel_stibp arch_capabilities
[root@queens ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:50:56:87:a6:a5 brd ff:ff:ff:ff:ff:ff
inet 192.168.6.50/24 brd 192.168.6.255 scope global ens192
valid_lft forever preferred_lft forever
inet6 fe80::250:56ff:fe87:a6a5/64 scope link
valid_lft forever preferred_lft forever
3: ens224: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master ovs-system state UP group default qlen 1000
link/ether 00:50:56:87:7f:15 brd ff:ff:ff:ff:ff:ff
inet6 fe80::250:56ff:fe87:7f15/64 scope link
valid_lft forever preferred_lft forever

ens192网卡配置了IP地址,ens224什么都没有配置

[root@queens ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens192
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
IPADDR=192.168.6.53
PREFIX=24
GATEWAY=192.168.6.1
DNS1=114.114.114.114
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
NAME=ens192
UUID=8dd201c9-3c8e-4a01-824c-37f84d6814dd
DEVICE=ens192
ONBOOT=yes
[root@queens ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens224
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
NAME=ens224
DEVICE=ens224
ONBOOT=yes

开始配置

echo queens > /etc/hostname
ipa="$(ip a show ens192 | grep ens192 | grep global | awk '{print $2}' | awk -F/ '{print $1}')"
echo -e "$ipa\tqueens" >> /etc/hosts
systemctl stop NetworkManager
systemctl disable NetworkManager
systemctl stop firewalld
systemctl disable firewalld
sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config
setenforce 0
getenforce
yum install -y epel-release
yum install -y ansible axel vim git curl wget lrzsz gcc python-devel python-pip docker-ce
yum install -y iperf sysstat nload net-tools dstat blktrace fio tcpdump ltrace lsof iptraf lshw cpuid numactl mdadm lsscsi sysbench mtr vnstat collectl iftop trafshow nethogs man strace perf iotop atop hping3 systemtap nmon htop bwm-ng glances usbutils pciutils util-linux-ng smartmontools #这个是一些常用软件,完全不用安装,个人习惯而已
reboot

重启完成后,继续配置

wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
pip install --upgrade pip
mkdir /etc/systemd/system/docker.service.d
tee /etc/systemd/system/docker.service.d/kolla.conf << 'EOF'
[Service]
MountFlags=shared
EOF
sed -i '13d' /usr/lib/systemd/system/docker.service
sed -i '12a ExecStart=/usr/bin/dockerd --registry-mirror=https://ebu037tr.mirror.aliyuncs.com --storage-driver=overlay2 ' /usr/lib/systemd/system/docker.service
systemctl daemon-reload
systemctl restart docker
systemctl enable docker
systemctl status docker
docker info
git clone https://github.com/openstack/kolla-ansible -b stable/queens
cd kolla-ansible/
cp -r etc/kolla/ /etc/kolla/
pip install . -i https://pypi.tuna.tsinghua.edu.cn/simple
kolla-genpwd
sed -i '/keystone_admin_password:/c\keystone_admin_password: password' /etc/kolla/passwords.yml
cat /etc/kolla/passwords.yml | grep keystone_admin_password
cp /etc/kolla/globals.yml /etc/kolla/globals.yml.bak
ipa="$(ip a show ens192 | grep ens192 | grep global | awk '{print $2}' | awk -F/ '{print $1}')"
sed -i '/kolla_base_distro:/c\kolla_base_distro: "centos"' /etc/kolla/globals.yml
sed -i '/kolla_install_type:/c\kolla_install_type: "source"' /etc/kolla/globals.yml
sed -i '/openstack_release:/c\openstack_release: "queens"' /etc/kolla/globals.yml
sed -i '/docker_namespace:/c\docker_namespace: "kolla"' /etc/kolla/globals.yml
sed -i '/network_interface:/c\network_interface: "ens192"' /etc/kolla/globals.yml
sed -i '/neutron_external_interface:/c\neutron_external_interface: "ens224"' /etc/kolla/globals.yml
sed -i '/enable_haproxy:/c\enable_haproxy: "no"' /etc/kolla/globals.yml
sed -i '/nova_compute_virt_type:/c\nova_compute_virt_type: "qemu"' /etc/kolla/globals.yml
sed -i "s/\(^kolla_internal_vip_address:\).*/\1 \"${ipa}\"/" /etc/kolla/globals.yml

配置完之后检查下

[root@queens ~]# egrep "^[^#]" /etc/kolla/globals.yml
---
kolla_base_distro: "centos"
kolla_install_type: "source"
openstack_release: "queens"
kolla_internal_vip_address: "192.168.6.50"
docker_namespace: "kolla"
network_interface: "ens192"
neutron_external_interface: "ens224"
enable_haproxy: "no"
nova_compute_virt_type: "qemu"
ironic_dnsmasq_dhcp_range:
tempest_image_id:
tempest_flavor_ref_id:
tempest_public_network_id:
tempest_floating_network_name:

快照,快照,快照

一定记得给虚机做个快照,一定记得给虚机做个快照,一定记得给虚机做个快照。

pull镜像并部署

kolla-ansible prechecks
kolla-ansible pull
kolla-ansible deploy
kolla-ansible post-deploy
pip install --ignore-installed ipaddress PyYAML
pip install python-openstackclient
[option]可选执行
如果安装python-openstackclient出现错误可以临时指定pip源来重新执行python-openstackclient的安装,可以试下下面的命令
pip install -i https://pypi.mirrors.ustc.edu.cn/simple/ python-openstackclient
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple python-openstackclient
[option]可选执行
如果想安装其他的client,请执行以下命令
pip install python-PROJECTclient
请把PROJECT换成cinder或者glance等等等等等等
barbican - Key Manager Service API
ceilometer - Telemetry API
cinder - Block Storage API and extensions
cloudkitty - Rating service API
designate - DNS service API
fuel - Deployment service API
glance - Image service API
gnocchi - Telemetry API v3
heat - Orchestration API
magnum - Container Infrastructure Management service API
manila - Shared file systems API
mistral - Workflow service API
monasca - Monitoring API
murano - Application catalog API
neutron - Networking API
nova - Compute API and extensions
senlin - Clustering service API
swift - Object Storage API
trove - Database service API
sed -i.bak "s@\(^EXT_NET_CIDR=\).*@\1='10.10.20.0/24'@g" /usr/share/kolla-ansible/init-runonce
sed -i.bak "s@\(^EXT_NET_RANGE=\).*@\1='start=10.10.20.110,end=10.10.20.254'@g" /usr/share/kolla-ansible/init-runonce
sed -i.bak "s@\(^EXT_NET_GATEWAY=\).*@\1='10.10.20.1'@g" /usr/share/kolla-ansible/init-runonce
[root@queens ~]# cat /usr/share/kolla-ansible/init-runonce | grep ^EXT_NET
EXT_NET_CIDR='10.10.20.0/24'
EXT_NET_RANGE='start=10.10.20.110,end=10.10.20.254'
EXT_NET_GATEWAY='10.10.20.1'
source /etc/kolla/admin-openrc.sh
cd /usr/share/kolla-ansible/ && ./init-runonce

由于错误的出现,可能需要多次的部署,而有些错误重新部署是不会进行修正的,所以需要将整个环境进行清理:

tools/cleanup-containers                #可用于从系统中移除部署的容器
tools/cleanup-host #可用于移除由于残余网络变化引发的docker启动的neutron-agents主机
tools/cleanup-images #可用于从本地缓存中移除所有的docker image

登录配置OpenStack

此时就可以访问自己的IP地址了

使用浏览器访问Dashboard,我这里地址就是192.168.6.50

用户名为admin密码为password

1.登录之后需要自己创建实例类型



2.自己创建网络子网路由器

3.导入镜像

可以参考https://www.cnblogs.com/tcicy/p/10306306.html

4.创建实例

目前还有个问题,就是我还不知道怎么给虚拟机分配浮动IP地址,没有浮动IP地址的话就没有办法让外部网络设备直接访问ubuntu cloud images instance 18.04.

不过经过这个过程,已经搭建完成OpenStack,比起以前的版本来说那可是相当的简单简洁了。

后面开始你们的表演。

如果有问题可以直接网站内消息或者tcicy#126.com

顺便说下Markdown 真香

kolla queens on centos7.5 -all in one的更多相关文章

  1. Kolla 让 OpenStack 部署更贴心

    目录 目录 Kolla 简介 Kolla & Kolla-ansible 部署 OpenStack 准备操作系统基础环境 准备 Python 基础环境 准备 Docker 基础环境 安装 ko ...

  2. kolla安装Queens版本OpenStack(ceph后端)

    OpenStack all-in-one部署: 本次部署为OpenStack Queens版本部署,使用All-in-one,单节点部署. 物理资源:8核,32GB,硬盘400GB(3个盘),2网卡. ...

  3. CentOS7进行OpenStack(queens)最小化部署实验出现的问题与解决过程

    注:此文为<OpenStack(queens)最小化搭建记录——控制与计算共两个节点>的补充 1.chrony时间同步服务搭建的时候,出现计算节点无法与控制节点同步.(controller ...

  4. kolla单节点部署openstack

    virtualbox环境: 双网卡:enp0s3(桥接)   192.168.102.194 enp0s8(桥接)   无ip 块存储  50G 关闭防火墙,selinux. 配置yum源:wget  ...

  5. devstack 安装(centos7)

    1. 创建devstack用户 sudo useradd -s /bin/bash -d /opt/stack -m stackecho "stack ALL=(ALL) NOPASSWD: ...

  6. kolla之docker私有仓库创建

    kolla镜像自从P版以后就没有向之前版本直接下载一个tar然后放入仓库那么简单了. 正式开始搭建仓库: 1.启动仓库容器 docker run  -d -v /opt/registry:/var/l ...

  7. kolla部署all-in-one环境(N版)

    简单介绍: Kolla 是 OpenStack 大帐篷模式下的官方子项目之一,其主要目标是通过利用 Docker 容器以及 Ansible 自动化部署工具,来为 OpenStack 云平台提 供一个简 ...

  8. kolla 安装

    下载 kolla-ansible 和 kolla 源码: git clone http://git.trystack.cn/openstack/kolla-ansible -b stable/quee ...

  9. O01-Linux CentOS7中利用RDO部署OpenStack

    一.前言 1.RDO是红帽Red Hat 的一个开源项目,全称是RPM Distribution of OpenStack,能够帮助我们快捷部署OpenStack项目. 官方部署文档:https:// ...

随机推荐

  1. asd短片数篇

    黄乙己 黄乙己是站着AK而正常的唯一的人.他身材挺高大:蜡黄脸色,眼角间时常夹着些饼干屑:一副黑色的眼镜.虽然挺正常,可是他有良好的饮食习惯,似乎十多个月都是吃的牛奶泡饭,也没有洗饭盒.他对人说话,总 ...

  2. LDAP&it's usage

    LDAP: 的英文全称是Lightweight Directory Access Protocol,简称为LDAP.LDAP是轻量目录访问协议[1],它是基于X.500标准的,但是简单多了并且可以根据 ...

  3. Java中HBase的集中過濾器

    比較過濾器:    rowKey过滤器 RowFilter    列族过滤器 FamilyFilter    列过滤器               QualifierFilter    列值过滤器   ...

  4. C语言入门(1)

    开始学习C语言 第一个C语言程序 #include<stdio.h> int main() { printf("Hello World!"); } C程序结构 1. 头 ...

  5. APIPA

    自动专用IP地址(Automatic Private IP Address,APIPA)是当客户端无法从DHCP服务器中获得IP地址时自动配置的地址.IPv4地址前缀169.254/16已经被IANA ...

  6. java web 登录后更新JSESSIONID

    https://huangqiqing123.iteye.com/blog/2031455 登录前的请求一般都是http的,http是不安全的,假设用户登录前的JSESSIONID被人取得,如果登录后 ...

  7. RESTful摘要

    一种标准的模式的格式化URL为 /version/resource/key 例如,映射一个标识为"rasmus"的人 /v1/people/rasmus 安全性:安全的方法,获取资 ...

  8. MySQL Execution Plan--执行计划中的Type列

    在一次的优化过程中,由于没有关注执行计划中type列,仅看key列来查看"使用到的索引",导致优化过程走了不少弯路. 以下面SQL为例: SELECT wave_no, SUM(I ...

  9. C# EnumHelper Enum的值,Description,ToString()的相互转换

    首先定义枚举类型,如下: /// <summary> /// 板块 /// </summary> public enum Plate {         [Descriptio ...

  10. A*搜索详解(1)——通往基地的最短路线

    假设地图上有一片树林,坦克需要绕过树林,走到另一侧的军事基地,在无数条行进路线中,哪条才是最短的? 这是典型的最短寻径问题,可以使用A*算法求解.A*搜索算法俗称A星算法,是一个被广泛应用于路径优化领 ...