热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

cloudstack4.0.1平台安装过程记录

借3/30技术沙龙实践日之际,在CloudStack4.0.1发布版本的基础上,从零开始部署了异构的Hypervisor(KVM,XenServer).本着分享的精神,在这里重新部署一遍并详细记录流程以方便日后自己和他人作为参照.用到的术语或缩写(知道的可直接跳过):术语/缩写全称

借3/30技术沙龙实践日之际, 在CloudStack 4.0.1发布版本的基础上,从零开始部署了异构的Hypervisor (KVM, XenServer). 本着分享的精神,在这里重新部署一遍并详细记录流程以方便日后自己和他人作为参照.

用到的术语或缩写 (知道的可直接跳过):

术语/缩写

全称

解释

MS

Management Server

CloudStack管理服务器

主存储

Primary Storage

虚机镜像的存储, 承担虚机实例的I/O操作, 要求性能比较好

二级存储

Secondary Storage

虚机快照, 模板或ISO安装镜像存储的区域, 承担一次写多次读的操作, 不要求很高的IOPS

根卷

Root Volume

虚机系统盘存储的卷, 比如Windows的系统盘(一般是C:盘), Linux的root(“/”)卷

数据卷

Data Volume

虚机数据盘存储的卷, 比如Windows的数据盘(比如,D:, E:盘), Linux下挂载的其它卷

系统虚拟机

System VM

CloudStack为完成特定功能而添加的虚机, Debian 6.0系统, 共有三种(SSVM, CPVM, vRouter)

SSVM

Secondary Storage VM

二级存储系统虚机,提供模板, ISO等到二级存储的上传下载

CPVM

Console Proxy VM

提供基于Web的到虚机控制台的VNC访问

vRouter

Vritual Router

又称DomR; 是CloudStack提供丰富网络功能的基础, 基于vRouter的网络功能有: DHCP, DNS, Port Forwarding, Static NAT, Source NAT, Load Balancing, Network Tier, VPN, s-2-s VPN等

Public Network

接入外部流量所走的网络, 这里的外部流量是相对的, 可以是internet或其它

Management Network

管理网络, 用于CloudStack对主机或系统虚拟机控制时走的流量

Guest Network

来宾网络的流量, 即虚拟机之间的网络流量

Stroage Network

二级存储系统虚拟机与二级存储之间的网络流量, 默认走管理网络

安装前的准备:

1. CloudStack安装文件

1> CentOS 6.3 x64 ISO文件, 建议选择一个中国的镜像站点下载: http://goo.gl/mWJ5Z

2> CloudStack 4.0.1 安装文件, 本次采用的安装包: http://goo.gl/WY90o

3> XenServer 6.0.201 ISO文件, 下载路径:http://goo.gl/4Ejip

2. 部署规划

3. 网络规划

Network

IP

CIDR

VLAN

Others

Public

172.16.206.133~139

172.16.206.0/24

access

10.10.70.30~50

10.10.70.0/24

access

Management

10.10.80.50~80

10.10.80.0/24

access

Guest

10.1.1.2~253

10.1.1.0/24

300 ~ 500

Storage

同Public

4. 节点及角色

Node

Role

IP

Office IP

System

Others

democs

ms/mysql

10.10.80.5

172.16.206.110

CentOS6.3 x64

安装ntp服务器

demostorage

主存储/二级存储

10.10.80.6

172.16.206.39

CentOS6.3 x64

安装http服务器

demokvm1

kvm

10.10.80.7

CentOS6.3 x64

demokvm2

kvm

10.10.80.8

CentOS6.3 x64

demoxs1

xenserver

10.10.80.9

XenServer 6.0.2

demoxs2

xenserver

10.10.80.10

XenServer 6.0.2

winbridge

win7

10.10.80.11

172.16.206.7

可选, 作为跳板机使用

各节点的安装及配置:

1. Storage安装及配置

Demo环境将使用NFS作为XenServer和KVM的主存储, 同时作为共同的二级存储, 使用iSCSI作为XenServer的另一个主存储

1.1 CentOS6.3 x64最小化安装 (硬件配置: 1CPU, 2G内存, 400G硬盘)

