热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

cloudstack4.0平台安装解析

我之前的安装帖子,只讲了CloudStack的环境如何去搭建,并没讲为什么这么做?也没讲做出来的东西有什么用?也没讲做出来以后该如何去扩展这个系统?所以可能那些文档可能只是对于开发人有点意义,对于实际用户而言意义并不大。后面,我可能用几篇文章来描述

我之前的安装帖子,只讲了CloudStack的环境如何去搭建,并没讲为什么这么做?也没讲做出来的东西有什么用?也没讲做出来以后该如何去扩展这个系统?所以可能那些文档可能只是对于开发人有点意义,对于实际用户而言意义并不大。后面,我可能用几篇文章来描述和解答这些问题。

这里先讲一个应用实例,有需求的人应该能够看懂,并且能领会到系统设计和规划的原理。CS公司内网有大约50个研发人员,每个人为了开发和测试公司的产品至少需要2种操作系统环境(Windows2008+Ubuntu),每个操作系统至少需要2个虚拟机才能保证正常工作,有人还有编译代码的需求,所以平均每人需要4core/6GB的计算资源。总共需要200个虚拟机,总共需要200Core*300GB的计算资源。

CS公司的工程师做了这样的一个设计,首先申请了一个独立网段192.168.168.0用于该测试CloudStack。然后找来了两台服务器用于平台的初始化安装,IP地址的规划如下表。另外,CS公司的网管也给他们借了一个千兆网络交换机,这个交换机配置了网关和DNS解析,保证测试网段的机器既能够上网,并能够被公司内网连接。

IP地址 功能
192.168.168.1 网关和DNS解析的地址,通过它所有虚拟机可以被内网用户访问
192.168.168.2 CloudStack管理服务器,配置为2*4Core/16GB/1TB*2HD,安装RHEL6.2操作系统,安装NFS服务
192.168.168.3 XS-01为第一台Hypervisor服务器,用户运行虚拟机,这里使用XenServer,安装之后在网上申请免费许可证用来测试满足50人的配置为4*4Core(开超线程)/64GB/125GB*2HD的服务器7台;或者相当计算量的其他计算资源。
192.168.168.4~14 为后期系统扩展新增的XenServer服务器预留
192.168.168.15 为后期扩容的存储系统预留,如果开发编译的过程没有密集的磁盘读写操作的话,使用NFS或iSCSI存储即可。否则考虑使用FC存储。
92.168.168.16~20 CloudStack Private网段地址
92.168.168.21~25 CloudStack Storage网段地址
92.168.168.30~250 CloudStack Guest网段地址

图中左侧的两台服务器就是最小化的测试环境,足够满足CloudStack平台搭建,和虚拟机模板的测试工作。等到测试和配置足够了,就可以增加更多的服务器节点到CloudStack平台上来。增加的方法很简单,在服务器上安装XenServer之后,在CloudStack中添加host即可。

准备系统安装软件
根据以上的需求需要下载和刻录RHEL6.2的安装盘;需要下载ClouStack的安装包,http://cloudstack.apt-get.eu/rhel/4.0/ 。 CloudStack的安装包可以下载到本地,保持它的目录结构不变,回头放到装好的RHEL服务器的Apache目录中建立本机安装源。

系统安装
安装的过程已经在CloudStack官方文档上有了非常详细的描述。本次就不逐条命令解释了。
这里只想讲几点须注意的地方。根据CS公司的这个需求,建议使用的CloudStack管理服务器需要稍微大一点的本地磁盘和内存;根据我最近的测试发现管理服务器和NFS服务器混用的情况下,服务器内存的消耗还是蛮大的,为了保证速度16GB应该非常够用,我的测试机只有4GB还是虚拟机,速度也很快。本地磁盘最好是两块1TB的高速磁盘做Raid10,或者多块小盘也行,最好Raid做完之后有大约1TB的存储空间;以便存放测试初期的系统模板和虚拟机的磁盘和快照文件。

最后我想从系统配置文件的角度讲一下在RHEL操作系统里面都修改了那些文件。

安装源文件需要两个:
rhel6.repo RHEL系统可以选择默认最小安装,这样装的最快,装好以后,把DVD mount上,在做成源,这样需要什么包,直接yum install就行了,非常方便快捷
cloudstack.repo CloudStack的所有安装包都可以放在CloudStack管理服务器本机的Apache服务器上,另外这个Apache服务器还可以作为上传系统模板的中转站。

[root@cs40 yum.repos.d]# pwd
/etc/yum.repos.d
[root@cs40 yum.repos.d]# ls
cloudstack.repo redhat.repo rhel6.repo rhel-source.repo
[root@cs40 yum.repos.d]# cat rhel6.repo
[rhel6]
name=rhel6
baseurl=file:///media/
enabled=1
gpgcheck=0
[root@cs40 yum.repos.d]# cat cloudstack.repo
[cloudstack]
name=cloudstack
baseurl=http://127.0.0.1/4.0/
enabled=1
gpgcheck=0
[root@cs40 yum.repos.d]#

