2013年12月5日星期四

centos下最简安装openstack——使用packstack

摘要:
  1. 先决条件:系统需要有两块硬盘和两张网卡。
  2. 配置网卡,如果系统已经能够联网则跳过此步 vi /etc/sysconfig/network-scripts/ifcfg-eth0; 修改 ONBOOT=yes; service network restart
  3. 安装wget,如果已经安装则跳过此步 yum install wget -y
  4. 分区用于cinder-volumes fdisk /dev/sdb; n p 1 ret ret w; vgcreate cinder-volumes /dev/sdb1;
  5. 修改更新源
    1. 启用网易的CentOS更新源
      1. cd /etc/yum.repo.d/ ;
      2. wget http://mirrors.163.com/.help/CentOS6-Base-163.repo ;
      3. mv CentOS-Base.repo CentOS-Base.repo.bak;
      4. mv CentOS6-Base-163.repo CentOS-Base.repo
    2. 启用OpenStack的更新源 vi openstack.repo ; 输入如下内容并保存: [openstack] baseurl=http://rdo.fedorapeople.org/openstack/openstack-grizzly/epel-6 gpgcheck=0
    3. 更新yum源 yum clean all; yum makecache; yum update
  6. 安装PackStack yum install -y openstack-packstack
  7. 接下来一键安装OpenStack,--install-hosts参数需要输入你的IP地址 packstack --install-hosts=your_ip; 提示输入的时候输入你的密码,等待安装完成即可。

正文

这里所说的最简安装openstack指的是在centos系统下、且安装需要的操作步骤最少。如果环境不限,最简安装是使用StackOps,它是集成了openstack的ubuntu系统.安装了它提供的iso镜像之后,openstack已经安装好了。
但是,由于许多公司用centos作为主要运营环境,那么最简的安装就如本文所列步骤。注意,一定要是64位的centos,最简安装即可。32位的系统会由于缺失一些安装包而失败。

一,下载

也可下载 CentOS-6.4-x86_64-bin-DVD1.iso 。

二,安装虚拟机:

新建一个虚拟机,配置如下图所示。关键是需要两块硬盘和两个网卡,
其中一个网卡是nat,另一个是host-only(不确定)。否则后续packstack的安装会失败。
在这里选择第一个硬盘点右箭头即可。
很快装完。

三,配置IP地址

刚装完之后是没有IP的,参考 CentOS 6.0 最小化安装后配置静态IP 
vi /etc/sysconfig/network-scripts/ifcfg-eth0

配置为dhcp即可,也可以配置为静态ip,如原文所配。
然后重启网络服务。 service network restart 可以看到有了ip地址。

四,添加更新源

cd /etc/yum.reops.d/
在最小安装下,连wget都没有,所以需要安装,如果安装的dvd版,则忽略此步骤
yum install wget
下载网易的镜像repo文件,也可以根据你的网络情况去下载别的repo文件。
[plain] view plaincopy
  1. wget http://mirrors.163.com/.help/CentOS6-Base-163.repo  
  2. mv CentOS-Base.repoCentOS-Base.repo.bak  
  3. mvCentOS6-Base-163.repoCentOS-Base.repo  

添加 openstack.repo
vi openstack.repo
输入以下内容
[plain] view plaincopy
  1. [openstack]    
  2. baseurl=http://rdo.fedorapeople.org/openstack/openstack-grizzly/epel-6    
  3. gpgcheck=0   


然后输入命令更新源:
[plain] view plaincopy
  1. yum clean all  
  2. yum makecache  
  3. yum update  

五,硬盘操作

然后进行磁盘分区和挂载:
[plain] view plaincopy
  1. fdisk /dev/sdb  
  2. n p 1 return(回车) retrun(回车) w  

对硬盘/dev/sdb1进行操作
输入:
[plain] view plaincopy
  1. vgcreate cinder-volumes /dev/sdb1  

这个步骤并不需要安装cinder.看到如下提示说明操作成功: Volume group "cinder-volumes" successfully created  

六,安装packstack

yum install -y openstack-packstack

