笔记说明:目前考试是基于RHELOSP13(32G)来进行环境部署,引入了容器,而学习是基于RHELOSP6来安装部署的,基于Openstack。


讨论:openstack、虚拟化和云计算的关系以及区别是什么?

答:Openstack自身是不提供虚拟化技术的,调用多种技术实现多资源池的管理,对外提供统一的接口,只是系统的控制面;而虚拟化是openstack底层的技术实现手段之一,并非核心关注点,它主要是环境隔离、资源复用、降低隔离损耗,提升运行效率,提供高级虚拟化特性,虚拟化是云计算的基础;openstack只是构成云计算的关键组件,如内核、骨干、框架、总线,所以openstack不是云计算也不是虚拟化。云计算是一种服务,其本质就是为用户提供优质的服务,利用虚拟化技术、分布式技术、软件定义等技术为用户提供便捷、简单、准确、可用、按需所取的服务。

一、部署方案和规划

1、由于我自己的电脑是24G内存,所有采用以下部署方案:

节点名称 内存分配 cpu分配 磁盘分配 网卡分配 备注 IP地址
controller节点 8G 4cpus 100G 2块网卡 复用为compute节点 net1:192.168.122.132 /24
compute节点   4G 4cpus 100G 2块网卡 compute计算节点 net1:192.168.122.134 /24
ntp节点(master) 1G 1cpus 20G 2块网卡 ntp必须单独部署,不可以与控制节点和计算节点复用 net1:192.168.122.136 /24

2、使用到的镜像下载地址

(1)rhel-server-7.1-x86_64-dvd    提取码:8j4z 
(2)RHEL7OSP-6.0-2015-02-23.2-x86_64      提取码:3fiw 
二、部署openstack教程

1、NTP节点操作(备注:可以使用除RHEL7.1以外的CentOS7系列版本)

(1)关闭selinux、防火墙。开机不自启,设置主机名

setenforce 0
sed -i s/^SELINUX=.*$/SELINUX=disabled/ /etc/selinux/config
systemctl stop firewalld && systemctl disable firewalld
hostnamectl set-hostname master

(2)设置/etc/hosts文件

vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.122.132 controller
192.168.122.134 compute01
192.168.122.136 master

(3)查看磁盘大小、并在根/目录下创建iso目录、上传镜像到此目录,在/var/www/html目录下创建rhel7和openstack两个目录

df -h
cd / && mkdir iso / && cd iso/
ls

cd /var/www/html
mkdir rhel7
mkdir openstack

(4)编辑/etc/fstab设置自动挂载,保存完后全部挂载

vim /etc/fstab
/iso/rhel-server-7.1-x86_64-dvd.iso /var/www/html/rhel7 iso9660 defaults 0 0
/iso/RHEL7OSP-6.0-2015-02-23.2-x86_64.iso /var/www/html/openstack iso9660 defaults 0 0
mount -a

(5)编写rhel7和openstack的yum源仓库,然后将rhel7.repo和openstack.repo拷贝到/var/www/html目录下

点击查看代码
vim /etc/yum.repos.d/rhel7.repo
[rhel7.1]
name=rhel7.1
baseurl=http://192.168.122.136/rhel7/
gpgcheck=0
enabled=1
点击查看代码
vim /etc/yum.repos.d/openstack.repo
[RH7-RHOS-6.0]
name=RH7-RHOS-6.0
baseurl=http://192.168.122.136/openstack/RH7-RHOS-6.0/
gpgcheck=0
enabled=1 [RH7-RHOS-6.0-Installer]
name=RH7-RHOS-6.0-Installer
baseurl=http://192.168.122.136/openstack/RH7-RHOS-6.0-Installer/
gpgcheck=0
enabled=1 [RHEL-7-RHSCL-1.2]
name=RHEL-7-RHSCL-1.2
baseurl=http://192.168.122.136/openstack/RHEL-7-RHSCL-1.2/
gpgcheck=0
enabled=1 [RHEL7-Errata]
name=RHEL7-Errata
baseurl=http://192.168.122.136/openstack/RHEL7-Errata/
gpgcheck=0
enabled=1

(6)yum安装必要的软件包bash-com*、wget、vim、httpd、ansible等

yum install -y httpd vim bash-com* wget ansible

(7)配置chrony时间同步,我这台ntp可以连外网,所以我和阿里云的ntp服务器做同步

