# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2014, Apache Software Foundation
# This file is distributed under the same license as the Apache CloudStack Installation Documentation package.
# 
# Translators:
msgid ""
msgstr ""
"Project-Id-Version: Apache CloudStack Installation RTD\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-06-30 11:42+0200\n"
"PO-Revision-Date: 2014-06-30 10:25+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: Chinese (China) (http://www.transifex.com/projects/p/apache-cloudstack-installation-rtd/language/zh_CN/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: zh_CN\n"
"Plural-Forms: nplurals=1; plural=0;\n"

# 6cd8b0759d274663bfffb589061f6f52
#: ../../qig.rst:18
msgid "Quick Installation Guide for CentOS"
msgstr "基于CentOS的快速安装指南"

# 9be60313b8f24a13978f899e18120244
#: ../../qig.rst:21
msgid "Overview"
msgstr "概述"

# bb54b96eceb4444fa03567f9f31a1368
#: ../../qig.rst:24
msgid "What exactly are we building?"
msgstr "我们真正要构建什么？"

# d07669bf21f74381a55f977c98d059e5
#: ../../qig.rst:26
msgid ""
"Infrastructure-as-a-Service (IaaS) clouds can be a complex thing to build, "
"and by definition they have a plethora of options, which often lead to "
"confusion for even experienced admins who are newcomers to building cloud "
"platforms. The goal for this runbook is to provide a straightforward set of "
"instructions to get you up and running with CloudStack with a minimum amount"
" of trouble."
msgstr "构建基础架构即服务(IaaS)云是一个很复杂的工作，它定义了过多的选项，甚至新接触云平台的管理员都很容易混乱。此篇操作手册的目的就是为减少安装CloudStack时所发生的问题并提供最直接的帮助。"

# 0d4c4b0427014885a465573bca862560
#: ../../qig.rst:34
msgid "High level overview of the process"
msgstr "整体过程概述"

# fe3355f1acbd41399f2a663c90198e9d
#: ../../qig.rst:36
msgid ""
"This runbook will focus on building a CloudStack cloud using KVM with CentOS"
" 6.4 with NFS storage on a flat layer-2 network utilizing layer-3 network "
"isolation (aka Security Groups), and doing it all on a single piece of "
"hardware."
msgstr "该操作手册将重点介绍如何搭建Cloudstack云平台: 使用CentOS 6.4作为KVM和NFS存储主机，部署于扁平二层网络并使用三层网络隔离(安全组), 所有资源集中于一台物理主机"

# 121007f51b094c8aaeac5c49937a5e62
#: ../../qig.rst:41
msgid ""
"KVM, or Kernel-based Virtual Machine is a virtualization technology for the "
"Linux kernel. KVM supports native virtualization atop processors with "
"hardware virtualization extensions."
msgstr "KVM或Kernel-based Virtual Machine是一种基于LInux内核的虚拟化技术。KVM支持本地虚拟化，主机的CPU处理器需支持硬件虚拟化扩展。"

# 0e87db8720ee41cfac5448651b99b134
#: ../../qig.rst:45
msgid ""
"Security Groups act as distributed firewalls that control access to a group "
"of virtual machines."
msgstr "安全组起到类似分布式防火墙的作用，它可以对一组虚拟机进行访问控制。"

# 605246954ba64e77b704db1e41f70958
# b19d4cd5e52648039e330c62094e1b90
#: ../../qig.rst:50 ../../qig.rst:441
msgid "Prerequisites"
msgstr "先决条件"

# 9c888fde9935462b91316870b5352356
#: ../../qig.rst:52
msgid "To complete this runbook you'll need the following items:"
msgstr "完成此操作手册你需要如下条件："

# 7398c338e13940178c516024cdb7624e
#: ../../qig.rst:54
msgid "At least one computer which supports hardware virtualization."
msgstr "至少一台支持硬件虚拟化的主机。"

# 7577f66c21704f93b482ece2df1e02c8
#: ../../qig.rst:56
msgid ""
"The `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>`_"
msgstr "`\"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>`_"

# 0be94f9998b1434b9a98e5d2eb09a094
#: ../../qig.rst:59
msgid ""
"A /24 network with the gateway being at xxx.xxx.xxx.1, no DHCP should be on "
"this network and none of the computers running CloudStack will have a "
"dynamic address. Again this is done for the sake of simplicity."
msgstr "一个C类(/24)网络，网关为 xxx.xxx.xxx.1，网络中不能存在DHCP服务器，所有运行Cloudstack的主机需使用静态IP地址。"

# d42364c803234d79abd4f4e8ef300913
#: ../../qig.rst:65
msgid "Environment"
msgstr "环境"

# 67d9a987dbb94e83a8686df4283209a6
#: ../../qig.rst:67
msgid ""
"Before you begin , you need to prepare the environment before you install "
"CloudStack. We will go over the steps to prepare now."
msgstr "首先，需要先准备要Cloudstack的安装环境，以下将详细描述准备步骤。"