七,使用packstack进行openstack的安装

[plain] view plaincopy
  1. packstack --install-hosts=192.168.8.142  


下一步需要输入你的root账户的密码

可以看到,进行了一系列安装。

八,安装成功

九,登陆dashboard,管理openstack

按照上面的提示,登陆http://your-ip/dashboard,即可管理openstack。
这一步,如果使用的vbox虚拟机,则需要按照VirtualBox虚拟机上网并主宿互访 -- 整理 这个帖子的方法进行配置,这时候输入的不是访问外网的Nat网卡(eth0)的地址,而是host-only网卡(eth1)的地址.因为在vbox中宿主机与虚拟机的通信是通过host-only网卡来完成的。

用户名与密码保存在root目录下的keystonerc_admin文件,使用cat命令进行查看:
[plain] view plaincopy
  1. cat /root/keystonerc_admin  

命令行:source /root/keystonerc_admin 可导入一些环境参数
然后执行一些命令,比如:
keystone user-list

创建一个普通用户
keystone user-create --name tcommerce --pass PASSWORD 


安装完成之后,可以参考进行openstack的使用。可以参考 Openstack的使用——刚刚安装完成之后 和 制作CentOS系统镜像供OpenStack使用

参考文献:


CentOS 6.4 Openstack Havana 多节点安装(OVS+GRE)

Openstack的网络一共有5种,其实对于租户网络来说,应该就是4种。所谓Flat模式,并不是租户的网络,而是把虚拟机直接放在 provider networks,就是管理员创建一个网络,让所有的租户直接连接到外网,获得的是公网的IP,不需要经过NAT
  1. local模式:这主要是给测试使用,只能是all in one,不能再添加节点
  2. GRE模式:隧道数量没有限制,性能有点问题。
  3. Vlan模式:vlan数量有4096的限制
  4. VXlan模式:vlan数量没有限制,性能比GRE好。
每一种模式,网络的配置都会有所不同,打算每种网络模式,写一篇文章介绍。这里主要是介绍GRE模式的配置。
我的RDO的网络设置和应答文件 GRE模式:http://t.cn/8DDql5W Vlan模式:http://t.cn/8DDql5O 完成后,自己手工创建ifcfg-br-ex http://t.cn/8DDql50
2013年11月22日:目前RDO在多节点部署有bug,在计算节点创建的虚拟机都会失败。http://openstack.redhat.com/forum/discussion/910/havanna-issues-with-multi-node#Item_14  解决办法就是装完后在控制节点,添加一条iptables的规则:
iptables -I INPUT -s 172.28.1.12/32 -p tcp --dport 9696 -j ACCEPT
并保存规则:service iptables save ,172,28,1,12是我计算节点的IP地址。
2013年11月27日:如果你发现虚拟机访问外网速度很慢,在控制节点,准确说,在网络节点,我的例子里是br-ex绑定在eth0上,运行下面命令,就会让虚拟机访问外网获得正常速度。
ethtool --offload eth0 gro off

基本情况

服务器公网虚拟机通讯网络角色
node10eth0:172.28.1.10/16eth1:10.1.1.10/24控制节点,网络节点,存储节点,计算节点
node12eth0:172.28.1.12/16eth1:10.1.1.12/24计算节点

和vlan模式配置一个明显的区别,就是eth1,是需要配置一个私有的IP地址,必须配置。
网关:172.28.0.1
需要注意:Neutron和Nova network一个明显的不同就是Floating IP的范围和fix ip,这些都是可以通过web方式进行设置。
虚拟机使用的Floating IP:172.28.3.100,172.28.3.200
GRE模式的一个好处就是不需要在交换机做任何配置。
这是龚永生的原理图,我稍微修改了一下,用eth0连接路由器
Snap3

网络基本设置

这是node10的IP设置,node12,也只是修改一下IP地址就可以。
Eth0
# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
HWADDR=00:E0:81:D8:43:BE
TYPE=Ethernet
BOOTPROTO=none
IPADDR=172.28.1.10
NETMASK=255.255.0.0

