【OpenStack云平台】搭建openstack云平台
1. 系统镜像
安装运行环境系统要求为CentOS7.5,内核版本不低于3.10。
CentOS-7.5-x86_64-DVD-1804.iso
Chinaskill_Cloud_iaas.iso
2. 网络架构及硬件配置
| 主机名 | 内存 | 硬盘1 | 硬盘2 | IP地址(VMnet1) | IP地址(VMnet8) |
|---|---|---|---|---|---|
| controller | 4G | 100G | 无 | 192.168.100.10 | 192.168.200.10 |
| compute | 4G | 100G | 200G | 192.168.100.20 | 192.168.200.20 |
3. 基础环境部署
3.1 配置映射、主机名、网络、关闭防火墙
computer节点和compute节点:
修改/etc/hosts文件添加映射
192.168.100.10 controller
192.168.100.20 compute

3.1.1 controller节点
修改主机名:
hostnamectl set-hostname controller
配置网络:
修改BOOTPROTO=dhcp (dhcp改为static) ONBOOT=no (no改为yes)
ens33添加:
IPADDR=192.168.100.10
PREFIX=24
GATEWAY=192.168.100.1
ens34添加:
IPADDR=192.168.200.10
PREFIX=24


关闭防火墙及修改配置文件:
[root@controller ~]# systemctl stop firewalld 关闭防火墙
[root@controller ~]# systemctl disable firewalld
[root@controller ~]# vi /etc/selinux/config
SELINUX=enforcing (enforcing 改为disabled)
[root@controller ~]# setenforce 0 #立即生效
[root@controller ~]# getenforce

3.1.2 compute 节点
修改主机名:
hostnamectl set-hostname compute
配置网络:
修改BOOTPROTO=dhcp (dhcp改为static) ONBOOT=no (no改为yes)
ens33添加:
IPADDR=192.168.100.20
PREFIX=24
GATEWAY=192.168.100.1
ens34添加:
IPADDR=192.168.200.20
PREFIX=24


关闭防火墙及修改配置文件:
[root@compute ~]# systemctl stop firewalld #关闭防火墙
[root@compute ~]# systemctl disable firewalld
[root@compute ~]# vi /etc/selinux/config
SELINUX=enforcing (enforcing 改为disabled)
[root@compute ~]# setenforce 0 #立即生效
[root@compute ~]# getenforce
3.2 挂载镜像、配置yum源
3.2.1 controller节点
上传centos7.5镜像和chinaskills_cloud_iaas.iso镜像至controller节点。


chinaskills_cloud_iaas.iso镜像上传方式如上。
查看镜像是否已上传

[root@controller ~]# mkdir /opt/{iaas,centos} #创建两个挂载镜像的文件夹
[root@controller ~]# mv /etc/yum.repos.d/CentOS-* /home #备份原yum源配置文件
[root@controller ~]# vi /etc/yum.repos.d/local.repo #创建本地yum源配置文件
[iaas]
name=iaas
baseurl=file:///opt/iaas/iaas-repo
gpgcheck=0
enabled=1
[centos]
name=centos
baseurl=file:///opt/centos
gpgcheck=0
enabled=1
[root@controller ~]# mount -o loop /CentOS-7.5-x86_64-DVD-1804.iso /opt/centos
[root@controller ~]# mount -o loop /Chinaskill_Cloud_iaas.iso /opt/iaas
[root@controller ~]# yum clean all #更新yum源配置
[root@controller ~]# yum repolist #显示仓库

#搭建ftp服务器
[root@controller ~]# yum -y install vsftpd
[root@controller ~]# vi /etc/vsftpd/vsftpd.conf
添加 anon_root=/opt/
[root@controller ~]# systemctl restart vsftpd
[root@controller ~]# systemctl enable vsftpd
3.2.2 compute节点
[root@compute ~]# mv /etc/yum.repos.d/CentOS-* /home #备份原yum源配置文件
[root@compute ~]# vi /etc/yum.repos.d/local.repo #创建本地yum源配置文件
[centos]
name=centos
baseurl=ftp://192.168.100.10/centos
gpgcheck=0
enabled=1
[iaas]
name=iaas
baseurl=ftp://192.168.100.10/iaas-repo
gpgcheck=0
enabled=1
[root@compute ~]# yum clean all #更新yum源配置
[root@compute ~]# yum repolist #显示仓库