# 744452849b164ae08575b3bbe6199141
#: ../../qig.rst:72
msgid "Operating System"
msgstr "操作系统"

# 4365445c8c1c4c36bbee6f9d2b9b0e15
#: ../../qig.rst:74
msgid ""
"Using the CentOS 6.4 x86_64 minimal install ISO, you'll need to install "
"CentOS on your hardware. The defaults will generally be acceptable for this "
"installation."
msgstr "使用 CentOS 6.4 x86_64 minimal install 镜像，在物理主机上安装CentOS，安装过程中接受使用默认选项。"

# 49109b885f65416db8533ac7b1ad5222
#: ../../qig.rst:78
msgid ""
"Once this installation is complete, you'll want to connect to your freshly "
"installed machine via SSH as the root user. Note that you should not allow "
"root logins in a production environment, so be sure to turn off remote "
"logins once you have finished the installation and configuration."
msgstr "当安装完成后，需要以root身份通过SSH连接新安装的主机，注意不要以root账户登录生产环境，请在完成安装和配置后关闭远程登录。"

# a105d2a14b9645b39773b7f2f43be743
#: ../../qig.rst:87
msgid "Configuring the network"
msgstr "网络配置"

# 37ac1900de634e79828d33b848dfbf83
#: ../../qig.rst:89
msgid ""
"By default the network will not come up on your hardware and you will need "
"to configure it to work in your environment. Since we specified that there "
"will be no DHCP server in this environment we will be manually configuring "
"your network interface. We will assume, for the purposes of this exercise, "
"that eth0 is the only network interface that will be connected and used."
msgstr "默认情况下新安装的机器并未启用网络，您需要根据实际环境进行配置。由于网络中不存在DHCP服务器，您需要手工配置网络接口。为了实现快速简化安装的目标，这里假定主机上只有eth0一个网络接口。"

# 1295d8c07ee849fd9b266a0980e0eb03
#: ../../qig.rst:95
msgid ""
"Connecting via the console you should login as root. Check the file "
"/etc/sysconfig/network-scripts/ifcfg-eth0, it will look like this by "
"default:"
msgstr "使用root用户登录本地控制台。检查文件 /etc/sysconfig/network-scripts/ifcfg-eth0，默认情况，其内容如下所示："

# ffc841b92bbd4994ae1f07ea99b908ac
#: ../../qig.rst:105
msgid ""
"Unfortunately, this configuration will not permit you to connect to the "
"network, and is also unsuitable for our purposes with CloudStack. We want to"
" configure that file so that it specifies the IP address, netmask, etc., as "
"shown in the following example:"
msgstr "但是根据以上配置您无法连接到网络，对于Cloudstack也同样不适合；您需修改配置文件，指定IP地址，网络掩码等信息，如下例所示："

# feeb899f3fa049019ca4e9cee4cb7d94
#: ../../qig.rst:111
msgid ""
"You should not use the Hardware Address (aka the MAC address) from our "
"example for your configuration. It is network interface specific, so you "
"should keep the address already provided in the HWADDR directive."
msgstr "注意，不要在你的配置中使用示例中的Hardware地址(也叫MAC地址)。该地址为网络接口所特有的，请保留你配置文件中已经提供的HWADDR字段。"

# 39e9cdade6f84cee9efbcac85368b36d
#: ../../qig.rst:129
msgid ""
"IP Addressing - Throughout this document we are assuming that you will have "
"a /24 network for your CloudStack implementation. This can be any RFC 1918 "
"network. However, we are assuming that you will match the machine address "
"that we are using. Thus we may use 172.16.10.2 and because you might be "
"using the 192.168.55.0/24 network you would use 192.168.55.2"
msgstr ""

# 3826ab3ca7e14ea69a7e7083749d4776
#: ../../qig.rst:135
msgid ""
"Now that we have the configuration files properly set up, we need to run a "
"few commands to start up the network:"
msgstr "配置文件准备完毕后，需要运行命令启动网络。"

# 7170ae16486348e1940a24d4b4f320bc
#: ../../qig.rst:148
msgid "Hostname"
msgstr "主机名"

# bc70cba9278c435ba8d50ba7f9804861
#: ../../qig.rst:150
msgid ""
"CloudStack requires that the hostname be properly set. If you used the "
"default options in the installation, then your hostname is currently set to "
"localhost.localdomain. To test this we will run:"
msgstr "Cloudstack要求正确设置主机名，如果安装时您接受了默认选项，主机名为localhost.localdomain，输入如下命令可以进行验证"

# c0837ecf69a448a6833089b3cb700b74
#: ../../qig.rst:158
msgid "At this point it will likely return:"
msgstr "在此处将返回："

# c0f03d48e4f84cf99a5ae3b5695dd6d4
#: ../../qig.rst:164
msgid ""
"To rectify this situation - we'll set the hostname by editing the /etc/hosts"
" file so that it follows a similar format to this example:"
msgstr "为了纠正这个问题，需设置主机名，通过编辑/etc/hosts 文件，将其更改为类似如下内容："