Eth1
# cat /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
ONBOOT=yes
HWADDR="00:E0:81:D8:43:BF"
TYPE=Ethernet
BOOTPROTO=none
IPADDR=10.1.1.10
NETMASK=255.255.255.0

设置源

cd /etc/yum.repos.d/
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
yum list

LVM设置(可选)

这主要是为了给cinder-volumes单独一个分区,提高性能。
umount /dev/sda2
pvcreate /dev/sda2
vgcreate cinder-volumes /dev/sda2

修改/etc/fstab 去掉cinder-volume的开机挂载,不然会导致你无法重启
sed -i '/cinder-volume/s/^/#/' /etc/fstab

安装packstack

yum install -y http://rdo.fedorapeople.org/openstack/openstack-havana/rdo-release-havana.rpm
yum install -y openstack-packstack
yum -y update

内核更新,所以需要重启机器.

Packstack设置

创建一个应答文件
packstack --gen-answer-file=multi-node-gre-node10.txt
修改配置文件
修改应答文件,由于我已经有专门的cinder volume, 所以不需要创建。如果你没有手工创建cinder volume,那么你就不修改就可以。默认heat和Nagios是没有安装,你可以修改。
CONFIG_CINDER_VOLUMES_CREATE=n
CONFIG_NTP_SERVERS=0.uk.pool.ntp.org
CONFIG_KEYSTONE_ADMIN_PW=admin
CONFIG_NOVA_COMPUTE_HOSTS=172.28.1.10,172.28.1.12
CONFIG_NEUTRON_OVS_TENANT_NETWORK_TYPE=gre
CONFIG_NEUTRON_OVS_TUNNEL_RANGES=1:1000
CONFIG_NEUTRON_OVS_TUNNEL_IF=eth1

GRE的网络,主要是修改后面的3行就可以。
进行安装
packstack --answer-file=multi-node-gre-node10.txt

安装过程,有可能因为源的原因中断,你可以重复运行。

虚拟机访问外网

装完后,查看一下网络
# ovs-vsctl show
9cf303ec-618d-4976-a031-b65646b4e491
    Bridge br-tun
        Port br-tun
            Interface br-tun
                type: internal
        Port patch-int
            Interface patch-int
                type: patch
                options: {peer=patch-tun}
    Bridge br-int
        Port br-int
            Interface br-int
                type: internal
        Port patch-tun
            Interface patch-tun
                type: patch
                options: {peer=patch-int}
    Bridge br-ex
        Port br-ex
            Interface br-ex
                type: internal
    ovs_version: "1.11.0"

由于目前RDO的问题,没有创建br-ex,需要我们手工来创建,这个只需要在node10进行就可以,具体点说,应该是在网络节点上进行。
# cat /etc/sysconfig/network-scripts/ifcfg-br-ex 
DEVICE=br-ex
IPADDR=172.28.1.10
PREFIX=16
GATEWAY=172.28.0.1 
DNS1=114.114.114.114
ONBOOT=yes

修改 /etc/sysconfig/network-scripts/ifcfg-eth0,  注意:一定要加上eth0 的mac地址,不然会出错。
# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
HWADDR=00:E0:81:D8:43:BE
然后运行下面命令
ovs-vsctl add-port br-ex eth0; service network restart

Snap2
这个时候,看看网络的设置
# ovs-vsctl show
9cf303ec-618d-4976-a031-b65646b4e491
    Bridge br-tun
        Port br-tun
            Interface br-tun
                type: internal
        Port patch-int
            Interface patch-int
                type: patch
                options: {peer=patch-tun}
    Bridge br-int
        Port br-int
            Interface br-int
                type: internal
        Port patch-tun
            Interface patch-tun
                type: patch
                options: {peer=patch-int}
    Bridge br-ex
        Port "eth0"
            Interface "eth0"
        Port br-ex
            Interface br-ex
                type: internal
    ovs_version: "1.11.0"

