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云平台的更多相关文章

  1. 在阿里云上搭建 Spark 实验平台

    在阿里云上搭建 Spark 实验平台 Hadoop2.7.3+Spark2.1.0 完全分布式环境 搭建全过程 [传统文化热爱者] 阿里云服务器搭建spark特别坑的地方 阿里云实现Hadoop+Sp ...

  2. 基于Proxmox平台搭建3D云教室

    背景 本文介绍了在 Proxmox VE 虚拟化平台上使用NVIDIA A16 GPU,开启vGPU特性,利用DoraCloud 搭建3D云教室的方案. Proxmox virtualization ...

  3. 可道云kodexplorer搭建私有云后的配置优化

    一.上传下载速度优化首先明确可道云没有对上传下载做任何限制,速度快慢和网络环境有关.可道云是基于http上传,所以和其他http上传速度基本一致:可以对比其他web系统或网站说附件上传速度.同其他例如 ...

  4. [Openwrt 项目开发笔记]:Openwrt平台搭建(一)

    [Openwrt项目开发笔记]系列文章传送门:http://www.cnblogs.com/double-win/p/3888399.html 正文: 最近开始着手进行Openwrt平台的物联网网关设 ...

  5. 搭建Openstack云平台

    实验室需要做一个大数据平台项目,临时接下需要部署实验室云平台的任务,由于之前没有接触过相关技术,仅以此篇作为纪录文,记录一下我的openstack的初步学习以及搭建过程. 1.openstcak及其组 ...

  6. Centos 7 搭建OpenStack 私有云——(1)基础环境配置

    1.简介: OpenStack是一个由NASA(美国国家航空航天局)和Rackspace合作研发并发起的,以Apache许可证授权的自由软件和开放源代码项目. OpenStack是一个开源的云计算管理 ...

  7. 轻松搭建Windows8云平台开发环境

    原文:轻松搭建Windows8云平台开发环境 Windows Store应用是基于Windows 8操作系统的新一代Windows应用程序,其开发平台以及运行模式和以往传统平台略有不同.为了帮助更多开 ...

  8. SAAS云平台搭建札记: (一) 浅论SAAS多租户自助云服务平台的产品、服务和订单

    最近在做一个多租户的云SAAS软件自助服务平台,途中遇到很多问题,我会将一些心得.体会逐渐分享出来,和大家一起探讨.这是本系列的第一篇文章. 大家知道,要做一个全自助服务的SAAS云平台是比较复杂的, ...

  9. SAAS云平台搭建札记: (二) Linux Ubutu下.Net Core整套运行环境的搭建

    最近做的项目,由于预算有限,公司决定不采购Windows服务器,而采购基于Linux的服务器. 一般的VPS服务器,如果使用Windows系统,那么Windows Server2012\2016安装好 ...

  10. Redis之高可用、集群、云平台搭建

    原文:Redis之高可用.集群.云平台搭建 文章大纲 一.基础知识学习二.Redis常见的几种架构及优缺点总结三.Redis之Redis Sentinel(哨兵)实战四.Redis之Redis Clu ...

随机推荐

  1. KingbaseES V8R6备份恢复案例之---手工清理冗余历史备份

    案例说明: 对于KingbaseES V8R6的通过sys_rman执行的物理历史备份,可以在执行备份时,备份的保留(retention)策略自动清理.不能通过手工删除备份,可以通过expire参数手 ...

  2. volatile 函数影响子查询提升

    我们知道 volatile 函数会影响SQL的执行性能,比如:volatile 类型函数无法建函数索引.volatile 函数针对每条记录都要执行一次.本篇的例子主要讲述 volatile 类型的函数 ...

  3. EntityFrameworkCore 模型自动更新(上)

    话题 嗯,距离上一次写博文已经过去近整整十个月,还是有一些思考,但还是变得懒惰了,心思也不再那么专注,有点耗费时间,学习也有点停滞不前,那就顺其自然,随心所欲吧,等哪天心血来潮,想写了就写写 模型自动 ...

  4. kubeadm 使用 Calico CNI 以及外部 etcd 部署 kubernetes v1.23.1 高可用集群

    文章转载自:https://mp.weixin.qq.com/s/2sWHt6SeCf7GGam0LJEkkA 一.环境准备 使用服务器 Centos 8.4 镜像,默认操作系统版本 4.18.0-3 ...

  5. 使用traefik进行金丝雀发布

    文章转载自:https://mp.weixin.qq.com/s/nMMN7hAJK6SFn1V1YyxvHA 在 Traefik 2.0 中以服务负载均衡的形式进行了支持.可以将服务负载均衡器看成负 ...

  6. Vue实现拖拽穿梭框功能四种方式

    一.使用原生js实现拖拽 点击打开视频讲解更加详细 <html lang="en"> <head> <meta charset="UTF-8 ...

  7. LeNet-论文阅读

    概述 Yann LeCun, Leon Bottou, Yoshua Bengio, and Patrick Haffner的论文<Gradient-Based Learning Applied ...

  8. 研一小白入坑Go (time使用)

    1 package main 2 3 import ( 4 "fmt" 5 "time" 6 ) 7 8 func main() { 9 // 获取当前时间 1 ...

  9. Python模拟服务端

    本机服务端 import socket # 获取到socket sk = socket.socket() # 获取到地址 ip 和 端口号 address = ('127.0.0.1', 8001) ...

  10. 驱动开发:内核枚举DpcTimer定时器

    在笔者上一篇文章<驱动开发:内核枚举IoTimer定时器>中我们通过IoInitializeTimer这个API函数为跳板,向下扫描特征码获取到了IopTimerQueueHead也就是I ...