# 998941fe58dd4716b4d08c3a0a8b28d7
#: ../../qig.rst:173
msgid ""
"After you've modified that file, go ahead and restart the network using:"
msgstr "更改配置文件后，重启网络服务："

# d7827b49760a48e696feee0646a10476
#: ../../qig.rst:179
msgid ""
"Now recheck with the hostname --fqdn command and ensure that it returns a "
"FQDN response"
msgstr "通过hostname --fqdn命令重新检查主机名，并确认返回了正确的FQDN"

# 8ef16e261eb24be6bbc94f0183b1ee33
#: ../../qig.rst:186
msgid "SELinux"
msgstr "SELinux"

# 24eacbfa30f944b6a49895982406f6ee
#: ../../qig.rst:188
msgid ""
"At the moment, for CloudStack to work properly SELinux must be set to "
"permissive. We want to both configure this for future boots and modify it in"
" the current running system."
msgstr "当前的CloudStack需要将SELinux设置为permissive才能正常工作，您需要改变当前配置，同时将该配置持久化，使其在主机重启后仍然生效。"

# ba6f0974cd5f4ef896906cfb78819190
#: ../../qig.rst:192
msgid ""
"To configure SELinux to be permissive in the running system we need to run "
"the following command:"
msgstr "在系统运行状态下将SELinux配置为permissive需执行如下命令："

# 80d187882ef94e018fbc80b3f6cf1657
#: ../../qig.rst:199
msgid ""
"To ensure that it remains in that state we need to configure the file "
"/etc/selinux/config to reflect the permissive state, as shown in this "
"example:"
msgstr "为确保其持久生效需更改配置文件/etc/selinux/config，设置为permissive，如下例所示："

# e2dd6bd4d20445af9e40ef1dcfeffc59
#: ../../qig.rst:219
msgid "NTP"
msgstr "NTP"

# 7dcd6b5f047c4747b5663a3ea0a586bb
#: ../../qig.rst:221
msgid ""
"NTP configuration is a necessity for keeping all of the clocks in your cloud"
" servers in sync. However, NTP is not installed by default. So we'll install"
" and and configure NTP at this stage. Installation is accomplished as "
"follows:"
msgstr "为了同步云平台中主机的时间，需要配置NTP，但NTP默认没有安装。因此需要先安装NTP，然后进行配置。通过以下命令进行安装："

# dc3f1acb9d75421389f41ab343c99644
#: ../../qig.rst:229
msgid ""
"The actual default configuration is fine for our purposes, so we merely need"
" to enable it and set it to start on boot as follows:"
msgstr "实际上默认配置项即可满足的需求，仅需启用NTP并设置为开机启动，如下所示："

# 521e40c294df4b9cb34b11ddbef6c113
#: ../../qig.rst:241
msgid "Configuring the CloudStack Package Repository"
msgstr "配置ClouStack软件库"

# b0a49ad7b98149209a251f36c2b42c2e
#: ../../qig.rst:243
msgid ""
"We need to configure the machine to use a CloudStack package repository."
msgstr "配置主机使用CloudStack软件库。"

# ccc1c3b2524242c3b7b2f4646644974f
#: ../../qig.rst:246
msgid ""
"The Apache CloudStack official releases are source code. As such there are "
"no 'official' binaries available. The full installation guide describes how "
"to take the source release and generate RPMs and and yum repository. This "
"guide attempts to keep things as simple as possible, and thus we are using "
"one of the community-provided yum repositories."
msgstr "Apache CloudStack官方发布源代码。因此没有可用的“官方”安装文件。完整的安装指南介绍了如何获取源代码，以及制作RPM包和yum软件库。本指南尽可能简化这些操作，所以直接使用社区提供的yum软件库。"

# 839459c6f46e4c4fa3626c7f84a78e14
#: ../../qig.rst:252
msgid ""
"To add the CloudStack repository, create /etc/yum.repos.d/cloudstack.repo "
"and insert the following information."
msgstr "添加CloudStack软件仓库，创建/etc/yum.repos.d/cloudstack.repo文件，并添加如下信息。"

# 4a110af8c49c4b398c36065cc45c8f60
#: ../../qig.rst:265
msgid "NFS"
msgstr "NFS"

# 19505af6684e49c794879229d714e4aa
#: ../../qig.rst:267
msgid ""
"Our configuration is going to use NFS for both primary and secondary "
"storage. We are going to go ahead and setup two NFS shares for those "
"purposes. We'll start out by installing nfs-utils."
msgstr "本文档将配置的环境使用NFS做为主存储和辅助存储，需配置两个NFS共享目录，在此之前需先安装nfs-utils："

# 6cb16ffd970344c3ace837183e3c39ff
#: ../../qig.rst:275
msgid ""
"We now need to configure NFS to serve up two different shares. This is "
"handled comparatively easily in the /etc/exports file. You should ensure "
"that it has the following content:"
msgstr "接下来需配置NFS提供两个不同的挂载点。通过编辑/etc/exports文件即可简单实现。确保这个文件中包含下面内容："