网卡详细信息
# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether 00:e0:81:d8:43:be brd ff:ff:ff:ff:ff:ff
    inet6 fe80::2e0:81ff:fed8:43be/64 scope link 
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether 00:e0:81:d8:43:bf brd ff:ff:ff:ff:ff:ff
    inet 10.1.1.12/24 brd 10.1.1.255 scope global eth1
    inet6 fe80::2e0:81ff:fed8:43bf/64 scope link 
       valid_lft forever preferred_lft forever
94: virbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN 
    link/ether 52:54:00:3a:bf:90 brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
95: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 500
    link/ether 52:54:00:3a:bf:90 brd ff:ff:ff:ff:ff:ff
107: ovs-system: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN 
    link/ether 9a:b8:00:8e:c9:6d brd ff:ff:ff:ff:ff:ff
108: br-int: <BROADCAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN 
    link/ether 66:30:7d:42:9c:43 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::70b6:c2ff:fef9:3509/64 scope link 
       valid_lft forever preferred_lft forever
110: br-tun: <BROADCAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN 
    link/ether 4e:41:41:1e:a1:43 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::30cc:7fff:fe2d:758b/64 scope link 
       valid_lft forever preferred_lft forever
111: br-ex: <BROADCAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN 
    link/ether 00:e0:81:d8:43:be brd ff:ff:ff:ff:ff:ff
    inet 172.28.1.10/16 brd 172.28.255.255 scope global br-ex
    inet6 fe80::2e0:81ff:fed8:43be/64 scope link 
       valid_lft forever preferred_lft forever

附录

OVS.integration_bridge:br-int
OVS.tunnel_bridge:br-tun
OVS.local_ip:GRE网络使用:就是内部的IP,这里就是eth1上的IP地址
OVS.tunnel_id_ranges:1:1000,就是ID的范围,GRE网络的隧道数量。
OVS.bridge_mappings :physnet1:br-eth1,vlan模式使用该参数
OVS.network_vlan_ranges:physnet1:10:20,vlan模式使用该参数

VPS 选购原则

性能
网络和带宽

附加服务

  • 固定IP的DNS 反解:从IP解析到域名,在架设邮件服务器时尤其重要
    • 反解这方面国内的ISP做得很烂,只有很少一段做有反解NS,而且在有做反解的ISP中大部分设置不是100%正确,即是会出现有时能解析,有时不能解析的现象
    • 可用dig 命令来验证,从反解的根 in-addr.arpa 开始一级一级往下查询,并验证每一级提供的NS是否一致(上下层一致,同级一致)。详情请参考《反向解析域是怎么授权的

国内的VPS

景安互联网数据中心 http://vps.zzidc.com/product.html

美国的VPS

到中国速度最快ping值最低的美国机房介绍

我 们这些网站站长,面对国内日益恶化的网络环境,不得不将自己心爱的网站迁移到太平洋另一边的美国。虽然美国的空间主机或者VPS和服务器价格都是那么的低 廉、性价比那么的高,唯有一个问题让我们一直很头疼,那就是中美网络的连接速度。隔着一个太平洋,不管是再好的光线也是有损耗的。那么今天我就给大家罗列 一下从中国到美国VPS机房速度最快ping值最低的几个机房吧。
1.peer1 dedicated洛杉矶机房。 针对中国线路进行了优化,ping值在200ms以内。
2.he.net 加州(Frement)机房 he.net的单线路机房,这个线路对中国电信和网通比较友好,结点少,速度快。ping值200ms左右。 linode(加州数据中心)用的就是这个机房。
3.krypt圣安娜机房 对中国速度快,结点少,ping值200ms左右。
4.PacificRack的nLayer优化段 对中国速度快,结点少,ping值200ms左右。
大家继续补充,希望能够为新买vps/独立服务器的朋友一共参考。
比如加州还有几个机房, https://www.staminus.net/ 跟Krypt的洛杉矶机房在同一座ONE Wilshire大厦。
http://www.Awknet.com/ 跟PacificRack的洛杉矶机房在同一座大厦里。
http://www.webnx.com/ 跟PacificRack的洛杉矶机房在同一座大厦里。