默认最小化安装即可, 设置root密码

1.2 配置本地DVD源

建立目录: /home/export/nfs 作为NFS共享的根路径 (默认安装后, /home挂载点空间最大)

新建/home/export/nfs/iso目录, 将CentOS 6.3 x64 两个ISO安装文件放置在此目录下 (请注意如何将ISO放置过来, 也可以直接mount过来, 这里假定你ISO有办法拷过来)

新建两个目录:

# mkdir /media/dvd1 /media/dvd2

配置yum本地DVD源:

 # cd /etc/yum.repos.d

      # mv CentOS-* ~

      # cp ~/CentOS-Media.repo dvd.repo

      # vi dvd.repo

 [c6-media]

      name=CentOS-$releasever ? Media

      baseurl=file:///media/dvd1/

        file:///media/dvd2/

      gpgcheck=0

      enabled=1

更新yum源缓存:

 # yum makecache

1.3 安装apache tomcat并配置

配置满足我们需求的http服务器再简单不过了:

# yum install httpd -y

配置apache tomcat:

 # vi /etc/httpd/conf/httpd.conf

      ServerName 10.10.80.6:80

      DocumentRoot “/var/www”

     

         Options Indexes FollowSymLinks Includes ExecCGI

         AllowOverride All

         Order allow,deny

         Allow from all

     

1.4 配置安全策略及防火墙

关闭selinux:

 # setenforce 0

      # sed -i s/SELINUX=enforcing/SELINUX=permissive/g /etc/selinux/config

配置防火墙添加相应规则, 注意添加的位置在第一条 “-A INPUT …” 之前:

# vi /etc/sysconfig/iptables

      -A INPUT -p tcp -m tcp ?dport 80 -j ACCEPT

      -A INPUT -p tcp -m tcp ?dport 3260 -j ACCEPT

      -A INPUT -m state ?state NEW -p udp ?dport 111 -j ACCEPT

      -A INPUT -m state ?state NEW -p tcp ?dport 111 -j ACCEPT

      -A INPUT -m state ?state NEW -p tcp ?dport 2049 -j ACCEPT

      -A INPUT -m state ?state NEW -p tcp ?dport 32803 -j ACCEPT

      -A INPUT -m state ?state NEW -p udp ?dport 32769 -j ACCEPT

      -A INPUT -m state ?state NEW -p tcp ?dport 892 -j ACCEPT

      -A INPUT -m state ?state NEW -p udp ?dport 892 -j ACCEPT

      -A INPUT -m state ?state NEW -p tcp ?dport 875 -j ACCEPT

      -A INPUT -m state ?state NEW -p udp ?dport 875 -j ACCEPT

      -A INPUT -m state ?state NEW -p tcp ?dport 662 -j ACCEPT

      -A INPUT -m state ?state NEW -p udp ?dport 662 -j ACCEPT

1.5 安装配置NFS工具

# yum install nfs-utils -y

      # yum install rpcbind -y

将下面文件的一些注释去掉

# vi /etc/sysconfig/nfs

        LOCKD_TCPPORT=32803

        LOCKD_UDPPORT=32769

        MOUNTD_PORT=892

        RQUOTAD_PORT=875

        STATD_PORT=662

        STATD_OUTGOING_PORT=2020

        RPCNFSDARGS=”-N 4″   # 对于KVM集群是必须的, 否则存储异常导致系统虚机无法启动

 # chkconfig nfs on

      # chkconfig rpcbind on

配置NFS服务及路径:

# echo “/home/export/nfs *(rw,async,no_root_squash)” >> /etc/exports

      # exportfs

      # service rpcbind restart

      # service nfs restart

1.6 将CentOS 6.3安装ISO文件拷贝到/home/export/nfs/iso下备用

1.7 安装配置iSCSI工具

暂略.

1.8 检查存储服务及http服务是否正常

2. MS安装及配置

2.1 CentOS 6.3 x64最小化安装 (硬件配置: 1CPU, 2G内存, 30G硬盘)

默认最小化安装即可, 设置root密码