点击查看代码
# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
server ntp.aliyun.com iburst
# Record the rate at which the system clock gains/losses time.
driftfile /var/lib/chrony/drift # Allow the system clock to be stepped in the first three updates
# if its offset is larger than 1 second.
makestep 1.0 3 # Enable kernel synchronization of the real-time clock (RTC).
rtcsync # Enable hardware timestamping on all interfaces that support it.
#hwtimestamp * # Increase the minimum number of selectable sources required to adjust
# the system clock.
#minsources 2 # Allow NTP client access from local network.
allow 192.168.122.0/24 # Serve time even if not synchronized to a time source.
#local stratum 10 #如何没连接外网,就把这个注释取消了,允许使用本地 # Specify file containing keys for NTP authentication.
#keyfile /etc/chrony.keys # Specify directory for log files.
logdir /var/log/chrony # Select which information is logged.
#log measurements statistics tracking

(8)重启httpd服务和chrony服务并设置开机自启

systemctl restart httpd && systemctl enable httpd && systemctl restart chronyd.service && systemctl enable chronyd

(9)开启网络时间同步以及ntp服务状态

timedatectl set-ntp true
chronyc sourcestats

2、controller和compute节点操作

方法一:

【1】相同操作

(1)重复NTP节点(1)、(2)操作

(2)下载192.168.122.136的本地yum源

wget -O /etc/yum.repos.d/rhel7.repo http://192.168.122.136/rhel7.repo
wget -O /etc/yum.repos.d/openstack.repo http://192.168.122.136/openstack.repo
yum clean all
yum makecache

(3)进行ntp时间同步

vim /etc/chrony.conf
server 192.168.122.136
systemctl enable chronyd && systemctl restart chronyd
ntpdate 192.168.122.136
chronyc sources

(4)将控制节点和计算节点进行升级(实验环境可这样操作,生产环境切记不能这么操作)然后重启机器

yum -y update
reboot

【2】不同操作

(1)在controller节点上安装自动化工具openstack-packstack(OPS6基于pupput自动化工具搞的)并生成自动化配置文件(应答文件)

yum install openstack-packstack
packstack --help | grep answer
packstack --gen-answer-file=answer.txt #生成名字answer.txt的应答文件

(2)在controller上修改应答文件,NTP、CONTROLLER、COMPUTE、NETWORK、HORIZON_SSL、DEMO、ADMIN、REGION等配置文件

CONFIG_NTP_SERVERS=192.168.122.136     #NTP时间服务器的地址
CONFIG_CONTROLLER_HOST=192.168.122.132 #设置控制节点地址
CONFIG_COMPUTE_HOSTS=192.168.122.132,192.168.122.134 #设置计算节点地址
CONFIG_NETWORK_HOSTS=192.168.122.132 #设置网络节点(neutron复用控制节点)
CONFIG_HORIZON_SSL=y #要HORIZON的SSL加密
CONFIG_PROVISION_DEMO=n #不开启演示 all-in-one 一般是测试用的
CONFIG_KEYSTONE_ADMIN_PW=redhat #配置登陆密码
CONFIG_KEYSTONE_REGION=BeiJing #配置区域为BeiJing

(3)在controller上执行应答文件,自动部署openstack

packstack --answer-file=answer.txt

(4)部署成功图