ThrustVPS Ping 延迟测试和带宽测试

Ping 测试
  • 英国 – thrustvps.com
  • 美国东海岸 – speedtest.nj.damnvps.com
  • 美国Texas,Dallas – speedtest.tx.damnvps.com
  • 美国洛杉矶 – speedtest.la.damnvps.com
下载测试:

如何挑选VPS:Xen与OpenVZ技术性能测试及选购

Ramhost VPS (OpenVZ)

Ramhost提供OpenVZ的VPS,他们承诺自己的VPS不会超卖,并且提供了在线状态系统可供实时查看。他们有Atlanta和Kansas City两个机房。
测试IP:
  • Kansas City 机房: 208.110.73.130 、 Atlanta 机房: 98.142.216.34
可选配置:
  • 80MB内存、128MB突发内存、2G硬盘、50G流量,73元3个月。推荐新手学习Linux VPS使用
  • 128MB内存、192MB突发内存、10G硬盘、150G流量,115元3个月。
  • 256MB内存、384MB突发内存、20G硬盘、200G流量,73元/月。
  • 512MB内存、768MB突发内存、40G硬盘、500G流量,95元/月。
  • 768MB内存、1024MB突发内存、60G硬盘、650G流量,115元/月。
  • 1024MB内存、1.5GB突发内存、80G硬盘、800G流量,150元/月。

BURSTNET VPS (OpenVZ、XEN)

机房在美国东部宾夕法尼亚州斯克兰顿机房,ping 延迟大约有 300 ms ,比西部的主机(200 ms)慢。
特点是价格便宜,性价比很高。
销售价格(淘宝店示例站 Ubuntu China)(以下均为OpenVZ,XEN的贵很多):
  • VPS #1 (Virtual Private Server) - vePortal - CPU: 1GHZ, RAM: 512MB, DISKSPACE: 20GB, BANDWIDTH: 1000GB/MONTH 单月:35 人民币; 每年: 350 人民币
  • VPS #2 (Virtual Private Server) - vePortal - CPU: 1.5GHZ, RAM: 1GB, DISKSPACE: 50GB, BANDWIDTH: 1000GB/MONTH 单月:59 人民币; 每年: 590 人民币
  • VPS #3 (Virtual Private Server) - vePortal - CPU: 2GHZ, RAM: 1.5GB, DISKSPACE: 100GB, BANDWIDTH: 2000GB/MONTH 单月:118 人民币; 每年: 1180 人民币
  • VPS #4 (Virtual Private Server) - vePortal - CPU: 2.5GHZ, RAM: 2.5GB, DISKSPACE: 150GB, BANDWIDTH: 2000GB/MONTH 单月:178 人民币; 每年: 1780 人民币
  • VPS #5 (Virtual Private Server) - vePortal - CPU: 3GHZ, RAM: 3GB, DISKSPACE: 200GB, BANDWIDTH: 4000GB/MONTH 单月:238 人民币; 每年: 2380 人民币
  • VPS #6 (Virtual Private Server) - vePortal - CPU: 4GHZ, RAM: 4GB, DISKSPACE: 250GB, BANDWIDTH: 4000GB/MONTH 单月:298 人民币; 每年: 2980 人民币

Linode VPS


PhotonVPS

提供基于Xen和OpenVZ的VPS,位于加州Los Angeles洛杉矶机房,大陆访问速度比较不错,有中文客服

附录

本文参考和摘抄自:

2013年12月3日星期二

搭建自己的XenServer+CloudStack云平台,提供IaaS服务(一)环境搭建

目标

搭建一个完整的基于XenServerCloudStack的虚拟化平台,提供IaaS服务。
  • 搭建三台安装了XenServer的服务器
  • 搭建一台安装了CloudStack的服务器用以管理云平台
  • 搭建一个NFS服务器负责进行存储工作
  • 可以使用CloudStack云平台进行虚拟机管理

先期准备

服务器准备

  • 三台服务器安装XenServer
  • 一台安装CentOS和CloudStack进行管理
  • 一台安装CentOS和NFS服务负责存储
  • 一台HTTP服务器公共,用来进行模板,iso下载等支持