# cc8ef4b76bf64c62b6c5e89b6ee0fcd9
#: ../../qig.rst:284
msgid ""
"You will note that we specified two directories that don't exist (yet) on "
"the system. We'll go ahead and create those directories and set permissions "
"appropriately on them with the following commands:"
msgstr "注意配置文件中指定了系统中两个并不存在的目录，下面需要创建这些目录并设置合适的权限，对应的命令如下所示："

# 518439ba2be945f9a7e3fbab2a21cdbe
#: ../../qig.rst:293
msgid ""
"CentOS 6.x releases use NFSv4 by default. NFSv4 requires that domain setting"
" matches on all clients. In our case, the domain is cloud.priv, so ensure "
"that the domain setting in /etc/idmapd.conf is uncommented and set as "
"follows: Domain = cloud.priv"
msgstr "CentOS 6.x 版本默认使用NFSv4，NFSv4要求所有客户端的域设置匹配，这里以设置cloud.priv为例，请确保文件/etc/idmapd.conf中的域设置没有被注释掉，并设置为以下内容："

# b485a87031a94a76a3bf754cdb5cefd2
#: ../../qig.rst:298
msgid ""
"Now you'll need uncomment the configuration values in the file "
"/etc/sysconfig/nfs"
msgstr "在/etc/sysconfig/nfs文件中取消如下选项的注释："

# e876c59eae014aa3baa25c6b7c1401a3
#: ../../qig.rst:310
msgid ""
"Now we need to configure the firewall to permit incoming NFS connections. "
"Edit the file /etc/sysconfig/iptables"
msgstr "接下来还需配置防火墙策略，允许NFS客户端访问。编辑文件/etc/sysconfig/iptables"

# d7b296589dc34344af087b4fb44f8a39
#: ../../qig.rst:327
msgid "Now you can restart the iptables service with the following command:"
msgstr "通过以下命令重新启动iptables服务："

# 2174509b3845456db7eab82fa2adba29
#: ../../qig.rst:333
msgid ""
"We now need to configure the nfs service to start on boot and actually start"
" it on the host by executing the following commands:"
msgstr "最后需要配置NFS服务为开机自启动，执行如下命令："

# 3df2c4989e10469ebd9d8e536e5a1d36
#: ../../qig.rst:345
msgid "Management Server Installation"
msgstr "管理服务器安装"

# 9a58ef21fdd64508a4a73a7a0a6ca8ab
#: ../../qig.rst:347
msgid ""
"We're going to install the CloudStack management server and surrounding "
"tools."
msgstr "接下来进行CloudStack管理节点和相关工具的安装。"

# 6ca0e5d18a4f4af287c3a9e04ddadc5d
#: ../../qig.rst:351
msgid "Database Installation and Configuration"
msgstr "数据库安装和配置"

# 946061f8b1cb4c97b95a950dae96c2e3
#: ../../qig.rst:353
msgid ""
"We'll start with installing MySQL and configuring some options to ensure it "
"runs well with CloudStack."
msgstr "首先安装MySQL，并对它进行配置，以确保CloudStack运行正常。"

# 51eb7503da9a4eb995968d6041b1e2ac
#: ../../qig.rst:356
msgid "Install by running the following command:"
msgstr "运行如下命令安装："

# 36d9b86e7e3248b784a3dcf59fc552e3
#: ../../qig.rst:362
msgid ""
"With MySQL now installed we need to make a few configuration changes to "
"/etc/my.cnf. Specifically we need to add the following options to the "
"[mysqld] section:"
msgstr "MySQL安装完成后，需更改其配置文件/etc/my.cnf。在[mysqld]下添加下列参数："

# a5c5a266adba4e3290312bca285a9f01
#: ../../qig.rst:374
msgid ""
"Now that MySQL is properly configured we can start it and configure it to "
"start on boot as follows:"
msgstr "正确配置MySQL后，启动它并配置为开机自启动："

# 1fe575a11b7a4071b4e6a29dcc38cf07
# 0b4d699f167b42bb9b193792f0bd0725
#: ../../qig.rst:384 ../../qig.rst:463
msgid "Installation"
msgstr "安装"

# 48a0def962364fb793fd558db7a83c29
#: ../../qig.rst:386
msgid ""
"We are now going to install the management server. We do that by executing "
"the following command:"
msgstr "现在将要开始安装管理服务器。执行以下命令："

# ffbb50ab243643e9b5435264bfd61bf7
#: ../../qig.rst:393
msgid ""
"With the application itself installed we can now setup the database, we'll "
"do that with the following command and options:"
msgstr "在程序执行完毕后，需初始化数据库，通过如下命令和选项完成："

# 59e045efceb0436b8cecf6c9c5eda843
#: ../../qig.rst:400
msgid ""
"When this process is finished, you should see a message like \"CloudStack "
"has successfully initialized the database.\""
msgstr "当该过程结束后，您应该可以看到类似信息：\"CloudStack has successfully initialized the database.\"。"