主机hosts和network文件,RHEL服务器必须要能正确的解析出自己的fqdn

[root@cs40 yum.repos.d]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
192.168.168.2 cs40.cs-cloud.com cs40
[root@cs40 sysconfig]# cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=cs40.cs-cloud.com

Mysql数据库需启动服务之后,才能修改my.cnf配置文件,加入CloudStack所需要的参数之后重启服务,参数如下:

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
#CloudStack need them
innodb_rollback_on_timeout=1
innodb_lock_wait_timeout=600
max_cOnnections=350
log-bin=mysql-bin
binlog-format = 'ROW'
#CloudStack need theme
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

其他相关的配置文件我已经打包了,有需要参考的,请到我下载,这里就不做逐一的解释。
http://upload.server110.com/file/20131212/1-13121221091C08.zip


推荐阅读
  • Ubuntu 环境下配置 LAMP 服务器
    本文详细介绍了如何在 Ubuntu 系统上安装和配置 LAMP(Linux、Apache、MySQL 和 PHP)服务器。包括 Apache 的安装、PHP 的配置以及 MySQL 数据库的设置,确保读者能够顺利搭建完整的 Web 开发环境。 ... [详细]
  • 我的读书清单(持续更新)201705311.《一千零一夜》2006(四五年级)2.《中华上下五千年》2008(初一)3.《鲁滨孙漂流记》2008(初二)4.《钢铁是怎样炼成的》20 ... [详细]
  • 本文探讨了在Windows系统中运行Apache服务器时频繁出现崩溃的问题,并提供了多种可能的解决方案和建议。错误日志显示多个子进程因达到最大请求限制而退出。 ... [详细]
  • 本文详细探讨了在Web开发中常见的UTF-8编码问题及其解决方案,包括HTML页面、PHP脚本、MySQL数据库以及JavaScript和Flash应用中的乱码问题。 ... [详细]
  • 本文介绍了如何在不同操作系统上安装Git,以及一些基本和高级的Git操作,包括项目初始化、文件状态检查、版本控制、分支管理、标签处理、版本回退等,并简要提及了开源许可协议的选择。 ... [详细]
  • 在 Ubuntu 22.04 LTS 上部署 Jira 敏捷项目管理工具
    Jira 敏捷项目管理工具专为软件开发团队设计,旨在以高效、有序的方式管理项目、问题和任务。该工具提供了灵活且可定制的工作流程,能够根据项目需求进行调整。本文将详细介绍如何在 Ubuntu 22.04 LTS 上安装和配置 Jira。 ... [详细]
  • 在Ubuntu 18.04上使用Nginx搭建RTMP流媒体服务器
    本文详细介绍了如何在Ubuntu 18.04上使用Nginx和nginx-rtmp-module模块搭建RTMP流媒体服务器,包括环境搭建、配置文件修改和推流拉流操作。适用于需要搭建流媒体服务器的技术人员。 ... [详细]
  • mysql 授权!!
    为什么80%的码农都做不了架构师?MySQL的权限系统围绕着两个概念:认证-确定用户是否允许连接数据库服务器授权-确定用户是否拥有足够的权限执 ... [详细]
  • 本文详细介绍了在 Ubuntu 系统上安装和配置 MySQL、Tomcat 和 JDK 的步骤。通过本文,您将了解如何顺利安装这些组件,并确保它们能够正常协同工作。 ... [详细]
  • MySQL Administrator: 监控与管理工具
    本文介绍了 MySQL Administrator 的主要功能,包括图形化监控 MySQL 服务器的实时状态、连接健康度、内存健康度以及如何创建自定义的健康图表。此外,还详细解释了状态变量和系统变量的管理。 ... [详细]
  • Vulnhub DC3 实战记录与分析
    本文记录了在 Vulnhub DC3 靶机上的渗透测试过程,包括漏洞利用、内核提权等关键步骤,并总结了实战经验和教训。 ... [详细]
  • 本文介绍了 PHP 的基本概念、服务器与客户端的工作原理,以及 PHP 如何与数据库交互。同时,还涵盖了常见的数据库操作和安全性问题。 ... [详细]
  • 2023年最新指南:如何在PHP中屏蔽警告和错误
    本文详细介绍了如何在PHP中屏蔽警告和错误,包括多种方法和最佳实践,帮助开发者提升代码质量和安全性。 ... [详细]
  • CentOS下ProFTPD的安装与配置指南
    本文详细介绍在CentOS操作系统上安装和配置ProFTPD服务的方法,包括基本配置、安全设置及高级功能的启用。 ... [详细]
  • 在尝试通过自定义端口部署Spring Cloud Eureka时遇到了连接失败的问题。本文详细描述了问题的现象,并提供了有效的解决方案,以帮助遇到类似情况的开发者。 ... [详细]
author-avatar
标榜贾_120
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有