需要准备的各种安装包

然后使用工具软件将iso文件刻录成光盘或者启动U盘。

环境准备

IP地址分配:
机器名: XS1 系统:XenServer IP地址:192.168.100.61
机器名: XS2 系统:XenServer IP地址:192.168.100.62
机器名: XS3 系统:XenServer IP地址:192.168.100.63
机器名: NFS 系统:CentOS6.2 IP地址:192.168.100.64
机器名: MGR 系统:CentOS6.2 IP地址:192.168.100.65
虚拟机地址分配:
虚拟机地址分配池使用192.168.7.X地址段

安装NFS服务器

安装操作系统

安装CentOS操作系统到服务器,插入光盘,选择默认安装。

配置服务器名称

默认的服务器名为localhost,可以修改/etc/hosts文件来更换服务器名。将etc/hosts添加下面的语句
192.168.100.64 nfs
12.0.0.1 localhost nfs

配置服务器的SELinux

SELinux是一个linux下的安全模块,具体说明见这里,我们这里需要将SELinux打开,需要执行如下指令。
setenforce permissive
为确保其持久生效需更改配置文件/etc/selinux/config,设置为permissive,修改或添加配置文件的内容,添加上下面两句话。
SELINUX=permissive
SELINUXTYPE=targeted

安装NTP服务

NTP服务是一个时间服务,最好所有服务器都有个统一的时间管理,所以需要安装NTP服务。
yum install ntp
service ntpd start

配置NFS服务

首先,安装NFS服务
yum install nfs-utils
建立挂载点目录。使用root建立,为了方便,讲目录权限设置为777
mkdir /primary
mkdir /secondary
修改/etc/exports文件,建立挂载点信息,在文件中添加如下两行
/primary *(rw,async,norootsquash)
/secondary *(rw,async,norootsquash)
配置防火墙信息,允许NFS访问权限,修改/etc/sysconfig/iptables,添加如下内容
-A INPUT -s 192.168.100.0/24 -m state --state NEW -p udp --dport 111 -j ACCEPT
-A INPUT -s 192.168.100.0/24 -m state --state NEW -p tcp --dport 111 -j ACCEPT
-A INPUT -s 192.168.100.0/24 -m state --state NEW -p tcp --dport 2049 -j ACCEPT
-A INPUT -s 192.168.100.0/24 -m state --state NEW -p tcp --dport 32803 -j ACCEPT
-A INPUT -s 192.168.100.0/24 -m state --state NEW -p udp --dport 32769 -j ACCEPT
-A INPUT -s 192.168.100.0/24 -m state --state NEW -p tcp --dport 892 -j ACCEPT
-A INPUT -s 192.168.100.0/24 -m state --state NEW -p udp --dport 892 -j ACCEPT
-A INPUT -s 192.168.100.0/24 -m state --state NEW -p tcp --dport 875 -j ACCEPT
-A INPUT -s 192.168.100.0/24 -m state --state NEW -p udp --dport 875 -j ACCEPT
-A INPUT -s 192.168.100.0/24 -m state --state NEW -p tcp --dport 662 -j ACCEPT
-A INPUT -s 192.168.100.0/24 -m state --state NEW -p udp --dport 662 -j ACCEPT
重启防火墙
service iptables restart
配置NFS为开机自启动
service rpcbind start
service nfs start
chkconfig rpcbind on
chkconfig nfs on
至此,NFS服务器已经配置完成,可以使用mount命令检查是否配置成功,最好使用其他机器进行测试,来保证防火墙是否配置成功,用另外一台连接到一个局域网下的Linux机器,在命令行输入:
mount -t nfs 192.168.0.24:/primary /mnt/primary
如果挂载成功表示NFS配置完成。

安装CloudStack服务器

操作系统安装

将一台服务器安装成CloudStack管理服务器,首先也要安装CentOS操作系统,和NFS一样,操作系统安装默认安装即可。
安装完操作系统以后同样要按照NFS服务器的方式设置一下IP地址和HOSTNAME以及SELinux配置。