2.2 配置本地DVD源

由于之前已设置好NFS存储服务并且CentOS安装ISO已在NFS路径下

这里需要做的操作:

 # mkdir /media/dvd1 /media/dvd2 /media/iso

      # mount -t nfs 10.10.80.6:/home/export/nfs/iso /media/iso

      # mount -o loop /media/iso/<>.iso /media/dvd1

      # mount -o loop /media/iso/<>.iso /media/dvd2

以下配置yum本地DVD源同1.2

2.3 安装本地NTP服务器

 # yum install ntp -y

      # vi /etc/ntp.conf

      server 10.10.80.5

      restrict default ignore

      restrict 10.10.80.0 mask 255.255.255.0 nomodify notrap

      # chkconfig ntp on

      # service ntp restart

2.4 配置安全策略及防火墙

selinux配置同1.4

防火墙配置规划, 注意添加位置在第一个”-A INPUT …”之前:

# vi /etc/sysconfig/iptables

       -A INPUT -p tcp ?dport 3306 -j ACCEPT

# service iptables restart

2.5 安装管理服务

解压cloudstack安装包至: /root/CloudStack-non-OSS-13

 # cd /root/CloudStack-non-OSS-13

       # ./install.sh

       >M

2.6 安装MySQL服务

# ./install.sh

       >D

2.7 设置DB root访问的密码为password

 #mysql

       mysql> set password=password(‘password’);

2.8 初始化CloudStack数据库, 创建cloud用户; DB的管理员我们创建cloud/cloud的账户, 其它保持默认

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

2.9 配置管理服务器服务并启动服务

 # cloud-setup-management

2.7 检查管理服务

 # service cloud-management status

       # tail -n 200 -f /var/log/cloud/management/managementserver.log

3. KVM安装及配置

3.1 CentOS6.3 x64最小化安装 (硬件配置: 4CPU, 4G内存, 20G硬盘)

3.2 配置本地DVD源

同2.2

3.3 配置安全策略及防火墙

selinux配置同1.4

防火墙配置规划, 注意添加位置在第一个”-A INPUT …”之前:

# vi /etc/sysconfig/iptables

      -A INPUT -p tcp -m tcp ?dport 22 -j ACCEPT

      -A INPUT -p tcp -m tcp ?dport 1798 -j ACCEPT

      -A INPUT -p tcp -m tcp ?dport 16509 -j ACCEPT

      -A INPUT -p tcp -m tcp ?dport 5900:6100 -j ACCEPT

      -A INPUT -p tcp -m tcp ?dport 49152:49216 -j ACCEPT

3.4 安装bridge工具

 # yum install bridge-utils

3.5 配置网络

cloudbr0: management, public及storage网络流量

cloudbr1: guest网络流量

3.5.1 配置hostname

# echo “10.10.80.7   kvm1 kvm1.cschina.org” >> /etc/hosts

            # vi /etc/sysconfig/Network

             HOSTNAME=kvm1.cschina.org

3.5.2 配置bridge

# cd /etc/sysconfig/network-scripts/; touch ifcfg-cloudbr0 ifcfg-cloudbr1

            # vi ifcfg-cloudbr0

            DEVICE=cloudbr0

            TYPE=Bridge

            BOOTPROTO=none

            OnBOOT=yes

            STP=yes

            DELAY=5

            IPV6INIT=no

            IPV6_AUTOCOnF=no

            IPADDR=10.10.80.7

            NETMASK=255.255.255.0

            GATEWAY=10.10.80.254

 

            # vi ifcfg-cloudbr1

            DEVICE=cloudbr1

            TYPE=Bridge

            BOOTPROTO=none

            OnBOOT=yes

            DELAY=5

            STP=yes

            IPV6INIT=no

            IPV6_AUTOCOnF=no

 

            # vi ifcfg-eth0

            DEVICE=eth0

            NM_COnTROLLED=yes

            OnBOOT=yes

            TYPE=Ethernet

            BRIDGE=cloudbr0

 

            # vi ifcfg-eth1

            DEVICE=eth1

            NM_COnTROLLED=yes

            OnBOOT=yes

            TYPE=Ethernet

            BRIDGE=cloudbr1