# 5e4571669d1042a1b867fb1b24dbfbdd
#: ../../qig.rst:403
msgid ""
"Now that the database has been created, we can take the final step in "
"setting up the management server by issuing the following command:"
msgstr "数据库创建后，最后一步是配置管理服务器，执行如下命令："

# 33ce2bfd534f433e8a6cd4f7c6e1c166
#: ../../qig.rst:412
msgid "System Template Setup"
msgstr "上传系统模板"

# 0d95e3d0c71b4c45858b31f77dde036e
#: ../../qig.rst:414
msgid ""
"CloudStack uses a number of system VMs to provide functionality for "
"accessing the console of virtual machines, providing various networking "
"services, and managing various aspects of storage. This step will acquire "
"those system images ready for deployment when we bootstrap your cloud."
msgstr "CloudStack通过一系列系统虚拟机提供功能，如访问虚拟机控制台，如提供各类网络服务，以及管理辅助存储的中的各类资源。该步骤会获取系统虚拟机模板，用于云平台引导后系统虚拟机的部署。"

# d3c498d585ab4741bd2c27b0b2084745
#: ../../qig.rst:419
msgid ""
"Now we need to download the system VM template and deploy that to the share "
"we just mounted. The management server includes a script to properly "
"manipulate the system VMs images."
msgstr "然后需要下载系统虚拟机模板，并把这些模板部署于刚才创建的辅助存储中；管理服务器包含一个脚本可以正确的操作这些系统虚拟机模板："

# 92903e9533534b6fb4148c0635069661
#: ../../qig.rst:427
msgid ""
"That concludes our setup of the management server. We still need to "
"configure CloudStack, but we will do that after we get our hypervisor set "
"up."
msgstr "以上是管理服务器的安装和配置过程；在配置CloudStack之前，仍需配置hypervisor。"

# 7f1393a48e184b35b9bb4a8b95ac1a13
#: ../../qig.rst:432
msgid "KVM Setup and Installation"
msgstr "KVM配置和安装"

# d098ee902a904e3c8736a2d3464fd49c
#: ../../qig.rst:434
msgid ""
"KVM is the hypervisor we'll be using - we will recover the initial setup "
"which has already been done on the hypervisor host and cover installation of"
" the agent software, you can use the same steps to add additional KVM nodes "
"to your CloudStack environment."
msgstr "本文档使用KVM作为hypervisor，下文将回顾最如何配置hypervisor主机，其中大部分配置工作已在配置管理节点时完成；接下来描述如何安装agent。您可以应用相同的步骤添加额外的KVM节点到CloudStack环境中。"

# e02d098f8e1a4eb081a496f88791dac0
#: ../../qig.rst:443
msgid ""
"We explicitly are using the management server as a compute node as well, "
"which means that we have already performed many of the prerequisite steps "
"when setting up the management server, but we will list them here for "
"clarity. Those steps are:"
msgstr "本文档描述的环境使用管理服务器同时作为计算节点，这意味着很多先决步骤已经在搭建管理服务器时完成；但为了清晰起见，仍然列出相关步骤："

# fdf9d335282f4fe98e99728f3399c1fd
#: ../../qig.rst:448
msgid ":ref:`conf-network`"
msgstr ":ref:`conf-network`"

# 445994f799ba4e909ce0c0a186f2f31d
#: ../../qig.rst:450
msgid ":ref:`conf-hostname`"
msgstr ":ref:`conf-hostname`"

# ab93010654414278b9eed8a6c99160e0
#: ../../qig.rst:452
msgid ":ref:`conf-selinux`"
msgstr ":ref:`conf-selinux`"

# fdb31d5daa78457382f913417f11a829
#: ../../qig.rst:454
msgid ":ref:`conf-ntp`"
msgstr ":ref:`conf-ntp`"

# c13c6efacec5485ab038723e8f958003
#: ../../qig.rst:456
msgid ":ref:`qigconf-pkg-repo`"
msgstr ":ref:`qigconf-pkg-repo`"

# e9a76dadeb804696ac9ac907ed256fbf
#: ../../qig.rst:458
msgid ""
"You shouldn't need to do that for the management server, of course, but any "
"additional hosts will need for you to complete the above steps."
msgstr "你不需要在管理节点上执行这些操作，当然，如果您需要添加额外的主机以上步骤仍然需要执行。"

# adc6a52e07e645149ab0fd5b03cc2e22
#: ../../qig.rst:465
msgid ""
"Installation of the KVM agent is trivial with just a single command, but "
"afterwards we'll need to configure a few things."
msgstr "安装KVM代理仅仅需要一条简单的命令，但之后我们需要进行一些配置。"

# 9b94ad0de8bc42b6bfed991871ad6c23
#: ../../qig.rst:474
msgid "KVM Configuration"
msgstr "配置KVM"