安装CloudStack

解压缩安装包
tar zxvf CloudStack-oss-3.0.2-1-rhel6.2.tar.gz

安装数据库

使用./install.sh的D选项自动安装mysql数据库,安装完成以后,可以更改数据库配置/etc/my.cnf文件,添加以下内容
innodbrollbackontimeout=1
innodblockwait
timeout=600
max_connections=350
log-bin=mysql-bin
binlog-format = 'ROW'
启动数据库
service mysqld restart
配置防火墙,编辑/etc/sysconfig/iptables,添加
-A INPUT -p tcp --dport 3306 -j ACCEPT
重启iptables服务
service iptables restart

安装管理平台

执行./install.sh的M,安装管理平台。

初始化数据库

cloud-setup-databases cloud:password@localhost --deploy-as=root

配置管理服务器

cloud-setup-mangament
至此,管理服务器安装完成。

安装XenServer虚拟机

XenServer虚拟机安装较为简单,按照步骤进行安装即可,注意虚拟机的服务器名,IP地址之类的选择我们之前约定好的服务器名和IP地址。

买房贷款利息怎么算? 按揭贷款的利息计算公式


编者按:买房贷款利息怎么算?虽然通过网页版的房贷计算器很容易就能算出房贷月供,但购房者为图个放心还是想知道买房贷款利息怎么算、银行按揭贷款的利息计算公式是什么。本文将回答购房者这个问题,希望对大家的购房置业起到帮助。
一套房子,100平方,10000每平方,首付三成,月供多少,总利息多少,我主要想知道是怎么算的??以贷款20年来算:
按以上的是题意:该房屋的总价为10000*100=100万元,首付三成(30万元),贷款金额为70万元,贷款期限20年,按揭利率为6.8%(最新利率),按还款方式“等额本息法、等额本金法”分别计算如下:
1、等额本息法:计算公式
月还款额=本金*月利率*[(1+月利率)^n/[(1+月利率)^n-1]
式中n表示贷款月数,^n表示n次方,如^240,表示240次方(贷款20年、240个月)
月利率=年利率/12
总利息=月还款额*贷款月数-本金
经计算:月还款额为5343.38 元(每月相同)。还款总额为1282411.20 元,总利息为582411.20 元。
2、等额本金法:计算公式
月还款额=本金/n+剩余本金*月利率
总利息=本金*月利率*(贷款月数/2+0.5)
经计算:第一个月还款额为6883.33 元(以后逐月减少,越还越少),最后一个月还款额为2933.19元。还款总额为1177983.33 元,总利息为477983.33 元。
以上两种方法相比较,等额本金法比等额本息法少还104427.08 元。
采取哪种方法还款,借款人在银行办理贷款手续时可以选择。

Facebook 的系统架构

根据我现有的阅读和谈话,我所理解的今天Facebook的架构如下:
  • Web 前端是由 PHP 写的。Facebook 的 HipHop[1] 会把PHP转成 C++ 并用 g++编译,这样就可以为模板和Web逻贺业务层提供高的性能。
  • 业务逻辑以Service的形式存在,其使用Thrift [2]。这些Service根据需求的不同由PHP,C++或Java实现(也可以用到了其它的一些语言……)
  • 用Java写的Services没有用到任何一个企业级的应用服务器,但用到了Facebook自己的定制的应用服务器。看上去好像是重新发明轮子,但是这些Services只被暴露给Thrift使用(绝大所数是这样),Tomcat太重量级了,即使是Jetty也可能太过了点,其附加值对Facebook所需要的没有意义。
  • 持久化由MySQL, Memcached [3], Facebook 的 Cassandra [4], Hadoop 的 HBase [5] 完成。Memcached 使用了MySQL的内存Cache。Facebook 工程师承认他们的Cassandra 使用正在减少,因为他们更喜欢HBase,因为它的更简单的一致性模型,以到其MapReduce能力。
  • 离线处理使用Hadoop 和 Hive。
  • 日志,点击,feeds数据使用Scribe [6],把其聚合并存在 HDFS,其使用Scribe-HDFS [7],因而允许使用MapReduce进行扩展分析。
  • BigPipe [8] 是他们的定制技术,用来加速页面显示。
  • Varnish Cache [9]用作HTTP代理。他们用这个的原因是高速和有效率。 [10].
  • 用来搞定用户上传的十亿张照片的存储,其由Haystack处理,Facebook自己开发了一个Ad-Hoc存储方案,其主要做了一些低层优化和“仅追加”写技术 [11].
  • Facebook Messages 使用了自己的架构,其明显地构建在了一个动态集群的基础架构上。业务逻辑和持久化被封装在一个所谓的’Cell’。每个‘Cell’都处理一部分用户,新的‘Cell’可以因为访问热度被添加[12]。 持久化归档使用HBase [13]。
  • Facebook Messages 的搜索引擎由存储在HBase中的一个倒置索引的构建。 [14]
  • Facebook 搜索引擎实现细节据我所知目前是未知状态。
  • Typeahead 搜索使用了一个定制的存储和检索逻辑。 [15]
  • Chat 基于一个Epoll 服务器,这个服务器由Erlang 开发,由Thrift存取 [16]
  •     关于那些供给给上述组件的资源,下面是一些信息和数量,但是有一些是未知的:

  • Facebook估计有超过60,000 台服务器[16]。他们最新的数据中心在俄勒冈州的Prineville,其基于完全自定设计的硬件[17] 那是最近才公开的 Open Compute 项目[18]。
  • 300 TB 的数据存在 Memcached 中处理 [19]
  • 他们的Hadoop 和 Hive 集群由3000 服务器组成,每台服务器有8个核,32GB的内存,12TB的硬盘,全部有2万4千个CPU的核,96TB内存和36PB的硬盘。 [20]
  • 每天有1000亿的点击量,500亿张照片,100 billion hits per day, 50 billion photos, 3 万亿个对象被 Cache,每天130TB的日志(2010年7月的数据) [21]
  •     参考引用
        [1] HipHop for PHP: http://developers.facebook.com/blog/post/358
    [2] Thrift: http://thrift.apache.org/
    [3] Memcached: http://memcached.org/
    [4] Cassandra: http://cassandra.apache.org/
    [5] HBase: http://hbase.apache.org/
    [6] Scribe: https://github.com/facebook/scribe
    [7] Scribe-HDFS: http://hadoopblog.blogspot.com/2009/06/hdfs-scribe-integration.html
    [8] BigPipe: http://www.facebook.com/notes/facebook-engineering/bigpipe-pipelining-web-pages-for-high-performance/389414033919
    [9] Varnish Cache: http://www.varnish-cache.org/
    [10] Facebook goes for Varnish: http://www.varnish-software.com/customers/facebook
    [11] Needle in a haystack: efficient storage of billions of photos:http://www.facebook.com/note.php?note_id=76191543919
    [12] Scaling the Messages Application Back End: http://www.facebook.com/note.php?note_id=10150148835363920
    [13] The Underlying Technology of Messages: https://www.facebook.com/note.php?note_id=454991608919
    [14] The Underlying Technology of Messages Tech Talk:http://www.facebook.com/video/video.php?v=690851516105
    [15] Facebook’s typeahead search architecture:http://www.facebook.com/video/video.php?v=432864835468
    [16] Facebook Chat: http://www.facebook.com/note.php?note_id=14218138919
    [17] Who has the most Web Servers?:http://www.datacenterknowledge.com/archives/2009/05/14/whos-got-the-most-web-servers/
    [18] Building Efficient Data Centers with the Open Compute Project:http://www.facebook.com/note.php?note_id=10150144039563920
    [19] Open Compute Project: http://opencompute.org/
    [20] Facebook’s architecture presentation at Devoxx 2010: http://www.devoxx.com
    [21] Scaling Facebook to 500 millions users and beyond:http://www.facebook.com/note.php?note_id=409881258919
        (全文完)