RHCA-openstack学习部署笔记-CL210的更多相关文章

  1. openstack学习笔记一 虚拟机启动过程代码跟踪

    openstack学习笔记一 虚拟机启动过程代码跟踪 本文主要通过对虚拟机创建过程的代码跟踪.观察虚拟机启动任务状态的变化,来透彻理解openstack各组件之间的作用过程. 当从horizon界面发 ...

  2. OpenStack学习参考

    预备知识 Python 调试手段.日志:pdb 开源框架 Django 面向对象:类.继承.多态 编码规范 搭建环境 安装docker,下载openstack镜像,关于docker参考 使用fuel来 ...

  3. 深入理解Openstack自动化部署

    前言 说实话,看到自己在博客园的排名感到惭愧,因为自己最近两年没有持续地在博客园上写技术博客了,有人私下问我是不是荒废了?翻翻15年和16年的博客,真的是少的可怜.一方面的确由于岗位的变化,导致了工作 ...

  4. OpenStack安装部署管理中常见问题解决方法

    一.网络问题-network 更多网络原理机制可以参考<OpenStack云平台的网络模式及其工作机制>. 1.1.控制节点与网络控制器区别 OpenStack平台中有两种类型的物理节点, ...

  5. WCF入门教程(四)通过Host代码方式来承载服务 一个WCF使用TCP协议进行通协的例子 jquery ajax调用WCF,采用System.ServiceModel.WebHttpBinding System.ServiceModel.WSHttpBinding协议 学习WCF笔记之二 无废话WCF入门教程一[什么是WCF]

    WCF入门教程(四)通过Host代码方式来承载服务 Posted on 2014-05-15 13:03 停留的风 阅读(7681) 评论(0) 编辑 收藏 WCF入门教程(四)通过Host代码方式来 ...

  6. 学习ThinkPHP笔记

    学习ThinkPHP笔记 TP的模块化设计 名称 描述 应用 基于同一个入口文件访问的项目我们称之为一个应用. 模块 一个应用下面可以包含多个模块,每个模块在应用目录下面都是一个独立的子目录. 控制器 ...

  7. Openstack组件部署 — Keystone功能介绍与认证实现流程

    目录 目录 前文列表 Keystone认证服务 Keystone认证服务中的概念 Keystone的验证过程 简单来说 前文列表 Openstack组件部署 - Overview和前期环境准备 Ope ...

  8. Elasticsearch入门学习重点笔记

    原文:Elasticsearch入门学习重点笔记 必记知识点 Elasticsearch可以接近实时的搜索和存储大量数据.Elasticsearch是一个近实时的搜索平台.这意味着当你导入一个文档并把 ...

  9. 每天成长一点---WEB前端学习入门笔记

    WEB前端学习入门笔记 从今天开始,本人就要学习WEB前端了. 经过老师的建议,说到他每天都会记录下来新的知识点,每天都是在围绕着这些问题来度过,很有必要每天抽出半个小时来写一个知识总结,及时对一天工 ...

随机推荐

  1. CSS中content属性的妙用

    前言 本文讲解CSS中使用频率并不高的content属性,通过多个实用的案例,带你由浅入深的掌握content的用法,让代码变得更加简洁.高效. 定义 W3school中这样定义: content 属 ...

  2. 使用vue实现简单的待办事项

    待办事项 效果图 目录结构 详细代码 AddNew.vue <template> <div> <input v-model="content"/> ...

  3. SQL语句(一)基础查询与过滤数据

    目录 一.数据库测试表 二.基础查询 1. 获得需要的记录的特定字段 2. 查询常量值 3. 查询表达式 4. 查询函数 5. 起别名 6. 去重 7. CONCAT函数的简单使用 三.过滤数据 大纲 ...

  4. Java自定义注解使用和详解

    前言 我们在做开发springboot 项目时候会遇到各种各样注解,使用各种各样注解,极大的简便了我们开发流程,方式,从JDK5开始支持 注解是Java语言的一种强大的功能 可以理解为代码上的特殊标记 ...

  5. 前端 | Nuxt.js axios baseURL,proxy 代理

    平时用 Vue 写前端时,对于 axios 请求的常规操作一般是 统一定义好一个 axios 对象,使用 axios.defaults.baseURL 设置 baseURL 也不是不能直接把服务器地址 ...

  6. PXE高效批量装机

    目录 一.PXE概述 二.PXE的优点 三.搭建PXE的前提 四.搭建PXE远程安装服务器 4.1.安装并启用TFTP服务 4.2.安装dhcp服务 4.3.准备linux内核.初始化镜像文件 4.3 ...

  7. Docker小白到实战之常用命令演示,通俗易懂

    前言 上一篇大概认识了Docker,主要是从概念.架构.优点及流程方面进行阐述,并进行安装和体验: 接下来就开始进行实操学习,在演示过程中会针对关键的知识点进行归纳和总结,这里先从常用命令说起,来吧, ...

  8. Java之Listener

    Java之Listener Listener监听器 监听器有很多种,大部分还是在GUI用的比较多,这里简单记录一点关于HttpSessionListener的 统计session count List ...

  9. 利用Nginx实现反向代理web服务器

    一.Nginx简介 Nginx是一个很强大的高性能Web服务器和反向代理服务器,它具有很多非常优越的特性: 可以高并发连接 内存消耗少 成本低廉 配置文件非常简单 支持Rewrite重写 内置的健康检 ...

  10. AWD比赛组织指南

    目录 题目构建 平台构建 后端部署流程 前端展示 批量启动 check 题目构建 赛题全部使用docker部署,需准备check脚本和镜像 镜像构建注意事项 1.注意web目录权限 2.注意服务是否自 ...