linux 云计算Openstack搭建
Openstack
由NASA和Reckspace合作研发并发起的项目,以Apache许可证为授权
云计算三大支柱模型
IaaS:基础架构即服务
提供服务器/虚拟主机/网络等设备资源
PaaS:平台即服务
提供web中间件/数据库等集成的系统平台
SaaS:软件即服务
提供电子邮件/杀毒/网盘等软件服务
———————————————————————————————————————————————————
OpenStack主要组件
OpenStack覆盖云的各个方面,根据成熟及重要程度的不同,被分解为核心项目,孵化项目
Keystone:实现身份认证
Nova:计算功能,用于为用户管理虚拟机实例
Glance:镜像服务,虚拟机镜像查找及检索系统,支持多种虚拟机镜像格式
Neutron:网络管理,提供云计算的网络虚拟化技术,类似于虚拟机中创建网络,隔离网段的功能,但功能要强大的多
Cinder:块存储(云硬盘),给虚拟机添加磁盘设备
Horizon:ui界面,用于简化用户对服务的操作
Swift:对象存储,用于大规模可扩展系统中内置冗余及高容错机制,为Glance提供镜像存储
Heat:业务流程,实现云基础设施软件运行环境的自动化部署
Openstack部署方式
RDO(redhat Openstack)
自行配置epel及rdo的yum源,并且配置相关的实验环境(ntp,ip,dns)
红帽rhca环境
使用红帽现成的实验环境
——————————————————————————————————————————————
实例:搭建openstack
准备环境 先搭建好dns服务和ntp服务(最好分别搭建,不要在同一台)
DNS服务器ip:192.168.4.12
NTP服务器ip:192.168.4.10
openstack平台ip:192.168.4.11
1.搭建dns服务,IP地址配置为192.168.4.12
[root@rhel7_clone ~]# yum -y install bind
[root@rhel7_clone ~]# vim /etc/named.conf(配置全局设置)
options {
listen-on port 53 { any; };
。。。。。
allow-query { any; };
[root@rhel7_clone ~]# vim /etc/named.rfc1912.zones(在尾行添加申明)
zone "xxsrc.net" IN {
type master;
file "xxsrc.net.zone";
allow-update { none; };
};
[root@rhel7_clone ~]# vim /var/named/xxsrc.net.zone(创建区域配置文件)
$TTL 86400
@ IN SOA ns1.xxsrc.net. root.xxsrc.net. (
20171001
3H
15M
1W
1D )
@ IN NS ns1.xxsrc.net.
ns1 IN A 192.168.4.12(dns服务器地址)
$GENERATE 2-254 rhel$ IN A 192.168.4.$
[root@rhel7_clone ~]# chmod 640 /var/named/xxsrc.net.zone(更改权限)
[root@rhel7_clone ~]# systemctl enable named; systemctl start named(开机自启,启动)
2.搭建ntp服务(ntp,网络时间协议),IP地址配置为192.168.4.10
[root@rhel7_clone ~]# yum -y install ntp
[root@rhel7_clone ~]# vim /etc/ntp.conf
restrict 192.168.4.0 mask 255.255.255.0 nomodify notrap(配置文件有,直接复制,ip段改为要服务的网段)
#server 0.rhel.pool.ntp.org iburst(把server这几行注释)
server 127.127.1.0 iburst(添加)
fudge 127.127.1.0 straum 3(添加)
[root@rhel7_clone ~]# systemctl enable ntpd; systemctl start ntpd(启动)
[root@rhel7_clone ~]# netstat -ulnp | grep :123(查看是否运行)
搭建Openstack
准备一台rhel7服务器,IP地址配置为192.168.4.11
配置3个yum源,分别是rhel7光盘,osp5光盘,rht.tar.gz,
然后更新系统 yum -y update
安装一键安装工具 packstack
最好改一下本机的hosts文件,加上另外两个的主机名及ip
[root@rhel7_2 ~]# ntpdate 192.168.4.10(同步是ntp服务器的时间)
[root@rhel7_2 ~]# yum -y install openstack-packstack
生成应答文件
[root@rhel7_2 ~]# packstack --gen-answer-file answer.txt
更改应答文件
[root@rhel7_2 ~]# vim answer.txt
CONFIG_NTP_SERVERS=192.168.4.10(NTP服务器地址)
CONFIG_KEYSTONE_ADMIN_PW=123456(openstack平台的admin密码)
CONFIG_HORIZON_SSL=y(web平台加密默认n,改为y)
CONFIG_PROVISION_TEMPEST=n(默认y,改为n)
安装openstack
[root@rhel7_2 ~]# packstack --answer-file answer.txt
配置Open VSwitch
虚拟交换机,用来组成虚拟网络
OVS是一个高质量的虚拟交换机技术,虚拟交换机利用软件的方式实现数据交换功能
一台物理服务器上可以配置数十台或者数百台虚拟交换机,而且端口数目可以灵活选择
修改配置文件
[root@rhel7_2 ~]# cd /etc/sysconfig/network-scripts/
[root@rhel7_2 network-scripts]# cp ifcfg-eth0 ifcfg-br-ex(复制一个网卡配置文件)
[root@rhel7_2 network-scripts]# vim ifcfg-eth0(配置OVS桥接网络接口)
DEVICE=eth0
ONBOOT=yes
TYPE=OVSPort
DEVICETYPE=ovs
OVS_BRIDGE=br-ex
[root@rhel7_2 network-scripts]# vim ifcfg-br-ex
DEVICE=br-ex
ONBOOT=yes
BOOTPROTO=none
TYPE=OVSBridge
DEVICETYPE=ovs
IPADDR=192.168.4.11
NETMASK=255.255.255.0
DNS1=192.168.4.12
[root@rhel7_2 ~]# ovs-vsctl add-port br-ex eth0(为br-ex虚拟网卡添加端口)
[root@rhel7_2 ~]# systemctl stop NetworkManager(停止网络服务,不停这个服务会和网络冲突)
[root@rhel7_2 ~]# systemctl disable NetworkManaher(开机不自启)
[root@rhel7_2 ~]# /etc/init.d/network restart(重启网络)
配置好后通过web页面来配置,用户名admin ,密码为应答文件里的密码
firefox :https://192.168.4.11/
Openstack云管理(都是通过web界面来管理)
Horizon:
一个管理openstack平台的web接口,Horizon通过与其他openstack项目的api通信
可以实现与命令行操作的相同效果
openstack使用identity进行身份验证,可以实时跟踪用户及用户被赋予的权限
创建流程:
创建Tenant(项目)
创建Flavor(租户)
创建User(用户)
创建虚拟网络
设置访问与安全
创建虚拟机镜像
——————————————————————————————————————————————————————————————————————
linux 云计算Openstack搭建的更多相关文章
- 零基础转行Linux云计算运维工程师获得20万年薪的超级学习技巧
云计算概念一旦产生便一发不可收拾,成为移动互联网时代最为火热的行业之一.国内各大互联网公司例如阿里.腾讯.百度.网易等纷纷推出自己的云计算产品,3月10日,腾讯云0.01元投标时间更是让云计算在普罗大 ...
- Linux测试环境搭建的学习建议
随着Linux应用的扩展许多朋友开始接触Linux,根据学习Windwos的经验往往有一些茫然的感觉:不知从何处开始学起.这里介绍学习Linux测试环境搭建的一些建议. 一.Linux测试环境搭建从基 ...
- 在Linux(Ubuntu)下搭建ASP.NET Core环境并运行 继续跨平台
最新教程:http://www.cnblogs.com/linezero/p/aspnetcoreubuntu.html 无需安装mono,在Linux(Ubuntu)下搭建ASP.NET Core环 ...
- linux下svn 搭建
linux 下SVN搭建加自动提交更新到指定目录一.安装#yum install subversion yum安装SVN#mkdir -p /opt/svn/repos 创建s ...
- 转载-Linux下svn搭建配置流程
Linux下svn搭建配置流程 一. 源文件编译安装.源文件共两个,为: 1. 下载subversion源文件 subversion-1.6.1.tar.gz http://d136 ...
- linux 生产环境搭建
Linux基础命令杂记 今天又一次搞Linux生产环境搭建.这是种步骤很多,很繁琐而且又不得不做的事情.虽然做过很多次,但还是有很多步骤.命令不记得,每一次到处找资料很麻烦,于是将一些步骤记下,以 ...
- 一步步学习Linux开发环境搭建与使用
00.Linux开发环境搭建与使用1--Linux简史 01.Linux开发环境搭建与使用2--Linux系统(ubuntu)安装方案 02.Linux开发环境搭建与使用3--通过虚拟机安装系统(ub ...
- 基于VMware的虚拟Linux集群搭建-lvs+keepalived
基于VMware的虚拟Linux集群搭建-lvs+keepalived 本文通过keepalived实现lvsserver的的双机热备和真实server之间的负载均衡.这方面的blog挺多,可是每一个 ...
- Linux下快速搭建php开发环境
php开发环境快速搭建 一.Linux下快速搭建php开发环境 1.安装XAMPP for Linux XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包,使用XA ...
随机推荐
- js给页面添加滚动事件并判断滚动方向
<script> var scrollFunc = function (e) { var direct = 0; e = e || window.event; if (e.wheelDel ...
- 2018-01-28-TF源码做版本兼容的一个粗暴方法
layout: post title: 2018-01-28-TF源码做版本兼容的一个粗暴方法 key: 20180128 tags: IT AI TF modify_date: 2018-01-28 ...
- 深度优化LNMP之MySQL
MySQL数据库优化框架体系 1.硬件层面优化 2.操作系统层面优化 3.MySQL数据库层面优化 4.MySQL安全优化 5.网站集群架构上的优化 6.MySQL流程.制度控制优化 1 硬件层面优化 ...
- Python算法——二叉树
一.二叉树 from collections import deque class BiTreeNode: def __init__(self, data): self.data = data sel ...
- 新建play项目eclipsify后导入eclipse后无法debug调试
Error occurred during initialization of VMagent library failed to init: jdwpERROR: Cannot load this ...
- Effective Java 之-----for-each循环优于传统的for循环
如下代码: enum Face {1,2,3,4,5,6}: ...... Collection<Face> faces = Array.asList(Face.values); for( ...
- .NET Core 2.0 问题杂记
一. Ubuntu 14.04 安装 1.安装之前请先删除之前的.net core 版本 命令如下: 1.1 获取安装的.net core 版本 sudo apt --installed list | ...
- Timer类的schedule和scheduleAtFixedRate 简单应用
Timer类可以用作定时任务,主要的方法有schedule和scheduleAtFixedRate. schedule(TimerTask task, Date time) 安排在指定的时间执行指定的 ...
- coredump故障分析
如果一个程序运行3天后才会出错,这个时候 难道需要我们一直用GDB调试程序3天吗? 这个时候我们就需要使用到core dump: 1.Core Dump又叫核心转存.当程序在运行过程中发生异常, 这 ...
- 简单的led驱动程序设计
基于ok6410: led驱动程序: vim led.c #include<linux/kernel.h>#include<linux/module.h>#include< ...