1. 先决条件
-
至少一个支持硬件虚拟化的计算机。如果是个人电脑,在主板bios里面开启下虚拟化。
-
CentOS 6.4 x86_64 的 minimal install CD <http://mirrors.kernel.org/centos/6.4/isos/x86_64/CentOS-6.4-x86_64-minimal.iso>
-
一个以xxx.xxx.xxx.1/24作为网关的C类地址并且该网络中不能存在DHCP服务器;运行Cloudstack 的机器不能使用动态地址。这样做只是为了简单起见,我的环境中是192.168.1.0/24网络。
2. 环境介绍
CloudStack可分为管理节点安装和受控节点安装,我的cloudstack部署在家里一台pc上,并且在路由器上做了映射,然后用了dnspod的ddns来更新域名解析。这里我使用单节点方式 电脑配置8核推土机,8G内存(有条件内存可以再加点,到时候可以多跑几个虚拟机),家里内网ip是192.168.1.网段,装cloudstack这台机器的ip是192.168.1.4
首先,我们先准备要Cloudstack的安装环境。其中包括以下步骤。
2.1 操作系统
使用CentOS 6.5 x86_64 最小化安装镜像在你的设备上安装CentOS系统,下面的安装操作使用默认选项完成。 在安装完成之后,可以使用root用户通过SSH连接到该系统。注意,在生产环境中你应该禁止root登录,所以在你完成安装和配置之后要关闭远程登录。
2.2 网络配置
默认情况下,网络需要配置才能在我们的环境中正常使用。由于没有使用DHCP服务器所以我们需要手动配置网络接口。对于本次练习我们假设,仅使用eth0这一个网络接口。 使用root用户在登录本地控制台。检查/etc/sysconfig/network-scripts/ifcfg-eth0,默认它应如下所示:
DEVICE="eth0" HWADDR="52:54:00:B9:A6:C0" NM_CONTROLLED="yes" ONBOOT="no"
很不幸,当前配置不允许连接到网络,当然也不符合我们安装Cloudstack的条件。我们按照以下示例来配置IP地址,子网掩码等等:
DEVICE=eth0 HWADDR=52:54:00:B9:A6:C0 NM_CONTROLLED=no ONBOOT=yes BOOTPROTO=none IPADDR=192.168.1.4 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 DNS1=8.8.8.8 DNS2=8.8.4.4
在配置好网络之后,我们需要运行一些命令来启动网络:
# chkconfig network on # service network start
2.3 主机名配置
CloudStack要求正确配置主机名。在默认情况下,安装完操作系统后,主机名是localhost.localdomain。运行下面的命令来测试:
# hostname --fqdn
在此处将返回这样的结果:
localhost
为了纠正这种情况,我们需要编辑/etc/hosts文件来设置主机名,类似如下格式:
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.1.4 cloudstack.54im.com
在你编辑完hosts文件之后,使用下面的命令重启网络:
# service network restart
现在使用hostname –fqdn命令重新检查主机名并确认返回了正确的FQDN
2.4 SELinux配置
为了让CloudStack正常工作,我们必须将SELinux设置为permissive。需要在当前系统运行状态下和启动后都能够生效,进行以下配置。 在系统运行状态下的将SELinux设置为permissive,请执行下面命令:
# setenforce 0
按照下面的列子来配置/etc/selinux/config文件以确保当前SELinux状态为permissive。如这个例子所示:
# This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=permissive # SELINUXTYPE= can take one of these two values: # targeted - Targeted processes are protected, # mls - Multi Level Security protection. SELINUXTYPE=targeted
2.5 NTP
需要为CloudStack环境中的所有服务器指定NTP服务器以便保证时钟同步。然而,默认安装情况下NTP是没有安装的。要安装NTP,请按下面方法操作:
# yum -y install ntp
实际上默认配置已经满足我们的要求了,所以我们要做的就是启用NTP 并配置其在启动后自动运行:
# chkconfig ntpd on # service ntpd start
2.6 配置ClouStack软件库
我们需要配置这台机器使用CloudStack软件库。 注解 Apache CloudStack官方发布的为源代码。因此没有可用的“官方”安装程序。完整的安装向导介绍了怎么获取源代码和以及制作RPM包和yum库。本指南尽可能简化这些操作,所以我们使用一个社区提供的yum库。 要添加CloudStack库,创建/etc/yum.repos.d/cloudstack.repo文件,并添加如下信息。
[cloudstack] name=cloudstack baseurl=http://cloudstack.apt-get.eu/rhel/4.3/ enabled=1 gpgcheck=0
2.7 NFS
主存储和辅助存储我们都使用NFS存储。接下来我们要设置两个NFS共享。首先安装nfs-utils。
# yum install nfs-utils
现在我们在NFS服务器上配置两个不同的共享目录。我们需要在/etc/exports文件中分别配置一下。确保这个文件中包含下面内容:
/secondary *(rw,async,no_root_squash) /primary *(rw,async,no_root_squash)
自己测试玩玩的话,可以这样配置nfs,生产环境不能这样, * 表示所以客户端都能挂载这2个目录,当然这里把ip固定死也不是很好的解决方案,毕竟虚拟机也是要能挂载二级存储的,可以使用防火墙或者hosts.allow deny来控制 你可能注意到系统中根本不存在这两个目录。我们可以用下面的命令来创建并且赋予相应的权限:
# mkdir /primary # mkdir /secondary
CentOS 6.x默认使用NFSv4。NFSv4需要所有客户端设置域。在我们的环境中域名为cloud.priv,要达到这个目的,请在/etc/idmapd.conf文件中去掉如下注释并修改:Domain = cloud.priv 接下来请在/etc/sysconfig/nfs文件中去掉如下选项的注释:
LOCKD_TCPPORT=32803 LOCKD_UDPPORT=32769 MOUNTD_PORT=892 RQUOTAD_PORT=875 STATD_PORT=662 STATD_OUTGOING_PORT=2020
接下来需要配置防火墙策略允许NFS客户端访问。编辑/etc/sysconfig/iptables
-A INPUT -s 192.168.1.0/24 -m state --state NEW -p udp --dport 111 -j ACCEPT -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 111 -j ACCEPT -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 2049 -j ACCEPT -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 32803 -j ACCEPT -A INPUT -s 192.168.1.0/24 -m state --state NEW -p udp --dport 32769 -j ACCEPT -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 892 -j ACCEPT -A INPUT -s 192.168.1.0/24 -m state --state NEW -p udp --dport 892 -j ACCEPT -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 875 -j ACCEPT -A INPUT -s 192.168.1.0/24 -m state --state NEW -p udp --dport 875 -j ACCEPT -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 662 -j ACCEPT -A INPUT -s 192.168.1.0/24 -m state --state NEW -p udp --dport 662 -j ACCEPT
配置完成后用下面的命令行重启iptables服务:
# service iptables restart
执行以下命令,将nfs服务加入开机启动:
# service rpcbind start # service nfs start # chkconfig rpcbind on # chkconfig nfs on
这里nfs服务启动后,我们不用手动挂载这2个目录,系统虚拟机启动时会自己挂载的。
查看下这2个目录
# exportfs -a
如果客户端和服务器端使用nfs v4版本,需在hypervisor和管理服务器上修改 /etc/idmapd.conf
# vi /etc/idmapd.conf
修改成自己域名
Domain = 54im.com
3. 管理服务器安装
我们将要进行CloudStack管理节点和相关工具的安装。
3.1 安装配置数据库
接下来安装MySQL数据库并配置一些选项以确保和CloudStack能正常工作。 执行下面的命令来安装:
# yum -y install mysql-server
安装MySQL之后我们需要改动/etc/my.cnf文件中的一些配置。我们需要在[mysqld]下面添加下列参数:当然后期根据cloudstack实际运行情况来对mysql进行优化。
innodb_rollback_on_timeout=1 innodb_lock_wait_timeout=600 max_connections=350 log-bin=mysql-bin binlog-format = 'ROW'
正确配置完成之后使用以下命令来使MySQL启动并将其添加到开机自动启动项:
# service mysqld start # chkconfig mysqld on
如果你想偷懒不想手动设置密码和做一些安全措施的话,可以运行mysql_secure_installation 根据向导来对mysql进行操作。
mysql_secure_installation
3.2 安装cloudstack
现在我们开始安装管理服务器。执行以下命令:
# yum -y install cloud-client
等待程序执行完毕后,我们初始化数据库,执行下面的命令行和选项:
cloudstack-setup-databases cloud:<dbpassword>@<ip address mysql server> \ --deploy-as=root:<password> \ -e <encryption_type> \ -m <management_server_key> \ -k <database_key> \ -i <management_server_ip>
这里我们这样运行
# cloudstack-setup-databases cloud:password@localhost --deploy-as=root:this_mysql_password
当操作完成后,你应该会看到”CloudStack has successfully initialized the database.”这个消息。 创建好数据库之后,我们执行最后的步骤来安装和启动管理服务器:
# cloudstack-setup-management
3.3 上传系统模板
CloudStack使用一组系统虚机来提供访问虚机控台,各种网络服务和管理存储的功能。当你引导云的时候,该步骤会获取这些准备用于部署的系统镜像。 现在我们要从刚刚挂载的共享存储上面下载虚机模板并部署它们。管理服务器上有一个脚本来操作这些系统虚机镜像。
# /usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt -m /secondary -u http://download.cloud.com/templates/4.3/systemvm64template-2014-01-14-master-kvm.qcow2.bz2 -h kvm -F
如果你事先下载好了模版,只需导入下即可
# /usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt -m /secondary -f systemvm64template-2014-01-14-master-kvm.qcow2.bz2 -h kvm -F
下载其他类型的虚拟机模版可参考
For Hyper-V # /usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt -m /mnt/secondary -u http://download.cloud.com/templates/4.3/systemvm64template-2013-12-23-hyperv.vhd.bz2 -h hyperv -F For XenServer: # /usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt -m /mnt/secondary -u http://download.cloud.com/templates/4.3/systemvm64template-2014-01-14-master-xen.vhd.bz2 -h xenserver -F For vSphere: # /usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt -m /mnt/secondary -u http://download.cloud.com/templates/4.3/systemvm64template-2014-01-14-master-vmware.ova -h vmware -F For LXC: # /usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt -m /mnt/secondary -u http://download.cloud.com/templates/4.3/systemvm64template-2014-01-14-master-kvm.qcow2.bz2 -h lxc -F
总结我们管理服务器的设置。在配置完hypervisor之后我们仍需对CloudStack进行配置。
4. KVM安装和配置
我们使用KVM作为 hypervisor-我们在hypervisor主机上恢复已经做过的初始化操作并且覆盖安装代理软件,你可以重复同样的步骤来添加其他的KVM节点到CloudStack环境中。
4.1 先决条件
我们同样使用管理服务器作为计算节点,这样我们可以利用在安装管理服务器时执行完成的那些准备工作,这里我仅仅列出这些步骤:
-
网络配置
-
主机名
-
SELinux
-
NTP
-
配置ClouStack软件库
你不需要在管理节点上做操作,但是在任何后添加的节点上你都需要完成以上那些操作。
4.2 安装cloud-agent
安装KVM代理仅仅需要一个简单的命令,但是接下来我们需要进行很多配置。
# yum -y install cloud-agent
4.3 配置KVM
我们需要分两部分配置KVM:libvirt和QEMU。
4.3.1 配置QEMU
KVM只有一个相对简单的配置项。我们需要编辑QEMU VNC配置。确保/etc/libvirt/qemu.conf文件有如下所示的行,并将其注释去掉。
vnc_listen=0.0.0.0
4.3.2 配置Libvirt
CloudStack使用libvirt管理虚拟机。因此正确的配置libvirt是非常重要的。Libvirt是cloud-agent的一个依赖组件,它应该已经安装好了。
-
为了实现动态迁移libvirt需要监听不可靠的TCP连接。还需要关闭libvirts尝试使用组播DNS进行广播。这些都是在 /etc/libvirt/libvirtd.conf文件中进行配置。
设置下列参数:
listen_tls = 0 listen_tcp = 1 tcp_port = "16059" auth_tcp = "none" mdns_adv = 0
-
仅仅在libvirtd.conf中启用”listen_tcp”是不够的,我们还必须修改/etc/sysconfig/libvirtd中的参数:
取消下行的注释:
#LIBVIRTD_ARGS="--listen"
-
重启libvirt
# service libvirtd restart
KVM配置完成结束对KVM的安装和配置之后,接下来需要在CloudStack管理界面中实际配置我们的云。
5. 访问用户界面
要访问CloudStack的WEB界面,你需要在浏览器中输入http://192.168.1.4:8080/client,使用用户’admin’和默认密码’password’来登录。第一次登录后,有两个选项可以设置CloudStack。这里我们选择继续执行基本配置安装。
相关推荐
### CentOS6.5 + CloudStack4.3 搭建流程及问题汇总 #### 一、搭建流程 ##### 1.1 配置网卡属性 为了确保CloudStack能够正常运行,首先需要对CentOS 6.5的操作系统的网卡进行配置。这一步骤非常重要,因为它直接...
- **安装管理节点**:部署CloudStack管理服务器,这将处理资源调度、监控和服务提供。 - **配置数据库**:CloudStack依赖于MySQL数据库来存储配置信息,需要设置并连接到数据库。 - **安装Agent**:在每个计算...
CentOS-6.5-i386-bin-DVD1.iso 下载地址百度云的下载连接。
综上所述,CentOS-6.5-i386-bin-DVD1.iso 为用户提供了一个强大、稳定且易于管理的操作系统,尤其适合那些需要在 32 位架构上运行服务器或开发环境的场景。通过合理配置和维护,可以充分发挥其潜力,满足多种业务...
Txt中包含 CentOS-6.5-x86_64-bin-DVD1 和 CentOS-6.5-x86_64-bin-DVD2 的官网下载地址 和 百度网盘下载地址
**标题解析:** ...综上所述,"centos6.5 glibc-2.3.4-2.41.x86_64.rpm" 文件是 CentOS 6.5 用户为了满足 Oracle 11g 数据库安装要求的关键组件,它的安装和配置必须慎重对待,以确保系统的稳定性和安全性。
CentOS-6.5-i386-minimalCentOS-6.5-i386-minimalCentOS-6.5-i386-minimal
VMware10 安装并配置 CentOS-6.5-x86_64-bin-DVD1 ...VMware10 安装并配置 CentOS-6.5-x86_64-bin-DVD1 涵盖了从准备工作到安装、登录、网络配置和 FTP 服务安装与配置等多个方面,为用户提供了一个详细的安装指南。
本文将详细介绍如何在服务器上安装并配置CentOS 6.5系统,特别是针对Oracle数据库环境的优化和配置方法。CentOS 6.5是一款稳定且广泛使用的Linux发行版,尤其适合企业级应用,包括Oracle数据库部署。 #### 二、安装...
Centos6.5升级openssh-9.1p1包括32位和9.3版本的63位的全部rpm包,附带telnet客户端的rpm包 32位: openssh-9.1p1-1.el6.i386.rpm openssh-clients-9.1p1-1.el6.i386.rpm openssh-server-9.1p1-1.el6.i386.rpm ...
### Centos6.5下安装Heartbeat-2.1.4 #### 一、Heartbeat简介 Heartbeat是一款开源的高可用性解决方案软件,主要用于在两台或多台服务器之间实现故障转移(failover),确保服务的连续性和可用性。通过Heartbeat,...
CentOs6.5镜像源
centos6.5 minimal 安装包,linux系统,最小安装
通过本文的介绍,我们不仅了解了CentOS 6.5的基本概念和特点,还详细介绍了如何下载和安装该系统的具体步骤。对于初次接触Linux系统尤其是CentOS 6.5的用户来说,本文提供了一个全面而实用的指南。希望每位读者都...
在本文中,我们将深入探讨如何在CentOS操作系统上安装CloudStack 4.3。CloudStack是一个开源的基础设施即服务(IaaS)平台,用于构建、管理和自动化云计算环境。以下是安装的详细步骤: 首先,确保你的系统环境是...
在Linux系统中,CentOS 6.5是一个广泛使用的版本,而MySQL 5.6则是一个流行的开源数据库管理系统。本文将详细介绍如何在CentOS 6.5上进行MySQL 5.6的一键安装过程,包括必要的环境准备、安装步骤、配置优化以及安全...
在本文档中,我们详细介绍了如何在虚拟机中安装...总的来说,这个文档覆盖了从基础操作系统安装到网络配置,再到用户管理和服务安装的多个重要环节,是建立一个完整且功能丰富的CentOS 6.5开发或测试环境的详细指南。
CentOS6.5各种镜像文件,entOS-6.5-x86_64-bin-DVD1.iso、entOS-6.5-x86_64-bin-DVD2.iso、entOS-6.5-x86_64-LiveDVD.iso、entOS-6.5-x86_64-minimal.iso
centOS 6.5 安装 mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
本教程将指导您如何在 CentOS 6.5 操作系统上安装 Oracle 12c 数据库管理系统,旨在帮助读者熟悉 Oracle 数据库安装和配置过程。 一、 安装图形化基础包 在安装 Oracle 12c 之前,需要安装图形化基础包,包括 xdm ...