3.5.3 检查网络及bridge的配置:

# service network restart

           # brctl show

           bridge name  bridge id   STP enabled interfaces

           cloudbr0    8000.005056856a67 yes   eth0

           cloudbr1    8000.005056851eeb yes   eth1

3.6 配置cloudstack本地源

3.6.1 解压cloudstack 4.0.1 安装文件至: /root/CloudStack-non-OSS-13/

3.6.2 创建本地yum源

 # cd /etc/yum.repos.d/; touch cloudstack.repo

            # vi cloudstack.repo

            [cloudstack]

            name=cloudstack

            baseurl=file:///root/CloudStack-non-OSS-13/

            gpgcheck=0

            enabled=1

            # yum makecache

3.7 安装cloudstack agent

# yum install cloud-agent

3.8 安装配置libvirt

我们使用的是CentOS发行版的bridge, CloudStack要求 libvirt版本>=0.9.4, qemu可选; 上一步安装cloud-agent时, 想着依赖也已安装完毕.下面要对libvirt进行配置

# vi /etc/libvirt/libvirtd.conf
listen_tls = 0

listen_tcp = 1

tcp_port = 16059

auth_tcp = “none”

mdns_adv = 0

# vi /etc/sysconfig/libvirtd

LIBVIRTD_ARGS=”?listen”

3.9 重启libvirtd服务

# service libvirtd restart

3.10 检查libvirt环境

# service libvirtd status

# virsh

#virsh -v

3.11 每一台kvm上重复上述步骤

4. XenServer安装及配置 (硬件配置: 4CPU, 4G内存, 20G硬盘)

4.1 安装XenServer 6.0.201 ISO

注意在安装XenServer过程中保持默认, 不要选择安装额外的包

4.2 配置管理网络

管理网络:

DHCP/Static: static

IP: 10.10.80.9

Netmask: 255.255.255.0

GW: 10.10.80.254

Hostname: xs1.cschina.org

NTP: enabled

4.3 配置NTP时间同步

NTP服务器: 10.10.80.5

4.4 配置网络流量标签

mgtpub:  management, public及storage网络流量

trunk: Guest网络流量

登入xenserver

 # ssh root@10.10.80.9

      # xe network-list

xenserver有两块物理网卡, 上述命令会显示xenbr0和xenbr1的网络UUID, 假设

uuid ( RO)                : 3489fa11-66ed-6a71-926b-5336d69c62ba

                    bridge ( RO): xenbr0

 

      uuid ( RO)                : eb734bff-750b-ecac-32b6-9490179f9d33

                    bridge ( RO): xenbr1

 

      # xe network-param-set name-label=mgtpub uuid=3489fa11-66ed-6a71-926b-5336d69c62ba

      # xe network-param-set name-label=guest uuid=eb734bff-750b-ecac-32b6-9490179f9d33

4.5 每一台xenserver重复上述步骤

5. 通过管理服务器添加资源域

5.1 通过浏览器访问管理服务器

 http://172.16.206.110:8080/client 或者 http://10.10.80.5:8080/client

5.2 更改全局配置

integration.api.port : 8096

       management.network.cidr : 10.10.80.0/24

       secstorage.allowed.internal.sites : 10.10.80.0/24

       host : 10.10.80.5

 

5.3 重启管理服务器服务

# service cloud-management restart

5.4 添加高级资源域

在同一个资源域, 机架下, 添加两个集群, 分别是XenServer和KVM的集群

5.4.1 在建立第一个高级资源域的时候添加第一个KVM集群

5.4.1.1 浏览器登入管理服务器

5.4.1.2 Infrastructure -> Zones -> Add Zone -> Advanced -> Next

5.4.1.3 Setup Zone

Name: advzone

DNS 1: 172.16.100.111

Internal DNS 1: 10.10.80.254

Hypervisor: KVM

Network Domain: cschina.org

Guest CIDR: 10.1.1.0/24

Public: Checked

Local Storage Enabled: Unchecked

5.4.1.4 Physical Network

5.4.1.5 Public Traffic