3.3 计算节点分区
在compute节点上利用空白分区划分2个100G分区。
[root@compute ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
Device does not contain a recognized partition table
使用磁盘标识符 0x34bc5373 创建新的 DOS 磁盘标签。
命令(输入 m 获取帮助):n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p):
Using default response p
分区号 (1-4,默认 1):
起始 扇区 (2048-209715199,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-209715199,默认为 209715199):+25G
分区 1 已设置为 Linux 类型,大小设为 25 GiB
命令(输入 m 获取帮助):n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p):
Using default response p
分区号 (2-4,默认 2):
起始 扇区 (52430848-209715199,默认为 52430848):
将使用默认值 52430848
Last 扇区, +扇区 or +size{K,M,G} (52430848-209715199,默认为 209715199):+25G
分区 2 已设置为 Linux 类型,大小设为 25 GiB
命令(输入 m 获取帮助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
[root@compute ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 200G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 199G 0 part
├─centos-root 253:0 0 50G 0 lvm /
├─centos-swap 253:1 0 2G 0 lvm [SWAP]
└─centos-home 253:2 0 147G 0 lvm /home
sdb 8:16 0 100G 0 disk
├─sdb1 8:17 0 25G 0 part
└─sdb2 8:18 0 25G 0 part
sr0 11:0 1 4.2G 0 rom

3.4 编辑环境变量
controller和compute节点都要操作
编辑文件/etc/xiandian/openrc.sh,此文件是安装过程中的各项参数,根据每项参数上一行的说明及服务器实际情况进行配置。
[root@controller ~]# yum -y install iaas-xiandian
[root@controller ~]# vi /etc/xiandian/openrc.sh
[root@compute ~]# yum -y install iaas-xiandian
[root@compute ~]# vi /etc/xiandian/openrc.sh
HOST_IP=(控制节点IP地址)
HOST_PASS=000000
HOST_NAME=(控制节点主机名)
HOST_IP_NODE=(计算节点IP地址)
HOST_PASS_NODE=000000
HOST_NAME_NODE=(控制节点主机名)
network_segment_IP=192.168.100.0/24
RABBIT_USER=openstack
RABBIT_PASS=000000
DB_PASS=000000
DOMAIN_NAME=demo
ADMIN_PASS=000000
DEMO_PASS=000000
KEYSTONE_DBPASS=000000
GLANCE_DBPASS=000000
GLANCE_PASS=000000
NOVA_DBPASS=000000
NOVA_PASS=000000
NEUTRON_DBPASS=000000
NEUTRON_PASS=000000
METADATA_SECRET=000000
INTERFACE_IP=(当前节点IP地址)
INTERFACE_NAME=ens34 (外部网络网卡名称)
Physical_NAME=provider (外部网络适配器名称)
minvlan=(vlan网络范围的第一个vlanID)
maxvlan=vlan网络范围的最后一个vlanID)
CINDER_DBPASS=000000
CINDER_PASS=000000
BLOCK_DISK=(计算节点第一块磁盘分区名)
SWIFT_PASS=000000
OBJECT_DISK=(计算节点第二块磁盘分区名)
STORAGE_LOCAL_NET_IP=(计算节点IP地址)
HEAT_DBPASS=000000
HEAT_PASS=000000
ZUN_DBPASS=000000
ZUN_PASS=000000
KURYR_DBPASS=000000
KURYR_PASS=000000
CEILOMETER_DBPASS=000000
CEILOMETER_PASS=000000
AODH_DBPASS=000000
AODH_PASS=000000
3.5 通过脚本安装服务
3.5.1 执行脚本iaas-pre-host.sh进行安装
controller节点:
安装完成后同时重启,重启后需重新挂载iso镜像
[root@controller ~]# iaas-pre-host.sh
[root@controller ~]# reboot #重启
[root@controller ~]# mount -o loop CentOS-7-x86_64-DVD-1804.iso /opt/centos/
[root@controller ~]# mount -o loop chinaskills_cloud_iaas.iso /opt/iaas/
compute节点:
[root@controller ~]# iaas-pre-host.sh
[root@controller ~]# reboot #重启
3.5.2 Mysql数据库服务
controller节点:
[root@controller ~]# iaas-install-mysql.sh
3.5.3 keystone认证服务
controller节点:
[root@controller ~]# iaas-install-keystone.s
3.5.4 Glance镜像服务
controller节点:
[root@controller ~]# iaas-install-glance.sh
3.5.5 nova计算服务
controller节点:
[root@controller ~]# iaas-install-nova-controller.sh
compute节点:
[root@compute ~]# iaas-install-nova-compute.sh
3.5.6 Neutron网络服务
controller节点:
[root@controller ~]# iaas-install-neutron-controller.sh
compute节点:
[root@compute ~]# iaas-install-neutron-compute.sh
3.5.7 Dashboard服务
controller节点:
[root@controller ~]# iaas-install-dashboard.sh
在浏览器中输入http://192.168.100.10/dashboard
注:检查防火墙规则,确保允许http服务相关端口通行,或者关闭防火墙
Domain:demo
用户名:admin
密码:000000

出现以下图示表示云平台搭建成功。

期待下次的分享,别忘了三连支持博主呀~
我是 念舒_C.ying ,期待你的关注~
【OpenStack云平台】搭建openstack云平台的更多相关文章
- 在阿里云上搭建 Spark 实验平台
在阿里云上搭建 Spark 实验平台 Hadoop2.7.3+Spark2.1.0 完全分布式环境 搭建全过程 [传统文化热爱者] 阿里云服务器搭建spark特别坑的地方 阿里云实现Hadoop+Sp ...
- 基于Proxmox平台搭建3D云教室
背景 本文介绍了在 Proxmox VE 虚拟化平台上使用NVIDIA A16 GPU,开启vGPU特性,利用DoraCloud 搭建3D云教室的方案. Proxmox virtualization ...
- 可道云kodexplorer搭建私有云后的配置优化
一.上传下载速度优化首先明确可道云没有对上传下载做任何限制,速度快慢和网络环境有关.可道云是基于http上传,所以和其他http上传速度基本一致:可以对比其他web系统或网站说附件上传速度.同其他例如 ...
- [Openwrt 项目开发笔记]:Openwrt平台搭建(一)
[Openwrt项目开发笔记]系列文章传送门:http://www.cnblogs.com/double-win/p/3888399.html 正文: 最近开始着手进行Openwrt平台的物联网网关设 ...
- 搭建Openstack云平台
实验室需要做一个大数据平台项目,临时接下需要部署实验室云平台的任务,由于之前没有接触过相关技术,仅以此篇作为纪录文,记录一下我的openstack的初步学习以及搭建过程. 1.openstcak及其组 ...
- Centos 7 搭建OpenStack 私有云——(1)基础环境配置
1.简介: OpenStack是一个由NASA(美国国家航空航天局)和Rackspace合作研发并发起的,以Apache许可证授权的自由软件和开放源代码项目. OpenStack是一个开源的云计算管理 ...
- 轻松搭建Windows8云平台开发环境
原文:轻松搭建Windows8云平台开发环境 Windows Store应用是基于Windows 8操作系统的新一代Windows应用程序,其开发平台以及运行模式和以往传统平台略有不同.为了帮助更多开 ...
- SAAS云平台搭建札记: (一) 浅论SAAS多租户自助云服务平台的产品、服务和订单
最近在做一个多租户的云SAAS软件自助服务平台,途中遇到很多问题,我会将一些心得.体会逐渐分享出来,和大家一起探讨.这是本系列的第一篇文章. 大家知道,要做一个全自助服务的SAAS云平台是比较复杂的, ...
- SAAS云平台搭建札记: (二) Linux Ubutu下.Net Core整套运行环境的搭建
最近做的项目,由于预算有限,公司决定不采购Windows服务器,而采购基于Linux的服务器. 一般的VPS服务器,如果使用Windows系统,那么Windows Server2012\2016安装好 ...
- Redis之高可用、集群、云平台搭建
原文:Redis之高可用.集群.云平台搭建 文章大纲 一.基础知识学习二.Redis常见的几种架构及优缺点总结三.Redis之Redis Sentinel(哨兵)实战四.Redis之Redis Clu ...
随机推荐
- VS Code C++ 代码格式化(clang-format)
--- # 语言: None, Cpp, Java, JavaScript, ObjC, Proto, TableGen, TextProto Language: Cpp # BasedOnStyle ...
- C#/VB.NET 在Word文档中插入分页符
分页符是分页的一种符号,上一页结束以及下一页开始的位置.通查用于在指定位置强制分页.本文将分为两部分来介绍如何在Word文档中插入分页符.并附上C#/VB.NET以供参考,详情请阅读以下内容. 在特定 ...
- Python数据科学手册-Pandas:数据取值与选择
Numpy数组取值 切片[:,1:5], 掩码操作arr[arr>0], 花哨的索引 arr[0, [1,5]],Pandas的操作类似 Series数据选择方法 Series对象与一维Nump ...
- 基于OpenHarmony的智能喝水提醒器
一.硬件说明 Neptune OpenHarmony物联网IOT模组Wi-Fi&蓝牙双模开发板.超声波模块.蜂鸣器模块.杜邦线若干 开发板相关资料:https://gitee.com/hiho ...
- Java内部类初探
Java内部类初探 之前对内部类的概念不太清晰,在此对内部类与外部类之间的关系以及它们之间的调用方式进行一个总结. Java内部类一般可以分为以下三种: 成员内部类 静态内部类 匿名内部类 一.成员内 ...
- flutter系列之:Material中的3D组件Card
目录 简介 Card详解 Card的使用 总结 简介 除了通用的组件之外,flutter还提供了两种风格的特殊组件,其中在Material风格中,有一个Card组件,可以很方便的绘制出卡片风格的界面, ...
- x-pack设置完毕后,es-head无法登陆的问题, 登录需要账号密码的问题
在elasticsearch.yml中添加如下三行配置 http.cors.enabled: true http.cors.allow-origin: "*" http.cors. ...
- 数据卷Volume
数据卷概述 Kubernetes Volume(数据卷)主要解决了如下两方面问题: 数据持久性:通常情况下,容器运行起来之后,写入到其文件系统的文件暂时性的.当容器崩溃后,kubelet 将会重启该容 ...
- U盘插入电脑后图标是灰色的,打开提示“请将磁盘插入驱动器”
问题描述: U盘插到win10电脑上后,U盘图标显示灰色,双击打开提示:请将磁盘插入驱动器,无法格式化,在U盘点右键/属性,显示为容量等为0. 解决办法如下: 1.首先要下载一个U盘芯片检测工具chi ...
- vue3中pinia的使用总结
pinia的简介和优势: Pinia是Vue生态里Vuex的代替者,一个全新Vue的状态管理库.在Vue3成为正式版以后,尤雨溪强势推荐的项目就是Pinia.那先来看看Pinia比Vuex好的地方,也 ...