# 41d6a9265c8d47f2b9fb9b657cf8dd10
#: ../../qig.rst:476
msgid "We have two different parts of KVM to configure, libvirt, and QEMU."
msgstr "KVM中我们有两部分需要进行配置, libvirt和QEMU."

# e4f062f561b8411ab57677d08500d1fe
#: ../../qig.rst:480
msgid "QEMU Configuration"
msgstr "配置QEMU"

# 815a9beec20b476d9771e7ef18b8c600
#: ../../qig.rst:482
msgid ""
"KVM configuration is relatively simple at only a single item. We need to "
"edit the QEMU VNC configuration. This is done by editing "
"/etc/libvirt/qemu.conf and ensuring the following line is present and "
"uncommented."
msgstr "KVM的配置项相对简单，仅需配置一项。编辑QEMU VNC配置文件/etc/libvirt/qemu.conf并取消如下行的注释。"

# 975c5c294f1442bf81c674603302b96d
#: ../../qig.rst:488
msgid "vnc_listen=0.0.0.0"
msgstr "vnc_listen=0.0.0.0"

# fa6d60015c4f40879deddfeb0aa1faba
#: ../../qig.rst:492
msgid "Libvirt Configuration"
msgstr "配置Libvirt"

# 77d8c22ce01a436c86a3356db1be9f2d
#: ../../qig.rst:494
msgid ""
"CloudStack uses libvirt for managing virtual machines. Therefore it is vital"
" that libvirt is configured correctly. Libvirt is a dependency of cloud-"
"agent and should already be installed."
msgstr "CloudStack使用libvirt管理虚拟机。因此正确的配置libvirt至关重要。Libvirt属于cloudstack-agent的依赖组件，应提前安装好。"

# 99f2fbc9c2454f3487ad43f84bb08a12
#: ../../qig.rst:498
msgid ""
"In order to have live migration working libvirt has to listen for unsecured "
"TCP connections. We also need to turn off libvirts attempt to use Multicast "
"DNS advertising. Both of these settings are in /etc/libvirt/libvirtd.conf"
msgstr "为了实现动态迁移，libvirt需要监听使用非加密的TCP连接。还需要关闭libvirts尝试使用组播DNS进行广播。这些都是在 /etc/libvirt/libvirtd.conf文件中进行配置。"

# 9fc492fb10044ee0844b1d25e91f50ee
#: ../../qig.rst:502
msgid "Set the following paramaters:"
msgstr "设置下列参数："

# 95403c520e0647c88d0026cb30086615
#: ../../qig.rst:512
msgid ""
"Turning on \"listen_tcp\" in libvirtd.conf is not enough, we have to change "
"the parameters as well we also need to modify /etc/sysconfig/libvirtd:"
msgstr "仅仅在libvirtd.conf中启用\"listen_tcp\"还不够，我们还必须修改/etc/sysconfig/libvirtd中的参数:"

# d56b9b860fbc4a259d021e12bda7bc3c
#: ../../qig.rst:515
msgid "Uncomment the following line:"
msgstr "取消如下行的注释："

# 169629893c8f43fa88410c11c1009c5f
#: ../../qig.rst:521
msgid "Restart libvirt"
msgstr "重启libvirt服务"

# 18f1fb4c4c8a42b386267c081b445d95
#: ../../qig.rst:529
msgid "KVM configuration complete"
msgstr "KVM配置完成"

# 03532dcd2b4c4677a2f98e4a0d94594e
#: ../../qig.rst:530
msgid ""
"That concludes our installation and configuration of KVM, and we'll now move"
" to using the CloudStack UI for the actual configuration of our cloud."
msgstr "以上内容是针对KVM的安装和配置，下面将介绍如何使用CloudStack用户界面配置云平台。"

# 952b415ac3874c7f9d04f5e587352ac9
#: ../../qig.rst:535
msgid "Configuration"
msgstr "配置"

# 523a82da5a444efe823f80fb51e88066
#: ../../qig.rst:537
msgid ""
"As we noted before we will be using security groups to provide isolation and"
" by default that implies that we'll be using a flat layer-2 network. It also"
" means that the simplicity of our setup means that we can use the quick "
"installer."
msgstr "如上文所述，该手册所描述的环境将使用安全组提供网络隔离，这意味着您的安装环境仅需要一个扁平的二层网络，同样意味着较为简单的配置和快速的安装。"

# cbed6a65a67b45e6af0fb6ffff271769
#: ../../qig.rst:544
msgid "UI Access"
msgstr "访问用户界面"

# dda96068dfd5400c8163c00981ab2bb8
#: ../../qig.rst:546
msgid ""
"To get access to CloudStack's web interface, merely point your browser to "
"http://172.16.10.2:8080/client The default username is 'admin', and the "
"default password is 'password'. You should see a splash screen that allows "
"you to choose several options for setting up CloudStack. You should choose "
"the Continue with Basic Setup option."
msgstr "要访问CloudStack的WEB界面，仅需在浏览器访问 http://172.16.10.2:8080/client ，使用默认用户'admin'和密码'password'来登录。第一次登录可以看到欢迎界面，提供两个选项设置CloudStack。请选择继续执行基本配置安装。"

