社区版OpenStack是比较难以安装部署的,本文将就安装部署做一个详细的说明。
首先,OpenStack社区版本众多,如何选择一个合适的版本是第一个要解决的问题(这里的合适是指的OpenStack版本和操作系统的版本合适)
其次,安装部署的大体规划如何做?是单节点还是多节点?也就是说这个架构是什么样的,本文也将做一个详细的解释。
最后,每一步安装部署,目的是什么?如何测试这一步是否正确?本文也将给出一个详细的解释
OK,由于OpenStack社区版的安装是十分复杂的,一般是分为OpenStack前期硬件准备和部署规划,OpenStack运行环境搭建,OpenStack各个组件服务的正式部署,检验部署成果和问题解决总结这四个步骤,因此,本部署文档将会分为四个部分,现在这篇文章将是前期准备,部署规划。
本次部署采用的是官方文档:OpenStack Docs: Zed
OpenStack Releases: OpenStack Releases
此文档罗列了所有的OpenStack社区版本,我们可以看到有一些版本已经彻底的退出了官方维护周期,Queens(女王) 版本以前的是没有官方维护的,意味着这些退出官方维护周期的版本即使有bug或者安全方面的问题也不会在有任何修复了,因此,Queens(包含此版)以前的版本是不能考虑的。

OK,考虑到是在centos7.4-1708上部署OpenStack,而部署的时候yum源是需要使用本土化的阿里云仓库,因此,在阿里云镜像站查询:

发现yum源的版本都是比较低的,因此,选Rocky这个版本,此版本最接近Queens。
Preface — Installation Guide documentation
OpenStack Wallaby is available for CentOS Stream 8. OpenStack Ussuri and Victoria are available for both CentOS 8 and RHEL 8. OpenStack Train and earlier are available on both CentOS 7 and RHEL 7.
OpenStack Wallaby适用于CentOS Stream 8。CentOS 8和RHEL 8均可使用OpenStack Ussuri和Victoria。CentOS 7和RHEL 7上都有OpenStack Train和更早版本。
wallaby必须使用centos 8或者centosstream,ussuri和Victoria可以使用centos7
OpenStack packages for RHEL and CentOS — Installation Guide documentation
Starting with the Ussuri release, you will need to use either CentOS8 or RHEL 8. Previous OpenStack releases will need to use either CentOS7 or RHEL 7. Instructions are included for both distributions and versions where different.
从Ussuri版本开始,您将需要使用CentOS8或RHEL 8。之前的OpenStack版本需要使用CentOS7或RHEL 7。不同的发行版和版本都包含说明。
小结:ussuri版本之前使用centos7,之后版本必须是centos8
我的虚拟机都是centos7.4-1708,因此,OpenStack的版本使用Rocky是比较合适的。
Environment — Installation Guide documentation
For best performance, we recommend that your environment meets or exceeds the hardware requirements in Hardware requirements.
The following minimum requirements should support a proof-of-concept environment with core services and several CirrOS instances:
Controller Node: 1 processor, 4 GB memory, and 5 GB storage
Compute Node: 1 processor, 2 GB memory, and 10 GB storage
为了获得最佳性能,我们建议您的环境满足或超过硬件要求中的硬件要求。 以下最低要求应支持具有核心服务和多个CirrOS实例的概念验证环境: 控制器节点:1个处理器、4 GB内存和5 GB存储 计算节点:1个处理器、2 GB内存和10 GB存储
也就是说,至少两个节点,一个控制节点,4G内存,5G磁盘空间,一个计算节点,2G内存,10G磁盘空间,这个是最低要求。
Overview — Installation Guide documentation
Example architecture¶
The example architecture requires at least two nodes (hosts) to launch a basic virtual machine or instance. Optional services such as Block Storage and Object Storage require additional nodes.
Important
The example architecture used in this guide is a minimum configuration, and is not intended for production system installations. It is designed to provide a minimum proof-of-concept for the purpose of learning about OpenStack. For information on creating architectures for specific use cases, or how to determine which architecture is required, see the Architecture Design Guide.
This example architecture differs from a minimal production architecture as follows:
Networking agents reside on the controller node instead of one or more dedicated network nodes.
Overlay (tunnel) traffic for self-service networks traverses the management network instead of a dedicated network.
示例架构 示例体系结构需要至少两个节点(主机)来启动基本虚拟机或实例。块存储和对象存储等可选服务需要额外的节点。 重要的 本指南中使用的示例体系结构是最低配置,不适用于生产系统安装。它旨在为学习OpenStack提供最低限度的概念验证。有关为特定用例创建体系结构的信息,或者如何确定需要哪种体系结构,请参见体系结构设计指南。 该示例体系结构与最小生产体系结构的不同之处如下: 网络代理驻留在控制器节点上,而不是一个或多个专用网络节点上。 自助服务网络的覆盖(隧道)流量穿过管理网络,而不是专用网络。
这个文档也提到了,至少两个节点,如果要安装对象存储或者快存储,那么,就是三个节点。
根据以上文档的要求,计划使用三台虚拟机来部署
虚拟机IP地址为:192.168.123.130(controller节点)、192.168.123.131(computer节点)、192.168.123.132(块存储节点)
操作系统版本统一为:CentOS Linux release 7.4.1708 (Core)
OpenStack安装的版本为:Rocky
四,
虚拟机的安装


