2015-4-17
openstack后端管理。zone的作用,分区域,可以把相同业务的放到一个区域,但是平台没有实现,做到了分数据中心,按照区域分配。
想法:把同一数据中心的机器硬盘连接起来当做一个硬盘使用,可以用技术实现,不是用openstack来实现。
镜像的磁盘格式和镜像的容器格式:
磁盘格式:
虚拟机的磁盘格式指的是底层磁盘镜像格式,虚拟机设备厂商有不同的格式放置虚拟机磁盘镜像包含的信息。设置你的镜像磁盘格式为下面的值:
1.raw 无结构的磁盘镜像格式;如果你有一个无扩展的磁盘文件,那么这个磁盘文件可能是裸格式
2.vmdk 能被多种虚拟机管理程序支持的通用格式
3.qcow2 由QEMU模拟器支持,能动态扩展以及支持写时复制特性
4.vhd VHD磁盘格式,一种被VMware,xen,microsoft,virtualbox以及其他虚拟机管理程序通用的磁盘格式
5.vdi 能被virtualbox虚拟机管理程序和QEMU模拟器支持的格式。
容器格式:
镜像容器格式表示包含虚拟机镜像的文件是否也包含虚拟机的metadata数据。
你可设置你的镜像容器格式为以下之一:
bare. 镜像没有容器或者没有封装metadata数据。
ovf. OVF容器格式。
aki. Amazon 内核镜像。
ari. Amazon ramdisk 镜像。
ami. Amazon 虚机镜像。
镜像制作:制作win2003 (需要以下文件)
virtio-win-0.1-30.vfd和virtio-win-0.1-30.iso
Hypervisor(管理程序):
Hypervisor是一种运行在物理服务器和操作系统之间的中间软件层,可允许多个操作系统和应用共享一套基础物理硬件,因此也可以看作是虚拟环境中的“元”操作系统,它可以协调访问服务器上的所有物理设备和虚拟机,也叫虚拟机监视器(Virtual Machine Monitor)。Hypervisor是所有虚拟化技术的核心。非中断地支持多工作负载迁移的能力是Hypervisor的基本功能。当服务器启动并执行Hypervisor时,它会给每一台虚拟机分配适量的内存、CPU、网络和磁盘,并加载所有虚拟机的客户操作系统
OPS们在选择一款合适的合适的虚拟化平台时都要考虑哪些因素呢?如:虚拟化平台的性能,底层的技术实现,跟当前使用的系统的紧密程度,产品的成熟度,是否商业化还是开源,社区的活跃程度,用户支持等等,都是用户选择hypervisor(虚拟化管理程序)应该考虑的重要因素。
最近flexiant出了白皮书,对市场上主流的hypervisors:KVM, Xen, VMware and Hyper-V 做了详细的对比:
KVM-
基于linux的的开源hypervisor,最初是在2007年2月份融合到linux内核中,现在应该是应用最广泛的开源hypervisor。KVM现在用在Rdhat的一些产品上,如:Redhat Enterprise Virtualization (RHEV).
XEN-
同样是一款开源的hypervisor,2003年产生于剑桥大学的研究项目中。它运行在linux上(半虚拟化的hypervisor,dom0作为宿主机,运行Xen平台),最初是由XenSource提供技术支持,2007年被Citrix收购。
VMware-
并不是hypervisor,而是公司的名字,通常使用的vSphere使用了VMware’s ESXi hypervisor. VMware’s hypervisor是非常成熟稳定的。
Hpyer-V
– 是一款有微软提供的商业化的hypervisor,运行在Windows平台上,但是内部可以运行任何其他的操作系统,并且支持多种硬件平台。
ubuntu openstack 安装心得:(ubuntu1404 juno版本)
NTP配置
1、配置ntp服务器,打开文件/etc/ntp.conf增加以下三行内容,目的是让本服务器时间与外部服务器时间同步。如果不能访问外网,NTP服务器将使用本机硬件时钟作为第二选择。
server ntp.ubuntu.com
server 127.127.1.0
fudge 127.127.1.0 stratum 10
控制节点:ntp.conf配置文件。删除以server开头的时间池
并添加server controller iburst
keystone认证服务
数据库服务认证:
1。
# admin_token = ADMIN
# 注意该信息,admin_token参数是用来访问Keystone服务的,即Keystone服务的Token。默认为ADMIN,当然也可以改成别的。客户端可以11使用该Token访问Keystone服务、查看信息、创建其他服务等。
2。
# public_port = 5000
# Keystone提供的认证授权服务监听的端口,通常为公网(外网),也可以是内网。
3。
# admin_port = 35357
# Keystone提供的认证授权、系统管理服务监听的端口,通常为内网。除了认证授权功能外,用户需要访问该端口来进行管理员操作,如创建删除Tenant、User、Role、Service、Endpoint等。
4。
# connection = sqlite:///keystone.db
# 此处为数据库参数,默认使用sqlite,并且指定数据库文件的存放位置,keystone.db表示在主目录下创建keystone.db文件,用于存放数据。也可以指定其他存储位置,例如sqlite:////var/lib/keystone/keystone.db。
# 当然也可以使用mysql,如mysql://root:[email protected]/keystone,其中192.168.3.67为数据库地址,keystone为数据库名称,root为用户名,123456为访问密码。需要事先安装mysql,并且创建名为keystone的数据库,设置用户名密码。
5。
# token_format = PKI
# 此处需要特别注意,新版本中默认Token为PKI,因而需要为此设置PKI认证,较为麻烦,可改为UUID以方便使用,UUID是一个几十位的随机字符串。
导入环境变量
为了访问Keystone服务,客户端需要导入环境变量,当然也可以选择在执行访问Keystone的命令时加上相关参数。在本文档所描述的部署环境中,Keystone客户端与服务端处在同一台PC上。导入环境变量的方式有两种:
1. 在终端使用export命令,这种方式使得该环境变量的有效范围仅限于本终端。
# export SERVICE_TOKEN=ADMIN
# export SERVICE_ENDPOINT=http://192.168.3.67:35357/v2.0
这里需要解释一下:
“SERVICE_ENDPOINT”是Keystone的Endpoint,即API入口。其中,“192.168.3.67”为安装Keystone服务的机器的IP,“35357”为Keystone提供的认证授权和系统管理服务监听的端口(通常为内网),用户需要访问该端口来进行管理员操作,如创建删除Tenant、User、Role、Service、Endpoint等,这在《配置Keystone》章节中已进行了说明。
“SERVICE_TOKEN”就是Keystone服务的Token,在《配置Keystone》章节中也已进行了说明。
2. 修改~/.bashrc文件,在文件尾部添加如下内容。(该文件包含当前用户Bash Shell的环境变量信息)
export SERVICE_TOKEN=ADMIN
export SERVICE_ENDPOINT=http://192.168.3.67:35357/v2.0
然后执行如下命令,以使修改生效。一旦生效,终生有效哦亲!
# . ~/.bashrc
针对上述环境变量作如下说明:
SERVICE_TOKEN变量表示访问Keystone服务时使用的Token,与配置文件keystone.conf中的信息相对应,默认为ADMIN。
SERVICE_ENDPOINT变量表示Keystone服务的接入口,其中IP地址表明Keystone服务的安装位置,35357为默认访问端口。
于是,客户端就可以使用名为ADMIN的Token,通过给定的访问地址http://192.168.3.67:35357/v2.0来访问Keystone服务了。
openstack相关服务的删除卸载命令
标签: mysql glance nova keystone ubuntu 分类: openstack
在装openstack时,出错的可能只是一个服务模块,比如mysql,keystone,glance,nova等等,我们就需要把相应的模块卸载掉,不用重装整个系统了,这可以节省我们很多的时间,但很多人有不知道完全卸载这些模块的命令,往往保留了以前装的错误的配置文件,这就需要我们把所有的配置文件都卸载干净。
现在我给大家提供一些完全卸载的命令,我们可以写成脚本语言,可以很方便的执行:
#!/usr/bin/env bash
#删除glance
apt-get remove -y glance glance-api glance-client glance-common glance-registry python-glance
#删除nova
apt-get remove -y nova-api nova-cert nova-common nova-compute nova-compute-kvm nova-doc nova-network nova-objectstore nova-scheduler nova-volume python-nova python-novaclient nova-consoleauth
python-novnc novnc
删除dashboard
apt-get remove -y libapache2-mod-wsgi openstack-dashboard
#删除mysql数据库
apt-get remove -y mysql-server python-mysqldb
#删除keystone
apt-get remove -y keystone python-keystone python-keystoneclient
dpkg -l |grep keystone|awk ‘{print $2}‘|xargs dpkg -P
dpkg -l |grep glance|awk ‘{print $2}‘|xargs dpkg -P
dpkg -l |grep nova|awk ‘{print $2}‘|xargs dpkg -P
dpkg -l |grep mysql|awk ‘{print $2}‘|xargs dpkg -P
dpkg -l |grep libapache2-mod-wsgi|awk ‘{print $2}‘|xargs dpkg -P
## 删除掉mysql里相应的数据库
MYSQL_PASSWD=${MYSQL_PASSWD:-"cloud1234"}
mysql -uroot -p$MYSQL_PASSWD -e "DROP DATABASE IF EXISTS nova;"
mysql -uroot -p$MYSQL_PASSWD -e "DROP DATABASE IF EXISTS glance;"
mysql -uroot -p$MYSQL_PASSWD -e "DROP DATABASE IF EXISTS keystone;"
删除mysql
1.sudo apt-get autoremove --purge mysql-server-5.5
2.sudo apt-get remove mysql-common
清理残留数据
dpkg -l |grep ^rc|awk ‘{print $2}‘ |sudo xargs dpkg -P
dashboard页面登录:用户名和密码-----》这个用户名和密码来自keystone创建的用户名和密码
即 keystone user-create --name admin --password --email 。。。