# bbb1c7f2891a4ec4a83d9d55bcfa3675
#: ../../qig.rst:552
msgid ""
"You should now see a prompt requiring you to change the password for the "
"admin user. Please do so."
msgstr "此时您会看到提示，要求为admin用户更改密码，请更新密码后继续。"

# 3be78f0dce5244e4b9131f8c619ad9a4
#: ../../qig.rst:557
msgid "Setting up a Zone"
msgstr "配置区域"

# 0aba2895b7c74bce8a058589e3983a7c
#: ../../qig.rst:559
msgid ""
"A zone is the largest organization entity in CloudStack - and we'll be "
"creating one, this should be the screen that you see in front of you now. "
"And for us there are 5 pieces of information that we need."
msgstr "区域是Cloudstack中最大的组织单位，下面将要讲述如何创建，此时屏幕中显示的是区域添加页面，这里需要您提供5部分信。"

# 678aeb5fe9214685805c844269bc9fb8
#: ../../qig.rst:563
msgid "Name - we will set this to the ever-descriptive 'Zone1' for our cloud."
msgstr "名称 - 提供描述性的名称，这里以\"Zone1\"为例"

# 63f27019f41b44649ba00f8ca77ec852
#: ../../qig.rst:565
msgid "Public DNS 1 - we will set this to '8.8.8.8' for our cloud."
msgstr "公共DNS1 - 我们输入8.8.8.8。"

# b747f07282f845c1b0e23cb76e573616
#: ../../qig.rst:567
msgid "Public DNS 2 - we will set this to '8.8.4.4' for our cloud."
msgstr "公共DNS 2 - 我们输入8.8.4.4。"

# b3ccf7d2313948489f913f8c32a9aeb7
#: ../../qig.rst:569
msgid "Internal DNS1 - we will also set this to '8.8.8.8' for our cloud."
msgstr "内部DNS 1 - 我们同样输入8.8.8.8。"

# d9a7755ae183447788f746bd5a20a8ed
#: ../../qig.rst:571
msgid "Internal DNS2 - we will also set this to '8.8.4.4' for our cloud."
msgstr "内部DNS 2 - 我们同样输入8.8.4.4。"

# d29af6bf0c6f453c99632dcde7d46008
#: ../../qig.rst:574
msgid ""
"CloudStack distinguishes between internal and public DNS. Internal DNS is "
"assumed to be capable of resolving internal-only hostnames, such as your NFS"
" server’s DNS name. Public DNS is provided to the guest VMs to resolve "
"public IP addresses. You can enter the same DNS server for both types, but "
"if you do so, you must make sure that both internal and public IP addresses "
"can route to the DNS server. In our specific case we will not use any names "
"for resources internally, and we have indeed them set to look to the same "
"external resource so as to not add a namerserver setup to our list of "
"requirements."
msgstr "CloudStack分为内部和公共DNS。内部DNS只负责解析内部主机名，比如NFS服务器的DNS名称。公共DNS为虚拟机提供公共IP地址解析。你可以指定同一个DNS服务器，但如果这样做，你必须确保内部和公共IP地址都能路由到该DNS服务器。在我们的案例中对内部资源不使用DNS名称，因此这里将其设置为与外部DNS一致用以简化安装，从而不必为此再安装一台DNS服务器。"

# d1ccf0a04f8d407f92b076a97ca934aa
#: ../../qig.rst:586
msgid "Pod Configuration"
msgstr "配置提供点"

# d633c33294f54ed9b55112c0f0f4c4b6
#: ../../qig.rst:588
msgid ""
"Now that we've added a Zone, the next step that comes up is a prompt for "
"information regading a pod. Which is looking for several items."
msgstr "到这里我们已经添加了一个区域，下一步会显示添加提供点所需信息："

# 5d8b827958834106bb8322c4b726e589
#: ../../qig.rst:591
msgid "Name - We'll use Pod1 for our cloud."
msgstr "提供点名称 - 使用Pod1"

# 213b395a2593404daf151f1a941d4adc
#: ../../qig.rst:593
msgid "Gateway - We'll use 172.16.10.1 as our gateway"
msgstr "网关 - 使用172.16.10.1作为网关"

# f02f613f386b4d1c8b305c1d35c56583
#: ../../qig.rst:595
msgid "Netmask - We'll use 255.255.255.0"
msgstr "子网掩码 - 使用255.255.255.0"

# 9c5bffa76ac74249ad74e842f6eebf17
#: ../../qig.rst:597
msgid "Start/end reserved system IPs - we will use 172.16.10.10-172.16.10.20"
msgstr "系统预留 起始/结束 IP - 使用172.16.10.10-172.16.10.20"