如何安装操作系统就不在这啰嗦了,主要是注意CPU开启虚拟化,硬盘使用SATA模式,内存统一给到4G,CPU4核心
IP地址的配置这些也实在没什么好啰嗦的
我想为Heroku构建一个Rails3应用程序。他们使用Postgres作为他们的数据库,所以我通过MacPorts安装了postgres9.0。现在我需要一个postgresgem并且共识是出于性能原因你想要pggem。但是我对我得到的错误感到非常困惑当我尝试在rvm下通过geminstall安装pg时。我已经非常明确地指定了所有postgres目录的位置可以找到但仍然无法完成安装:$envARCHFLAGS='-archx86_64'geminstallpg--\--with-pg-config=/opt/local/var/db/postgresql90/defaultdb/po
我打算为ruby脚本创建一个安装程序,但我希望能够确保机器安装了RVM。有没有一种方法可以完全离线安装RVM并且不引人注目(通过不引人注目,就像创建一个可以做所有事情的脚本而不是要求用户向他们的bash_profile或bashrc添加一些东西)我不是要脚本本身,只是一个关于如何走这条路的快速指针(如果可能的话)。我们还研究了这个很有帮助的问题:RVM-isthereawayforsimpleofflineinstall?但有点误导,因为答案只向我们展示了如何离线在RVM中安装ruby。我们需要能够离线安装RVM本身,并查看脚本https://raw.github.com/wayn
我有一个奇怪的问题:我在rvm上安装了rubyonrails。一切正常,我可以创建项目。但是在我输入“railsnew”时重新启动后,我有“程序'rails'当前未安装。”。SystemUbuntu12.04ruby-v"1.9.3p194"gemlistactionmailer(3.2.5)actionpack(3.2.5)activemodel(3.2.5)activerecord(3.2.5)activeresource(3.2.5)activesupport(3.2.5)arel(3.0.2)builder(3.0.0)bundler(1.1.4)coffee-rails(
我刚刚为fedora安装了emacs。我想用emacs编写ruby。为ruby提供代码提示、代码完成类型功能所需的工具、扩展是什么? 最佳答案 ruby-mode已经包含在Emacs23之后的版本中。不过,它也可以通过ELPA获得。您可能感兴趣的其他一些事情是集成RVM、feature-mode(Cucumber)、rspec-mode、ruby-electric、inf-ruby、rinari(用于Rails)等。这是我当前用于Ruby开发的Emacs配置:https://github.com/citizen428/emacs
我正在尝试在我的centos服务器上安装therubyracer,但遇到了麻烦。$geminstalltherubyracerBuildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinstallingtherubyracer:ERROR:Failedtobuildgemnativeextension./usr/local/rvm/rubies/ruby-1.9.3-p125/bin/rubyextconf.rbcheckingformain()in-lpthread...yescheckingforv8.h...no***e
这里是Ruby新手。完成一些练习后碰壁了。练习:计算一系列成绩的字母等级创建一个方法get_grade来接受测试分数数组。数组中的每个分数应介于0和100之间,其中100是最大分数。计算平均分并将字母等级作为字符串返回,即“A”、“B”、“C”、“D”、“E”或“F”。我一直返回错误:avg.rb:1:syntaxerror,unexpectedtLBRACK,expecting')'defget_grade([100,90,80])^avg.rb:1:syntaxerror,unexpected')',expecting$end这是我目前所拥有的。我想坚持使用下面的方法或.join,
我的最终目标是安装当前版本的RubyonRails。我在OSXMountainLion上运行。到目前为止,这是我的过程:已安装的RVM$\curl-Lhttps://get.rvm.io|bash-sstable检查已知(我假设已批准)安装$rvmlistknown我看到当前的稳定版本可用[ruby-]2.0.0[-p247]输入命令安装$rvminstall2.0.0-p247注意:我也试过这些安装命令$rvminstallruby-2.0.0-p247$rvminstallruby=2.0.0-p247我很快就无处可去了。结果:$rvminstall2.0.0-p247Search
我实际上是在尝试使用RVM在我的OSX10.7.5上更新ruby,并在输入以下命令后:rvminstallruby我得到了以下回复:Searchingforbinaryrubies,thismighttakesometime.Checkingrequirementsforosx.Installingrequirementsforosx.Updatingsystem.......Errorrunning'requirements_osx_brew_update_systemruby-2.0.0-p247',pleaseread/Users/username/.rvm/log/138121
由于fast-stemmer的问题,我很难安装我想要的任何rubygem。我把我得到的错误放在下面。Buildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinstallingfast-stemmer:ERROR:Failedtobuildgemnativeextension./System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/rubyextconf.rbcreatingMakefilemake"DESTDIR="cleanmake"DESTDIR=
我是Google云的新手,我正在尝试对其进行首次部署。我的第一个部署是RubyonRails项目。我基本上是在关注thisguideinthegoogleclouddocumentation.唯一的区别是我使用的是我自己的项目,而不是他们提供的“helloworld”项目。这是我的app.yaml文件runtime:customvm:trueentrypoint:bundleexecrackup-p8080-Eproductionconfig.ruresources:cpu:0.5memory_gb:1.3disk_size_gb:10当我转到我的项目目录并运行gcloudprevie