5.4.1.6 POD

Pod name: advpod

Reserved system gateway: 10.10.80.254

Reserved system netmask: 255.255.255.0

Start reserved system IP: 10.10.80.50

End Reserved system IP: 10.10.80.80

5.4.1.7 Guest Traffic

vlan range: 300 ~ 500

5.4.1.8 Cluster

Name: kvmcluster

5.4.1.9 Host

Host name: 10.10.80.7

username: root

password: password

Host tags: <无>

5.4.1.10 Add Primary Storage

name: kvmpri

protocol: nfs

Server: 10.10.80.6

Path: /home/export/nfs/kvmpri


推荐阅读
  • Docker的安全基准
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 深入理解Cookie与Session会话管理
    本文详细介绍了如何通过HTTP响应和请求处理浏览器的Cookie信息,以及如何创建、设置和管理Cookie。同时探讨了会话跟踪技术中的Session机制,解释其原理及应用场景。 ... [详细]
  • 本文深入探讨了Linux系统中网卡绑定(bonding)的七种工作模式。网卡绑定技术通过将多个物理网卡组合成一个逻辑网卡,实现网络冗余、带宽聚合和负载均衡,在生产环境中广泛应用。文章详细介绍了每种模式的特点、适用场景及配置方法。 ... [详细]
  • 在现代网络环境中,两台计算机之间的文件传输需求日益增长。传统的FTP和SSH方式虽然有效,但其配置复杂、步骤繁琐,难以满足快速且安全的传输需求。本文将介绍一种基于Go语言开发的新一代文件传输工具——Croc,它不仅简化了操作流程,还提供了强大的加密和跨平台支持。 ... [详细]
  • MySQL缓存机制深度解析
    本文详细探讨了MySQL的缓存机制,包括主从复制、读写分离以及缓存同步策略等内容。通过理解这些概念和技术,读者可以更好地优化数据库性能。 ... [详细]
  • 搭建Jenkins、Ant与TestNG集成环境
    本文详细介绍了如何在Ubuntu 16.04系统上配置Jenkins、Ant和TestNG的集成开发环境,涵盖从安装到配置的具体步骤,并提供了创建Windows Slave节点及项目构建的指南。 ... [详细]
  • 本文详细介绍了在 Ubuntu 16.04 系统中使用 APT-GET 包管理器安装 MySQL 5.7 数据库的过程,并对安装后的文件和目录结构进行了说明,包括重要的配置文件及其功能。 ... [详细]
  • 在 Windows 10 中,F1 至 F12 键默认设置为快捷功能键。本文将介绍几种有效方法来禁用这些快捷键,并恢复其标准功能键的作用。请注意,部分笔记本电脑的快捷键可能无法完全关闭。 ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 本文介绍了一款用于自动化部署 Linux 服务的 Bash 脚本。该脚本不仅涵盖了基本的文件复制和目录创建,还处理了系统服务的配置和启动,确保在多种 Linux 发行版上都能顺利运行。 ... [详细]
  • 在Linux系统中配置并启动ActiveMQ
    本文详细介绍了如何在Linux环境中安装和配置ActiveMQ,包括端口开放及防火墙设置。通过本文,您可以掌握完整的ActiveMQ部署流程,确保其在网络环境中正常运行。 ... [详细]
  • Windows 系统下 MySQL 8.0.11 的安装与配置
    本文详细介绍了在 Windows 操作系统中安装和配置 MySQL 8.0.11 的步骤,包括环境准备、安装过程以及后续配置,帮助用户顺利完成数据库的部署。 ... [详细]
  • DNN Community 和 Professional 版本的主要差异
    本文详细解析了 DotNetNuke (DNN) 的两种主要版本:Community 和 Professional。通过对比两者的功能和附加组件,帮助用户选择最适合其需求的版本。 ... [详细]
  • 本文详细介绍了如何在Ubuntu系统中下载适用于Intel处理器的64位版本,涵盖了不同Linux发行版对64位架构的不同命名方式,并提供了具体的下载链接和步骤。 ... [详细]
author-avatar
舞倾城2010_217
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有