OpenStack实施管理手册-第一章 部署准备
Chapter 1. Provisioning and Deployment(部署准备)
A critical part of a cloud's scalability is the amount of effort that it takes to run your cloud. To minimize the operational cost of running your cloud, set up and use an automated deployment and configuration infrastructure.
云计算的可扩展性的一个关键部分是,您需要大量的精力运行你的云。为了最大限度地减少运行云的运营成本,需要设置使用自动部署和配置基础设施。
This infrastructure includes systems to automatically install the operating system's initial configuration and later coordinate the configuration of all services automatically and centrally, which reduces both manual effort and chance for error.
这些包括自动安装操作系统的初始配置和之后服务配置的集中自动配置管理,减少手工操作导错误的机会。
Automated Deployment
An automated deployment system installs and configures operating systems on new servers, without intervention, after the absolute minimum amount of manual work, including physical racking, MAC to IP assignment, power configuration, and so on. Typically solutions rely on wrappers around PXE boot and TFTP servers for the basic operating system install, then hand off to an automated configuration management system.
在新服务器上,绝对最低量的体力劳动,包括物理货架,MAC分配IP地址,电源配置,依此类推,然后安装自动部署系统和配置系统。典型的解决方案包括依赖于PXE引导和TFTP服务器的基本操作系统安装,然后移交到一个自动化的配置管理系统。
Ubuntu and Red Hat Linux both include mechanisms for configuring the operating system, including preseed and kickstart, that you can use after a network boot. Typically these are used to bootstrap an automated configuration system. Alternatively, you can use an image-based approach for deploying the operating system, such as systemimager. You can use both approaches with a virtualized infrastructure, such as when you run VMs to separate your control services and physical infrastructure.
Ubuntu和Red Hat Linux中都包括配置机制操作系统,包括preseed和kickstart,使用它们就可以从网络引导。通常情况下,这些用来引导一个自动化配置系统。您也可以使用一个基于图像的方法部署操作系统,如SystemImager。您可以使用这两种方法及虚拟化的基础设施,如当您运行控制服务和物理基础设施的虚拟机分开。
When you create a deployment plan, focus on a few vital areas because they are very hard to modify post-deployment.
在您创建部署计划时,应集中精力关注一些重要的领域,因为部署后他们将非常难修改。
Disk Partitioning and RAID
At the very base of any operating system are the hard drives on which the OS is installed.
在任何操作系统上的非常基础的硬盘操作系统安装。
You must complete the following configurations on the server's hard drives:
你必须完成对服务器的硬盘驱动器的以下配置:
- Partitioning分区
- Adding to a RAID array添加到RAID阵列
The simplest option is to use one hard drive with two partitions:
最简单的选择是一个硬盘两个分区:
- File system
- Swap space
RAID is not used in this setup.
在此设置中,不使用RAID。
Note | |
This option is not recommended for production because if the hard drive fails, that entire server is down. Instead, we recommend that you use more than one disk. The number of disks determine what types of RAID arrays to build. |
We recommend that you choose one of the following multiple disk options:
我们建议您从以下多个磁盘选项中选择:
- Option 1: Partition all drives in the same way in a horizontal fashion, as shown in the following diagram:
分区中的所有驱动器水平的方式,以同样的方式在下面的图所示:
With this option, you can assign different partitions to different RAID arrays. You can allocate partition 1 of disk one and two to the /bootpartition mirror. You can make partition 2 of all disks the root partition mirror. You can use partition 3 of all disks for a cinder-volumes LVM partition running on a RAID 10 array.
使用此选项,您可以指定不同的分区使用不同的RAID阵列。您可以分配第一个和第二个磁盘的第一个分区到/ boot分区镜像。你可以让所有磁盘的第二个分区给root分区镜。您可以让cinder-volumes LVM运行在所有磁盘的第三分区在RAID 10阵列的分区上。
While you might end up with unused partitions, such as partition 1 in disk three and four of this example, it allows for maximum utilization off disk space. I/O performance might be an issue due to all disks being used for all tasks.
虽然你可能会结束与未使用的分区,如分区1本实施例三和四的磁盘,它允许的最大利用率关闭磁盘空间。由于所有磁盘I / O性能可能是一个问题用于所有任务。
- Option 2: Add all raw disks to one large RAID array, either hardware or software based. You can partition this large array with the boot, root, swap, and LVM areas. This option is simple to implement and uses all partitions. However, disk I/O might suffer.
所有的原始磁盘添加到一个大的RAID阵列,硬件或基于软件的。您可以和这个RAID陈列进行boot,root,swap和LVM。此选项很容易实现,并使用所有分区。然而,磁盘I / O性能可能会受到影响。 - Option 3: Dedicate entire disks to certain partitions. For example, you could allocate disk one and two entirely to the boot, root, and swap partitions under a RAID 1 mirror. Then, allocate disk 3 and 4 entirely to the LVM partition, also under a RAID 1 mirror. Disk I/O should be better because I/O is focused on dedicated tasks. However, the LVM partition is much smaller.
将整个磁盘划给某些分区。例如,您可以分配第一个和第二个磁盘使用RAID 1然后给boot,root和swap分区。然后,分配磁盘3和4完全使用LVM分区,同时也使用RAID 1镜像。磁盘I / O应该会更好因为I / O集中在专门的任务。然而,在LVM分区要小得多。
As with most architecture choices, the right answer depends on your environment.
架构的选择很多,正确的答案取决于你的环境。
Network Configuration
Network configuration is a very large topic that spans multiple areas of this book. For now, make sure that your servers can PXE boot and successfully communicate with the deployment server.
网络配置是一个非常大的话题,本书跨越多个领域的。现在,你需要做的是确保你的服务器可以与从部署服务器PXE成功引导。
For example, you usually cannot configure NICs for VLANs when PXE booting. Additionally, you usually cannot PXE boot with bonded NICs. If you run into this scenario, consider using a simple 1 GB switch in a private network on which only your cloud communicates.
例如,你通常不能对使用VLAN的配置网卡PXE引导。此外,你通常使用bonded网卡PXE引导。如果你碰上这种情况下,可以考虑使用一个简单的1 GB交换机在一个私有网上进行云通信。
Automated Configuration
The purpose of automatic configuration management is to establish and maintain the consistency of a system with no human intervention. You want to maintain consistency in your deployments so you can have the same cloud every time, repeatably. Proper use of automatic configuration management tools ensures that components of the cloud systems are in particular states, in addition to simplifying deployment, and configuration change propagation.
自动配置管理的目的是通过无人干预的方式建立和保持系统的一致性。你想您的部署保持一致性,所以你每次可重复。正确使用自动配置管理工具除了简化了部署和配置更改的自动部署发布,同时可以确保云中系统的每个组成部分是都在特定的状态。
These tools also make it possible to test and roll back changes, as they are fully repeatable. Conveniently, a large body of work has been done by the OpenStack community in this space. Puppet – a configuration management tool – even provides official modules for OpenStack.
这些工具还使人们有可能以测试和回滚更改,因为它们完全可以重复。方便的是,在OpenStack社区中一个大型机构已经完成有关的工作。Puppet – 一个配置管理工具 - 甚至提供OpenStack的官方模块
An integral part of a configuration management system is the items that it controls. You should carefully consider all of the items that you want, or do not want, to be automatically managed.
配置管理系统的一个组成部分的它能控制的项目。您应仔细考虑所有你想要的,或不想要的可自动管理的项目。
Remote Management
In our experience, most operators don't sit right next to the servers running the cloud, and many don't necessarily enjoy visiting the data center. OpenStack should be entirely remotely configurable, but sometimes not everything goes according to plan.
我们的经验是大多数操作人员不坐在服务器旁边运行云,许多人不一定喜欢访问数据中心。 OpenStack的应该是完全远程配置,但有时不是一切都按计划进行的。
In this instance, having an out-of-band access into nodes running OpenStack components, is a boon. The IPMI protocol is the de-facto standard here, and acquiring hardware that supports it is highly recommended to achieve that lights-out data center aim.
在这种情况下,有一个带外接入节点运行OpenStack,是一个福音。 IPMI协议是事实上的这里的标准,并获取支持它的硬件是高度建议实现熄灯的数据中心的目标。
In addition, consider remote power control as well. While IPMI usually controls the server's power state, having remote access to the PDU that the server is plugged into can really be useful for situations when everything seems wedged.
此外,考虑远程电源控制。虽然IPMI通常控制服务器的电源状态,具有远程访问的PDU该服务器才能真正成为有用的情况,当接入电源后。