# 5cf252fb06404e90931c41694829ed58
#: ../../qig.rst:599
msgid "Guest gateway - We'll use 172.16.10.1"
msgstr "来宾网络网关 - 使用172.16.10.1"

# 5f00b4c2472c4db99f0cfaaa62c9a5a2
#: ../../qig.rst:601
msgid "Guest netmask - We'll use 255.255.255.0"
msgstr "来宾网络掩码 - 使用255.255.255.0"

# 17730085682c4460bcf6fc9b337e1b79
#: ../../qig.rst:603
msgid "Guest start/end IP - We'll use 172.16.10.30-172.16.10.200"
msgstr "来宾网络 起始/结束IP - 使用172.16.10.30-172.16.10.200"

# 367247fc307a4a82b2ad9e2b711e5619
#: ../../qig.rst:607
msgid "Cluster"
msgstr "群集"

# 7850cd3533944572afd0e2c12f25a29f
#: ../../qig.rst:609
msgid ""
"Now that we've added a Zone, we need only add a few more items for "
"configuring the cluster."
msgstr "添加区域后，仅需再为配置群集提供如下信息。"

# 7001d238c08a4539b6f079919c83370e
#: ../../qig.rst:612
msgid "Name - We'll use Cluster1"
msgstr "群集名称 - 使用Cluster1"

# b757d57d9ef8406e9cb173ab58d3c2f7
#: ../../qig.rst:614
msgid "Hypervisor - Choose KVM"
msgstr "Hypervisor - 选择KVM"

# d2da65ca4fcc49799aa20d81580d1d11
#: ../../qig.rst:616
msgid ""
"You should be prompted to add the first host to your cluster at this point. "
"Only a few bits of information are needed."
msgstr "此时向导会提示您为集群添加第一台主机，需提供如下信息："

# 3882023bf413443a94edf6abde71aa6d
#: ../../qig.rst:619
msgid ""
"Hostname - we'll use the IP address 172.16.10.2 since we didn't set up a DNS"
" server."
msgstr "主机名 - 由于没有设置DNS服务器，所以这里输入主机IP地址 172.16.10.2。"

# d10fbbf3eaeb49159c2e6ccc868e03b1
#: ../../qig.rst:622
msgid "Username - we'll use 'root'"
msgstr "用户名 - 我们使用root"

# 9c4f5c5877de4ea98bbd1fb9735ecef1
#: ../../qig.rst:624
msgid "Password - enter the operating system password for the root user"
msgstr "密码 - 输入root用户的密码"

# 3d5ffbc59d224d41be2df9ba6af77742
#: ../../qig.rst:628
msgid "Primary Storage"
msgstr "主存储"

# 66d0666b459a47c3b5f48d2883046b70
#: ../../qig.rst:630
msgid ""
"With your cluster now setup - you should be prompted for primary storage "
"information. Choose NFS as the storage type and then enter the following "
"values in the fields:"
msgstr "在配置群集时，按提示输入主存储的信息。选择NFS作为存储类型，并在如下区域中输入相应的值："

# ca283f835167437fb9bc1ef6393ca820
#: ../../qig.rst:634
msgid "Name - We'll use 'Primary1'"
msgstr "名称 - 使用 'Primary1'"

# fdf29ecc70964523b52e9de67e9413d7
#: ../../qig.rst:636
msgid "Server - We'll be using the IP address 172.16.10.2"
msgstr "服务器 - 使用的IP地址为 172.16.10.2"

# 7e622eac227540c9bee2de26c79cb398
#: ../../qig.rst:638
msgid "Path - Well define /primary as the path we are using"
msgstr "路径 - 使用之前定义的 /primary"

# 749f44f07ab84067949bed01b90f7371
#: ../../qig.rst:642
msgid "Secondary Storage"
msgstr "辅助存储"

# 387b9b2ba8bb4d86bbd092c06b307189
#: ../../qig.rst:644
msgid ""
"If this is a new zone, you'll be prompted for secondary storage information "
"- populate it as follows:"
msgstr "如果添加的是一个新的区域，您需提供辅助存储相关信息 - 如下所示："

# b25a138b410441ccabde5dc127832043
#: ../../qig.rst:647
msgid "NFS server - We'll use the IP address 172.16.10.2"
msgstr "NFS服务器 -  使用的IP地址为 172.16.10.2"

# 05a433329180429f9aadec69507b153f
#: ../../qig.rst:649
msgid "Path - We'll use /secondary"
msgstr "路径 - 输入 /secondary "

# 5f25228532674a9881e0c4b867cf64a9
#: ../../qig.rst:651
msgid ""
"Now, click Launch and your cloud should begin setup - it may take several "
"minutes depending on your internet connection speed for setup to finalize."
msgstr "现在，点击启动开始配置云-完成安装所需的时间取决于你的网络速度。"

# bcb5d6bf55794f36bb79ef590164a807
#: ../../qig.rst:654
msgid ""
"That's it, you are done with installation of your Apache CloudStack cloud."
msgstr "到这里，你的Apache CloudStack云就已经安装完成了。"
