wcentos6.5安装教程 怎么进入特权模式

当前位置: >>
openstack(centos6.4)安装笔记
openstack(centos6.4)setup环境要求: ? Controller Node: 1 processor, 2 GB memory, and 5 GB storage ? Network Node: 1 processor, 512 MB memory, and 5 GB storage ? Compute Node: 1 processor, 2 GB memory, and 10 GB storage 虚拟机三个节点配置: Controller /192.168.192.52 Network /192.168.192.79/10.0.1.21 Compute /192.168.192.105/10.0.1.31 compute2 /192.168.192.90/10.0.1.31 两个节点配置: Controller /192.168.192.32 Compute /192.168.192.161 使用 203.0.113.0/24 浮动 IP 地址范围 203.0.113.101 to 203.0.113.200 概述 OpenStack 项目是一个开源的云计算平台,支持所有类型云环境。简单的实现项目的目标是,大规模的可伸缩 性和一组丰富的功能。 云计算专家来自世界各地的贡献项目 OpenStack 提供了一个通过各种“基础架构即服 务”(IaaS)的解决方案补充的服务。每个服务提供了一个应用程序编程接口(API)促进这种集成。下表提供了 OpenStack 服务列表:1. Architecture图 1.1 概念架构/2 服务项目名称描述 提供了一个基于 web 的自助服务门户与底层交互DashboardComputeOpenStack 服务,如启动一个实例,分配 IP 地址和配置访问 控制ComputeNova管理在 OpenStack 计算实例的生命周期环境,职责包括大 量生成,调度和退役虚拟机的需求。 为其他 OpenStack 使网络连接服务的服务,如 OpenStack 计NetworkingNeutron算,为用户提供了一个 API 定义网络和附件,有一个可插拔 的架构,支持许多流行的网络供应商和技术 存储 通过 RESTful 任意非结构化数据存储和检索对象,基于Object StorageSwiftHTTP API,这是高度的数据复制和容错向外扩展的架构, 它的实现并不像一个文件服务器挂载的目录 Block StorageCinder提供持续的块存储运行实例,它的可插拔驱动程序体系结 构促进块的创建和管理存储设备 共享服务Identity serviceKeystone为其他 KeystoneProvides 身份验证和授权服务 OpenStack 服务,提供了一个目录所有 OpenStack 的端点服务 存储和检索虚拟机磁盘映像,OpenStack 计算利用这种在 实例配置 监视和计量 OpenStack 云计费,基准,可伸缩性和统计的目 的Image Service TelemetryGlance Ceilometer 更高级别的服务协调多个组合使用云应用程序本机格式或 AWS Orchestration Heat CloudFormation 热模板模板格式,通过 OpenStack-native REST API 和 CloudFormation-compatible 查询 API Database Service Trove 提供可伸缩的、可靠的云数据库即关系和非关系数据库引 擎的功能图 1.2 三个节点的体系结构,其中包含 OpenStack 网络(neutron)#控制器节点身份运行服务,形象服务,管理部分计算和网络、网络插件,和仪表板。它还包括支持服务,如数据 库、消息代理和网络时间协议(NTP)。可选地,控制器节点在块存储的一部分运行,对象存储,数据库服务、编 排和遥测。这些组件提供额外的为您的环境特性。 #网络节点的网络运行插件,2 层代理,和几层 3 条款和操作租户的代理网络。2 层服务包括配置虚拟网络和 隧道。第三层服务包括路由、NAT 和 DHCP。这个节点还处理外部(互联网)为租户虚拟连接机器或实例 #计算节点运行虚拟机监控程序部分的计算,运营租户虚拟机或实例。 默认情况下计算使用 KVM 虚拟机监控 程序。 的 compute 节点也运行网络插件和 2 层代理操作租户网络和实现安全组。 您可以运行多个计算节点。 可选地,计算节点也运行着遥测代理。此组件提供附加功能为您的环境 图 1.3 与遗留网络两节点体系结构(nova-network)2. Basic environment configuration请注意 尽管大多数环境包括 OpenStack 身份,形象服务,计算,至少一个网络服务,和仪表板,OpenStack 对象存储可以 独立运作的其他服务。如果你使用案只涉及到对象存储,你可以跳过章节”系统要求对象存储”[80]。然而,仪 表板不会至少没有 OpenStack 形象服务和计算工作 请注意 你必须使用一个帐户管理权限配置每个节点 作为根用户运行命令或配置 sudo 实用程序 在你开始之前 功能的环境,OpenStack 不需要大量的资源。我们建议您的环境满足或超过以下最低 需求可以支持几个最小 CirrOS 实例: ?控制器节点:1 处理器、2 GB 内存和 5 GB 的存储空间 ?网络节点:1 处理器,512 MB 内存,和 5 GB 的存储空间 ?计算节点:1 处理器、2 GB 内存和 10 GB 存储 为 OpenStack 减少混乱,提供更多的资源,我们建议最小安装的 Linux 发行版。 同时,我们强烈建议您安装一个 64 位有些版本的发行版至少计算节点。如果你安装 32 位版本计算节点的分布,试图启动一个实例使用一个 64 位的图像将会失败 请注意 在每个节点上单个磁盘分区为最基本的安装工作。然而 ,您应该考虑逻辑卷管理器(LVM)安装可选块存储等 服务。许多用户构建测试环境虚拟机(vm)。的主要好处 虚拟机包括以下: ?一个物理服务器可以支持多个节点,几乎每个都有任意数量的网络接口 ?能力定期“摄像镜头”在整个安装过程中,“回滚”工作配置的一个问题然而,虚拟机将减少您的实例的性能,尤 其是如果您的系统管理程序和/或处理器缺乏支持硬件加速的嵌套的 vm 网络 在每个节点上安装操作系统后你选择的体系结构部署时,您必须配置网络接口。我们建议您禁用任何自动化 网络管理工具和手动编辑适当的配置文件为您的发行版。有关如何配置的更多信息网络在你的分布,请参阅 文档 禁用使其和启用网络服务: service NetworkManager stop service network start chkconfig NetworkManager off chkconfig network on 禁用firewalld并使iptables: service firewalld stop service iptables start chkconfig firewalld off chkconfig iptables on OpenStack Networking (neutron) 这个例子与 OpenStack 网络架构(中子)需要一个控制器节点、一个网络节点和至少一个计算节点。控制器 节点包含一个网络接口管理网络。 包含一个网络节点网络接口管理网络,一个实例的隧道网络,一个外部网络。 计算节点包含一个网络接口管理网络和一个实例隧道网络 请注意 网络接口名称不同的分布。传统上,接口使用“eth”后跟一个顺序编号。本指南涵盖所有变化,简单指最低的第 一接口的接口数量,第二个接口的接口数量,和第三个界面最高的接口编号 To configure name resolution: 三个节点指定 hosts,/etc/hosts 192.168.192.52 controller 192.168.192.79 network 192.168.192.90 compute Controller node 第一个接口配置为管理界面: IP address: 192.168.192.52 Network mask: 255.255.255.0 (or /24) Default gateway: 192.168.192.1 Network node 第一个接口配置为管理界面: IP address: 192.168.192.79 Network mask: 255.255.255.0 (or /24) Default gateway: 192.168.192.1 配置第二个界面实例隧道接口: IP address: 10.0.1.21 Network mask: 255.255.255.0 (or /24) 外部接口使用一个特殊的配置没有一个 IP 地址分配给它。第三个接口配置为外部接口: INTERFACE_NAME 替换为实际的接口名称。例如,eth2 或 ens256 编辑/etc/sysconfig/network-scripts / ifcfg-INTERFACE_NAME 文件包含以下: 不改变 HWADDR 和 UUID 键 DEVICE=INTERFACE_NAME TYPE=Ethernet ONBOOT=&yes& BOOTPROTO=&none& 重新启动网络: service network restart Compute node 配置网络: 第一个接口配置为管理界面: IP address: 192.168.192.90 Network mask: 255.255.255.0 (or /24) Default gateway: 192.168.192.1 配置第二个界面实例隧道接口: IP address: 10.0.1.31 Network mask: 255.255.255.0 (or /24) 请注意 额外的计算节点应该使用 10.0.1.32 10.0.1.33,等等 重新启动网络: service network restart Legacy networking (nova-network)两个节点分支 与传统网络架构的例子(nova-network)需要一个控制器节点和至少一个计算节点。控制器节点包含一个网 络接口管理网络。计算节点包含一个网络接口管理网络和外部网络 To configure name resolution: 两个节点指定 hosts,/etc/hosts 192.168.192.32 controller 192.168.192.161 compute Controller node 配置网络: 第一个接口配置为管理界面: IP address: 192.168.192.23 Network mask: 255.255.255.0 (or /24) Default gateway: 192.168.192.1 Compute node 配置网络: 第一个接口配置为管理界面: IP address: 192.168.192.161 Network mask: 255.255.255.0 (or /24) Default gateway: 192.168.192.1 请注意 额外的计算节点应该使用 10.0.0.32 10.0.0.33,等等 外部接口使用一个特殊的配置没有一个 IP 地址分配给它。 第二个接口配置为外部接口: INTERFACE_NAME 替换为实际的接口名称。例如,eth1ens224。 编辑/etc/sysconfig/network-scripts / ifcfg-INTERFACE_NAME 文件 包含以下: 不改变 HWADDR 和 UUID 键 DEVICE=INTERFACE_NAME TYPE=Ethernet ONBOOT=&yes& BOOTPROTO=&none& 重启网络服务 service network restart Network Time Protocol (NTP) 跨多台机器同步服务,您必须安装国家结核控制规划。的例子向导配置控制器节点作为参考服务器和任何额 外的节点集他们的时间从控制器节点。 在每个系统上安装国家结核控制规划方案运行 OpenStack 服务: yum install ntp service ntpd start chkconfig ntpd on 建议您配置其他节点的同步时间控制器节点而不是从外面你的局域网。 为此,安装 ntp 守护进程上面, 然后编辑/etc/ntp.conf 配置和更改服务器指令使用控制器节点作为互联网时代来源 Security OpenStack 服务支持各种安全方法包括密码、政策,加密。另外,配套服务包括数据库服务器和消息代理支持 至少密码安全。为了缓解安装过程,本指南仅覆盖密码安全适用的地方。您可以手动创建安全密码,使用工具 如 pwgen 生成它们,或 通过运行下面的命令: openssl rand -hex 10 在安装期间 OpenStack 和支持服务需要管理权限和操作。在某些情况下,服务执行修改主机可以干涉自动化 部署工具,如 Ansible、厨师和傀儡。例如,一些 OpenStack 服务添加一个根包装,sudo 会干扰安全策略。有关 更多信息,请参见云管理员指南。同时,网络服务假设默认值为内核网络参数和修改防火墙规则。为了避免大 多数问题在初始安装,我们建议使用一个股票的部署支持分布在你的主机。 然而,如果您选择自动部署你的主 机,检查配置和政策应用到错误之后再继续进一步 Database 大多数 OpenStack 服务需要一个数据库来存储信息。 这些示例使用一个控制器节点上运行的 MySQL 数据库。 你必须安装 MySQL 数据库控制器上的节点。你必须在任何其他节点上安装 MySQL Python 库访问 MySQL。 Controller setup 在控制器节点上,安装 MySQL 客户端和服务器包和 Python: yum install mysql mysql-server MySQL-python -y MySQL 配置与 OpenStack 需要一些改变: 根据[mysqld]部分,设置 bind-address 管理的关键控制器的 IP 地址启用访问其他节点通过节点管理网络: Edit the /f file: [mysqld] ... bind-address = 192.168.192.23 根据[mysqld]部分,设置以下键使 InnoDB,utf - 8,utf - 8 字符集,默认排序: [mysqld] ... default-storage-engine = innodb innodb_file_per_table collation-server = utf8_general_ci init-connect = 'SET NAMES utf8' character-set-server = utf8 启动 MySQL 数据库服务器并将其设置为在系统启动时自动启动: service mysqld start chkconfig mysqld on 最后,你应该为你的 MySQL 数据库设置 root 密码。OpenStack 项目建立数据库和表提示您输入这个密码如 果它被设置 你必须删除匿名用户在创建数据库时开始。否则,当你按照说明数据库连接出现问题在这个指南。要做到这 一点 , 使用 mysql_secure_installation 命令。注意 , 如果 mysql_secure_installation 失败 , 您可能需要使用 mysql_install_db: mysql_install_db mysql_secure_installation 如果您还没有设置一个根数据库密码,提示时按回车的密码。这个命令提供了一个选项让你安全数据库安装。 是的应对所有提示,除非你有一个很好的理由否则 Node setup 以外的所有节点控制器节点上,安装 MySQL Python 库: yum install MySQL-python -y OpenStack packages 发行版可能 OpenStack 发布包的分配或通过其他方法,因为 OpenStack 和分配释放时间是独立的对方 本节描述配置后你必须完成配置机器安装最新 OpenStack 包 本指南中的例子使用 RDO OpenStack 包存储库。这些包在 Red Hat Enterprise Linux,CentOS 的兼容版 本,Fedora20 安装 yum-plugin-priorities 插件。这个包可以相对的分配优先级配置的软件存储库。使用此功能 RDO 发布 包: yum install yum-plugin-priorities -y yum install ca-certificates -y 要启用 RDO 库,下载并安装 rdo-release-icehouse 包: yum install http://repos.fedorapeople.org/repos/openstack/openstack-icehouse/rdo-release-icehouse-3.noarch.rpm -y EPEL包包括GPG钥匙包签名和库信息。这只能安装在Red Hat Enterprise Linux CentOS,Fedora。安装最新的 epel-release包(参见http://download.fedoraproject.org/pub/epel/6/x86_64/repoview / epel-release.html)。 例如: yum install http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm -y openstack-utils包包含安装和实用程序配置简单。这些项目在本指南。安装openstackutils。此验证,您可以 访问RDO存储库: yum install openstack-utils -y openstack-selinux包包括配置所需的政策文件在RHEL和CentOS SELinux OpenStack安装期间。这一步中不 是必需的OpenStack Fedora安装。安装openstack-selinux: yum install openstack-selinux -y 升级你的系统软件包: yum upgrade ######################### 如果出现以下报错: Error: Multilib version problems found. This often means that the root cause is something else and multilib version checking is just pointing out that there is a problem. Eg.: 1. You have an upgrade for openssl-devel which is missing some dependency that another package requires. Yum is trying to solve this by installing an older version of openssl-devel of the different architecture. If you exclude the bad architecture yum will tell you what the root cause is (which package requires what). You can try redoing the upgrade with --exclude openssl-devel.otherarch ... this should give you an error message showing the root cause of the problem. 2. You have multiple architectures of openssl-devel installed, but yum can only see an upgrade for one of those arcitectures. If you don't want/need both architectures anymore then you can remove the one with the missing update and everything will work. 3. You have duplicate versions of openssl-devel installed already. You can use &yum check& to get yum show these errors. ...you can also use --setopt=protected_multilib=false to remove this checking, however this is almost never the correct thing to do as something else is very likely to go wrong (often causing much more problems). Protected multilib versions: openssl-devel-1.0.1e-16.el6_5.7.x86_64 != openssl-devel-1.0.0-27.el6.i686 Error: Protected multilib versions: openssl-1.0.1e-16.el6_5.7.x86_64 != openssl-1.0.0-27.el6.i686 You could try using --skip-broken to work around the problem You could try running: rpm -Va --nofiles --nodigest 使用以下命令 yum remove openssl-1.0.0-27.el6.i686 yum upgrade -y ############################################ 如果升级包括一个新的内核包,重启系统,确保新内核运行: reboot Messaging server OpenStack使用message broker协调操作和状态信息服务。消息代理服务通常 控制器节点上运行。OpenStack支持多种消息代理包括RabbitMQ Qpid,ZeroMQ。然而,大多数分布,包 OpenStack支持一个特定的消息代理。本指南涵盖了message broker支持每一个分布。如果你喜欢来实现不 同的message broker,查阅与之相关的文档 ? RabbitMQ ? Qpid ? ZeroMQ 安装消息代理服务 Red Hat Enterprise Linux(RHEL),CentOS,Linux,Fedora Qpid使用 yum install qpid-cpp-server 配置消息代理服务 为了简化安装您的测试环境,我们建议您禁用身份验证。 Edit the /etc/qpidd.conf文件和变更以下重点: auth=no 请注意 对于生产环境,应该启用身份验证。更多的信息获得消息代理,请参阅文档。如果你决定启用身份验证您的测 试环境,你必须配置qpid_username和qpid_password钥匙的配置文件使用message broker的每个OpenStack 服务 完成安装 启动消息代理服务和配置在系统启动时启动: service qpidd start chkconfig qpidd on3. Configure the Identity ServiceIdentity Service concepts 身份服务执行以下功能: ?用户管理。跟踪用户及其权限。 ?服务目录。提供了一个目录的可用服务API端点。 要理解标识的服务,您必须理解以下概念: User: 数字表示一个人、系统或服务使用OpenStack云服务。身份服务验证传入的请求是由用户自称是电话。用户 登录和可能是分配令牌访问资源。用户可以直接分配给特定的租户和行为好像他们是包含在租户 Credentials: 已知的数据只能由一个用户证明他们是。在标识服务的例子有:用户名和密码,用户名和API键,或一个提供的 身份验证令牌标识服务 Authentication: 确认用户的身份。的身份服务确认传入请求通过验证一组由用户提供的凭证 初始用户名和这些凭证密码或用户名和API键。在回应这些凭据,身份服务问题用户的用户身份验证令牌提 供了在随后的请求 Token: 一个任意的文本,用于访问资源。每个令牌有一个范围,描述了哪些资源都可以访问。一个令牌可以撤销时间 和有效期为一个有限的时间 虽然身份口令服务支持验证在本版本中,它的目的是在未来支持额外的协议。它是一个集成服务的目的是最 重要的,而不是商店,渴望成为一个成熟的身份管理解决方案 Tenant: 一个容器和/或使用资源组或隔离标识对象。根据服务运营商租户可以映射到一个客户,账户,组织,或项目 Service: 一个网络地址,通常所描述的一个URL,您访问服务。 如果使用一个扩展模板,您可以创建一个端点模板,代表所 有的模板 可消费的整个服务可用地区 Role: 用户假设使他们的人格执行一组特定的操作。一个角色包括的权利和特权。假设用户角色继承了这些权利 和特权。 在标识服务,令牌发给用户包括用户的角色列表。的服务被称为由用户决定他们如何解释的一组操作或用户 和角色资源每个角色授予访问权 下面的图显示了身份服务流程:Install the Identity Service 控制器节点上安装OpenStack身份服务,连同pythonkeystoneclient (这是一个依赖项): yum install openstack-keystone python-keystoneclient -y 身份服务使用一个数据库来存储信息,指定的位置为数据库的配置文件。在本指南中,我们使用一个MySQL 数据库控制器节点与用户名,&KEYSTONE_DBPASS&则换成合适的数据库用户的密码。 openstack-config --set /etc/keystone/keystone.conf database connection mysql://keystone:123456@controller/keystone 使用你的密码设置之前以根用户身份登录。创建一个梯形数据库用户: mysql -uroot -p mysql& CREATE DATABASE mysql& GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY ';; mysql& GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED BY ';; mysql& exit 创建数据库表的身份服务: su -s /bin/sh -c &keystone-manage db_sync& keystone 定义一个授权令牌使用之间的共享密钥的身份服务和其他OpenStack服务。使用openssl来生成一个随机的 令牌并将其存储在配置文件: ADMIN_TOKEN=$(openssl rand -hex 10) echo $ADMIN_TOKEN openstack-config --set /etc/keystone/keystone.conf DEFAULT admin_token $ADMIN_TOKEN 默认情况下,重点使用PKI令牌。创建签名密钥和证书限制对生成的数据的访问: keystone-manage pki_setup --keystone-user keystone --keystone-group keystone chown -R keystone:keystone /etc/keystone/ssl chmod -R o-rwx /etc/keystone/ssl 启动身份服务在系统启动时,使它开始: service openstack-keystone start chkconfig openstack-keystone on openstack 初始化 keystone 数据库时报错,错误如下 [root@openstack ~]# openstack-db --init--service keystone --password openstack Please enter the password for the 'root'MySQL user: Verified connectivity to MySQL. Creating 'keystone' database. Updating 'keystone' database password in/etc/keystone/keystone.conf Initializing the keystone database, pleasewait... Traceback (most recent call last): File &/usr/bin/keystone-manage&, line 51, in &module& cli.main(argv=sys.argv, config_files=config_files) File &/usr/lib/python2.6/site-packages/keystone/cli.py&, line189, in main config.setup_logging() File &/usr/lib/python2.6/site-packages/keystone/config.py&,line 56, in setup_logging log.setup('keystone') File&/usr/lib/python2.6/site-packages/keystone/openstack/common/log.py&,line 461, in setup _setup_logging_from_conf(product_name, version) File&/usr/lib/python2.6/site-packages/keystone/openstack/common/log.py&,line 525, in _setup_logging_from_conf filelog = logging.handlers.WatchedFileHandler(logpath) File &/usr/lib64/python2.6/logging/handlers.py&, line 377, in__init__ logging.FileHandler.__init__(self, filename, mode, encoding, delay) File &/usr/lib64/python2.6/logging/__init__.py&, line 827, in__init__ StreamHandler.__init__(self, self._open()) File &/usr/lib64/python2.6/logging/__init__.py&, line 846, in_open stream = open(self.baseFilename, self.mode) IOError: [Errno 13] Permission denied:'/var/log/keystone/keystone.log' Errorupdating the database. Please see /var/log/keystone/ logs for details. 问题原因 由于在安装 keystone 是使用的是 root 用户安装的所以安装日志文件是 root 权限创建的, 在初始化 keystone 数据库的时候, 会切换你指定的用户,导致没有权限访问 keystone 日志文件,检查/var/log/keystone/keystone.log 的属主 和属组 默认情况下,服务身份无限期存储数据库中的令牌到期。 当在生产环境中潜在的有用的审计,积累过期的令牌 将大幅增加数据库的大小和可能减少服务性能,特别是在测试环境和有限的资源。我们建议配置一个周期性 任务每小时使用cron来清除过期的令牌。 每小时运行以下命令来清除过期的标记和记录/var/log/keystone/keystone-tokenflush.log输出: (crontab -l -u keystone 2&&1 | grep -q token_flush) || echo '@hourly /usr/bin/keystone-manage token_flush &/var/log/keystone/keystone-tokenflush.log 2&&1' && /var/spool/cron/keystone 然后查看数据库表内容: mysql& use keystone mysql&Define users, tenants, and roles 安装身份服务后,设置用户,租户和角色进行身份验证反对。 这些都是用于允许访问服务和端点,在接下来的描 述部分 通常,您将显示一个用户名和密码进行身份验证的身份服务。然而,在这一点上,您还没有创建任何用户,所以 你必须使用授权令牌创建在前面的步骤中,看到“安装章节的身份服务”[24]为进一步的细节。你可以通过这 个――os-token选项梯形的命令或设置OS_SERVICE_TOKEN环境变量。集OS_SERVICE_TOKEN以及 OS_SERVICE_ENDPOINT指定身份的地方服务正在运行。ADMIN_TOKEN换成你的授权令牌 [root@controller ~]# echo $ADMIN_TOKEN 495c9d23ddccdb35d872 export OS_SERVICE_TOKEN=495c9d23ddccdb35d872 export OS_SERVICE_ENDPOINT=http://controller:3 Create an administrative user 按照以下步骤创建一个管理用户,角色,租户。你会使用这个占行政与OpenStack云的交互。 默认情况下,服务创建一个特殊身份_member_角色。OpenStack指示板与此角色自动向用户授予访问权限。 你会给admin用户访问权这个角色除了admin角色 请注意 您所创建的任何角色必须映射到角色中指定的政策。json文件包含在每个OpenStack服务。大多数服务的默 认策略文件赠款管理访问admin角色 创建admin用户: keystone user-create --name=admin --pass=123456 --email= +----------+----------------------------------+ | Property | | | | email id name | | | Value
True admin admin | | | | | +----------+----------------------------------+ | enabled| c69d7b20dad16bc197bc8b || username |+----------+----------------------------------+ 如出现以下错误: Invalid OpenStack Identity credentials. 请检查echo $admin_token变量的输出是否与vim /etc/keystone/keystone.conf配置文件内的admin_token = 074b1c95一致,如果不一致重复以下操作: ADMIN_TOKEN=$(openssl rand -hex 10) echo $ADMIN_TOKEN 如出现以下错误: An unexpected error prevented the server from fulfilling your request. (HTTP 500) 查看数据库keystone表内是否有数据如果没有重新创建 su -s /bin/sh -c &keystone-manage db_sync& keystone ############################################################ 创建admin角色: keystone role-create --name=admin +----------+----------------------------------+ | Property | | | id name Value | +----------+----------------------------------+ | 7fffb5e56f9b42b2b4bf582f85715ca8 | | admin |+----------+----------------------------------+ 创建admin租户: keystone tenant-create --name=admin --description=&Admin Tenant& +-------------+----------------------------------+ | Property | Value Admin Tenant | | True admin | | | | +-------------+----------------------------------+ | description | | | | enabled id name| bd0c2ab06fde178f3655fe |+-------------+----------------------------------+ 你现在必须链接admin用户,admin角色,admin租户一起使用user-role-add选择: keystone user-role-add --user=admin --tenant=admin --role=admin 链接管理用户,_member_角色,管理租户: keystone user-role-add --user=admin --role=_member_ --tenant=admin Create a normal user 按照以下步骤创建一个普通用户和租户,和链接他们的特殊_member_角色。 您将使用该帐户每日非管理员交 互OpenStack云。 您还可以创建额外的云用户重复这个过程不同的用户名和密码。 当创建这些跳过承租者创 建步骤用户。 创建demo用户: keystone user-create --name=demo --pass=123456 --email= +----------+----------------------------------+ | Property | | | | email id name | | | Value
True demo demo | | | | | +----------+----------------------------------+ | enabled| 88e0cf8ada599c63018ed || username |+----------+----------------------------------+ 创建demo租户: keystone tenant-create --name=demo --description=&Demo Tenant& +-------------+----------------------------------+ | Property | Value Demo Tenant | | True demo | | | | +-------------+----------------------------------+ | description | | | | enabled id name| 75dc6d472fff4bc2aad8 |+-------------+----------------------------------+ 请注意 不要重复这个步骤当添加额外的用户 链接demo用户,_member_角色,demo租户: keystone user-role-add --user=demo --role=_member_ --tenant=demo Create a service tenant OpenStack服务还需要一个用户名,租户和角色访问其他OpenStack服务。基本安装,OpenStack服务通常共享 一个租户服务。 您将创建额外的用户和角色在这个安装和租户配置每个服务 创建service租户 keystone tenant-create --name=service --description=&Service Tenant& +-------------+----------------------------------+ | Property | Value Service Tenant | | True service | | | | +-------------+----------------------------------+ | description | | | | enabled id name| 1a91a0a2decede87b85325c |+-------------+----------------------------------+ Define services and API endpoints 这样的身份服务可以跟踪OpenStack安装和服务位于网络,您必须注册在OpenStack安装每个服务 注册一个服务,运行这些命令: ? keystone service-create 描述了服务。 ? keystone endpoint-create 将API端点与服务 创建一个服务条目的标识服务 keystone service-create --name=keystone --type=identity --description=&OpenStack Identity& +-------------+----------------------------------+ | Property | Value OpenStack Identity | | | True keystone identity | | | | | +-------------+----------------------------------+ | description | | | | | enabled id name type| c740dda29b1e |+-------------+----------------------------------+ 服务ID是随机生成的,不同于一所示 指定一个API端点标识服务通过使用返回的服务ID。 当你指定一个端点,为公共API提供的url,内部API,和管理 API。在本指南中,控制器使用主机名。注意身份服务使用不同的端口管理API。 keystone endpoint-create --service-id=$(keystone service-list | awk '/ identity / {print $2}') --publicurl=http://controller: --internalurl=http://controller: --adminurl=http://controller:3 +-------------+----------------------------------+ | | | | | | Property adminurl id publicurl region | | | | Value http://controller:3 http://controller: http://controller: regionOne | | | | | +-------------+----------------------------------+ | b878ae8a4ba302e6c069fb || internalurl |service_id | c740dda29b1e |+-------------+----------------------------------+ 请注意 您将需要为每个服务添加到创建另一个端点OpenStack环境。 本指南相关的部分每个服务的安装包括特定于 端点创建步骤服务 Verify the Identity Service installation 验证身份服务是正确安装和配置,明确的价值观OS_SERVICE_TOKEN和OS_SERVICE_ENDPOINT环境变量: unset OS_SERVICE_TOKEN OS_SERVICE_ENDPOINT 您现在可以使用普通用户基于名称的身份验证 请求的身份验证令牌使用admin用户和您选择的密码为该用户: keystone --os-username=admin --os-password=123456 --os-auth-url=http://controller:3 token-get 作为回应,你收到一个令牌搭配您的用户ID,这验证身份服务是预期的端点上运行,你的用户帐户与预期的凭 证。 验证授权的行为,为此,请求授权租户: keystone --os-username=admin --os-password=123456 --os-tenant-name=admin --os-auth-url=http://controller:3 token-get 作为回应,你收到一个令牌,包括承租人指定的ID。 这证明了你的用户帐户指定一个明确定义的角色租户,租户 存在。 你也可以设置在您的环境中(--os-*)变量来简化命令行使用。 建立admin-openrc.sh文件管理凭证和管理端点: vim admin-openrc.sh export OS_USERNAME=admin export OS_PASSWORD=123456 export OS_TENANT_NAME=admin export OS_AUTH_URL=http://controller:3 source这个文件读取环境变量: source admin-openrc.sh 确认你的admin-openrc.sh文件被正确配置运行相同的命令没有- - os- *参数: keystone token-get 命令返回一个令牌并指定的ID租户,这证明了你正确配置环境变量 验证您的管理员帐户已授权执行管理命令: keystone user-list +----------------------------------+-------+---------+------------------+ | id | name | enabled | True True email |
| | | +----------------------------------+-------+---------+------------------+ | c69d7b20dad16bc197bc8b | admin | | 88e0cf8ada599c63018ed | demo |+----------------------------------+-------+---------+------------------+ keystone user-role-list --user admin --tenant admin 看到的id梯形用户列表命令的输出匹配user_id梯形user-role-list命令,管理角色是上市用户,对相关租户,这验 证你的用户帐户管理角色,角色使用的身份相匹配的服务policy.json文件 请注意 只要你定义你的证书和标识的服务端点通过命令行或环境变量,您可以运行OpenStack客户机命令从任何机 器。详情,请参见第4章,“安装和配置OpenStack client”[30]。4. Install and configure the OpenStack clients客户端可忽略暂时不进行配置,详情请见官方文档5. Configure the Image ServiceOpenStack形象服务使用户能够发现、登记,并检索虚拟机器图片。也被称为项目看,图像服务提供了一个 REST API使您可以查询虚拟机映像和元数据检索一个实际的形象。你可以存储虚拟机映像通过图像服务的 地点从简单的文件系统对象存储系统,如OpenStack对象存储。 重要的 为简单起见,本指南配置图像服务使用文件结束。这意味着图像上传到服务存储在一个图像目录在同一个系 统上托管服务。默认情况下,这个目录/var/lib/glance/images/. 在继续之前,确保系统有足够的可用空间这个目录来存储虚拟机映像和快照。在一个绝对最低,几个g的空间 应该使用图像部署服务的概念。看到其他的要求结束后,看到配置参考 安全注意 注册表是一个私人的内部服务是使用图像的代名词服务本身。不暴露给用户。 ?数据库。存储图像元数据。你可以选择根据你的数据库偏好。大多数部署使用MySQL或SQlite。 ?存储图像文件的存储库。 图像服务支持多种存储库包括正常的文件系统、 对象存储、 雷达手表块设备,HTTP 和亚马逊s3。某些类型的存储库只支持只读的使用。的周期性过程运行在图像缓存服务支持。复制通过集 群服务确保一致性和可用性。其他周期性的过程包括审计师、更新和收割者 如图1.1所示,“概念架构”[2],图像服务的中心整体IaaS的画面。它接受图像或图像元数据API请求从最终用户 或计算组件和可以存储的磁盘文件对象存储服务 Install the Image Service OpenStack形象服务充当注册虚拟磁盘映像。 用户可以添加新的图像或快照的一个图像从一个现有的服务器 立即存储。使用快照备份和作为模板来启动新的服务器。你可以将注册图像在对象存储或其他位置。例如, 您可以将图像存储在简单文件系统或外部web服务器。 请注意 这个过程假定您设置适当的环境变量章节中描述你的凭证”身份验证服务安装”[27]。 控制器节点上安装图像服务: yum install openstack-glance python-glanceclient -y 图像服务将图像信息存储在一个数据库中。例子指导使用MySQL数据库,使用其他OpenStack服务。 配置数据库的位置。glanceapi形象服务提供和glance-registry服务,每个都有自己的配置文件。你必须更新 配置文件在本节。取代GLANCE_DBPASS与你的形象服务数据库密码 openstack-config --set /etc/glance/glance-api.conf database connection mysql://glance:123456@controller/glance openstack-config --set /etc/glance/glance-registry.conf database connection mysql://glance:123456@controller/glance 使用您创建的密码以根用户身份登录并创建数据库用户: mysql -uroot -p mysql& cr mysql& GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' IDENTIFIED BY ';; mysql& GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' IDENTIFIED BY ';; 创建数据库表的形象服务: su -s /bin/sh -c &glance-manage db_sync& glance 会出现以下提示: /usr/lib64/python2.6/site-packages/Crypto/Util/number.py:57: PowmInsecureWarning: Not using mpz_powm_sec. You should rebuild using libgmp &= 5 to avoid timing attack vulnerability. You should rebuild using libgmp &= 5 to avoid timing attack _warn(&Not using mpz_powm_sec. 可暂时忽略有待研究 查看表内容 mysql& use glance mysql& +------------------+ | Tables_in_glance | +------------------+ | image_locations | image_members | image_properties | | image_tags | images | migrate_version | | task_info | tasks +------------------+ | | | | | |vulnerability.&, PowmInsecureWarning) 创建一个图像的一瞥用户服务可以使用的标识进行身份验证服务。选择一个密码,为看用户指定电子邮件地 址。使用服务租户和给用户管理角色: keystone user-create --name=glance --pass=123456 --email= +----------+----------------------------------+ | Property | | | | email id name | | | Value
True glance glance | | | | | +----------+----------------------------------+ | enabled| ce586dbcfd00be2a212a5 || username |+----------+----------------------------------+ keystone user-role-add --user=glance --tenant=service --role=admin 图像服务配置为使用身份服务进行身份验证 运行以下命令和GLANCE_PASS替换为您选择的密码看用户的身份服务: openstack-config --set /etc/glance/glance-api.conf keystone_authtoken auth_uri http://controller:5000 openstack-config --set /etc/glance/glance-api.conf keystone_authtoken auth_host controller openstack-config --set /etc/glance/glance-api.conf keystone_authtoken auth_port 35357 openstack-config --set /etc/glance/glance-api.conf keystone_authtoken auth_protocol http openstack-config --set /etc/glance/glance-api.conf keystone_authtoken admin_tenant_name service openstack-config --set /etc/glance/glance-api.conf keystone_authtoken admin_user glance openstack-config --set /etc/glance/glance-api.conf keystone_authtoken admin_password 123456 openstack-config --set /etc/glance/glance-api.conf paste_deploy flavor keystone openstack-config --set /etc/glance/glance-registry.conf keystone_authtoken auth_uri http://controller:5000 openstack-config --set /etc/glance/glance-registry.conf keystone_authtoken auth_host controller openstack-config --set /etc/glance/glance-registry.conf keystone_authtoken auth_port 35357 openstack-config --set /etc/glance/glance-registry.conf keystone_authtoken auth_protocol http openstack-config --set /etc/glance/glance-registry.conf keystone_authtoken admin_tenant_name service openstack-config --set /etc/glance/glance-registry.conf keystone_authtoken admin_user glance openstack-config --set /etc/glance/glance-registry.conf keystone_authtoken admin_password 123456 openstack-config --set /etc/glance/glance-registry.conf paste_deploy flavor keystone 注册服务形象与身份服务,以便其他OpenStack服务可以找到它 注册服务和创建端点: keystone service-create --name=glance --type=image --description=&OpenStack Image Service& +-------------+----------------------------------+ | Property | Value OpenStack Image Service | | True glance | | | | +-------------+----------------------------------+ | description | | | | enabled id name| e74ebce5802560c | |type|image|+-------------+----------------------------------+ keystone endpoint-create --service-id=$(keystone service-list | awk '/ image / {print $2}') --publicurl=http://controller:9292 --internalurl=http://controller:9292 --adminurl=http://controller:9292 +-------------+----------------------------------+ | | | | | | Property adminurl id publicurl region | | | | Value http://controller:9292 http://controller:9292 http://controller:9292 regionOne | | | | | +-------------+----------------------------------+ | 4cbdafbbd19 || internalurl |service_id | e74ebce5802560c |+-------------+----------------------------------+ 启动glance-api和glance-registry服务和配置它们在系统启动时: service openstack-glance-api start service openstack-glance-registry start chkconfig openstack-glance-api on chkconfig openstack-glance-registry on Verify the Image Service installation 测试图像服务安装,下载至少一个虚拟机映像已知与OpenStack工作。例如,CirrOS是一个小测试常常使用的 图像用于测试OpenStack部署(CirrOS下载)。这个走过使用64位CirrOS QCOW2形象。 关于如何下载和构建图像的更多信息,见OpenStack虚拟机器映像指南。对于如何管理信息的图像,看到 OpenStack用户指南 下载图片到一个专门的目录中使用wget或curl: mkdir /tmp/images cd /tmp/images/ wget http://cdn.download.cirros-cloud.net/0.3.2/cirros-0.3.2-x86_64-disk.img 上传图片到图片服务: glance image-create --name=IMAGELABEL --disk-format=FILEFORMAT --container-format=CONTAINERFORMAT --is-public=ACCESSVALUE & IMAGEFILE IMAGELABEL: 任意标签。用户的名字参考图像 FILEFORMAT: 指定图像文件的格式。有效的格式包括qcow2, raw, vhd, vmdk, vdi, iso, aki, ari, and ami. 您可以验证使用file命令格式: file cirros-0.3.2-x86_64-disk.img cirros-0.3.2-x86_64-disk.img: QEMU QCOW Image (v2), bytes CONTAINERFORMAT: 指定容器格式。有效的格式包括: bare,ovf, aki, ari and ami. 指定裸表明图像文件不是在一个文件中包含有关虚拟机的元数据的格式。虽然目前这个字段是必需的,它不 是实际使用OpenStack的任何服务和对系统没有影响的行为。因为没有使用任何的价值,它是安全的总是光 秃秃的指定为容器格式 ACCESSVALUE: 指定图像访问 ? true - 所有的用户可以查看和使用的图像。 ? false - 只有管理员可以查看和使用图像。 IMAGEFILE 指定您的下载图像文件的名称 例如: source admin-openrc.sh glance image-create --name=cirros-0.3.2-x86_64 --disk-format=qcow2 --container-format=bare --is-public=true & cirros-0.3.2-x86_64-disk.img +------------------+--------------------------------------+ | Property | checksum | created_at | deleted | deleted_at | disk_format | id | is_public | min_disk | min_ram | name | owner | protected | size | status | updated_at | virtual_size 请注意 因为你返回的图像ID是动态生成的,部署生成一个不同的ID比这个例子所示 | Value | 64d7c1cd2b6f60c92c13 | | | | | | | | | | | | | | | | T09:55:44 | False | None | qcow2 | True |0 |0 | cirros-0.3.2-x86_64 | bd0c2ab06fde178f3655fe | False |
| active | T09:55:44 | None | | +------------------+--------------------------------------+ | container_format | bare| aa035d19-d-a628-f180ec6c5909 |+------------------+--------------------------------------+ 确认图片上传和显示其属性: glance image-list 您现在可以删除本地下载的图像,因为它是存储和可用通过形象服务 rm -r /tmp/images 另外,上传图片服务可以做到无需使用本地磁盘空间来存储文件,通过使用 --copy-from参数。 例如: glance image-create --name=&cirros-0.3.2-x86_64& --disk-format=qcow2 --container-format=bare --is-public=true --copy-from http://cdn.download.cirros-cloud.net/0.3.2/cirros-0.3.2-x86_64-disk.img +------------------+--------------------------------------+ | Property | checksum | created_at | deleted | deleted_at | disk_format | id | is_public | min_disk | min_ram | name | owner | protected | size | status | updated_at | virtual_size | Value | None | | | | | | | | | | | | | | | | T09:59:37 | False | None | qcow2 | 07f0f9f9-ebe2-4ee5-9d13-81ea41a2c6db | | True |0 |0 | cirros-0.3.2-x86_64 | bd0c2ab06fde178f3655fe | False |
| queued | T09:59:37 | None | | +------------------+--------------------------------------+ | container_format | bare+------------------+--------------------------------------+6.Configure Compute servicesCompute service 计算服务是云计算结构控制器,这是主要的组成部分IaaS系统。用它来主机和管理云计算系统。主要的模块 有在Python中实现。计算与服务身份认证,为图像,图像服务和仪表板用户和管理界面。获取图像是有限的项 目由用户;配额是有限的每个项目(例如,实例的数量)。计算服务水平标准硬件扩展和下载图片根据需要启动 实例。计算服务由以下功能领域和他们的根本 组件: API ?nova-api服务。接收并响应终端用户计算API调用。支持OpenStack计算API,Amazon EC2 API,API和一种特 殊的管理特权用户执行管理操作。同时,启动大多数编制活动,这样运行一个实例,并实施一些政策。 ?nova-api-metadata服务。接受从实例元数据请求。novaapi -元数据服务时通常只使用在多主机模式下运行 与nova-network安装。在云中,元数据服务管理员指南。 在Debian系统上,nova-api包中,可以选择通过debconf。 Compute core ?nova-compute进程,一个工人守护进程创建和终止虚拟机实例通过管理程序api。例如,XenAPI XenServer / XCP,libvirtKVM或QEMU,VMwareAPI VMware,等等。它的过程相当复杂,但基本很简单:接受从队列中并执行 操作等一系列的系统命令,启动一个KVM实例,进行化验在数据库中更新状态。 ?nova-scheduler进程。在计算概念上最简单的代码。需要一个虚拟机实例请求从队列中计算并确定服务器 主机运行。安装控制器节点所需的计算软件包 ?nova-conductor模块。介导nova-compute和之间的交互数据库。旨在消除直接访问数据库由novacompute 云。nova-conductor模块横向尺度。然而,没有部署它在任何节点nova-compute运行。有关更多信息,请参见 新新星服务:nova-conductor Networking for VMs ?nova-network工人守护进程。类似于nova-compute,它接受网络任务从队列中并执行任务操作网络,如设置 桥接接口或改变iptables规则。正在迁移到此功能OpenStack网络,这是一个独立的OpenStack服务。 ?nova-dhcpbridge脚本。 跟踪IP地址租约并记录在数据库中通过使用dnsmasq dhcp-script设施。 正在迁移到 此功能OpenStack网络。OpenStack网络提供了一个不同的脚本。 Console interface ?nova-consoleauth守护进程。 控制台代理提供的授权用户令牌。 看到nova-novncproxy和nova-xvpnvcproxy。 该服务必须竞选控制台代理工作。很多代理的类型可以在单个novaconsoleauth上运行服务集群配置。信息, 请参阅关于novaconsoleauth。 ?nova-novncproxy守护进程。 提供了一个通过一个代理来访问运行实例VNC连接。 支持浏览器novnc的客户。 ?nova-xvpnvncproxy守护进程。一个代理来访问运行实例通过VNC连接。支持OpenStack的Java客户端专门 设计。 ?nova-cert守护进程。管理x509证书。 Image management (EC2 scenario) ?nova-objectstore守护进程。提供了一个与S3接口注册图像服务形象。主要用于安装,必须支持euca2ools。 的euca2ools在S3工具跟nova-objectstore语言,nova-objectstore翻译S3请求图像服务请求。 ?euca2ools客户机。一组命令行解释器的命令来管理云资源。虽然不是一个OpenStack模块,您可以配置 nova-api来支持这EC2接口。有关更多信息,请参见桉树3.4文档。 Command-line clients and other interfaces ?nova client 允许用户提交命令作为租户管理员或最终用户。 ?nova-manage 客户机。使云管理员提交命令 Other components ?队列。在守护进程之间传递信息的中心。通常实现RabbitMQ,但可以是任何AMQP消息队列,如Apache Qpid 或零MQ。 ?SQL数据库。商店构建时和运行时大多数州云基础设施。包括实例类型可供使用,使用实例,可用网络,和项 目。从理论上讲,OpenStack计算可以支持任何SQLAlchemy数据库支持,但只数据库SQLite3(只有数据库广泛 应用适合测试和开发工作),MySQL和PostgreSQL。 计算服务与其他OpenStack服务:身份服务身份验证、图像服务图像和OpenStack仪表板web接口。 Install Compute controller services 计算是一个集合的服务使您可以启动虚拟机实例。你可以配置这些服务运行在单独的节点或相同的节点。 在本指南中,大多数服务控制器节点上运行和启动虚拟机运行在的服务专用的计算节点。本节将向您展示如 何安装和配置这些服务控制器上的节点 安装控制器节点所需的计算软件包: yum install openstack-nova-api openstack-nova-cert openstack-nova-conductor openstack-nova-console openstack-nova-novncproxy openstack-nova-scheduler python-novaclient -y 计算将信息存储在一个数据库中。在本指南中,我们使用一个MySQL数据库控制器节点。与数据库配置计算 位置和凭证。用的密码替换NOVA_DBPASS数据库,您将创建一个后一步。 openstack-config --set /etc/nova/nova.conf database connection mysql://nova:123456@controller/nova 设置这些配置密钥计算配置为使用Qpid message broker: openstack-config --set /etc/nova/nova.conf DEFAULT rpc_backend qpid openstack-config --set /etc/nova/nova.conf DEFAULT qpid_hostname controller 设置my_ip,vncserver_listen,vncserver_proxyclient_address配置选项管理接口控制器节点的IP地址: openstack-config --set /etc/nova/nova.conf DEFAULT my_ip 192.168.192.23 openstack-config --set /etc/nova/nova.conf DEFAULT vncserver_listen 192.168.192.23 openstack-config --set /etc/nova/nova.conf DEFAULT vncserver_proxyclient_address 192.168.192.23 使用您在前面创建的密码以根用户身份登录。创建一个新数据库 用户: $ mysql -u root -p mysql& CREATE DATABASE mysql& GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'localhost' IDENTIFIED BY ';; mysql& GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'%' IDENTIFIED BY ';; 创建计算服务表: su -s /bin/sh -c &nova-manage db sync& nova 创建一个新用户,计算使用与身份验证服务 使用服务租户和给用户管理角色: keystone user-create --name=nova --pass=123456 --email= +----------+----------------------------------+ | Property | | | | email id name | | | Value
True nova nova | | | | | +----------+----------------------------------+ | enabled| c00da3c1b04ba33fd8cf || username |+----------+----------------------------------+ keystone user-role-add --user=nova --tenant=service --role=admin ###########错误信息############### Expecting an auth URL via either --os-auth-url or env[OS_AUTH_URL] ###########执行环境变量#################### [root@Controller ~]# cat admin-openrc.sh export OS_USERNAME=admin export OS_PASSWORD=123456 export OS_TENANT_NAME=admin export OS_AUTH_URL=http://controller:3 [root@Controller ~]# source admin-openrc.sh [root@Controller ~]# keystone token-get 命令返回一个令牌并指定的ID租户。这证明了你正确配置环境变量。 验证您的管理员帐户已授权执行管理命令: [root@Controller ~]# keystone user-list ################################################## 计算配置为使用这些凭证与身份服务上运行控制器。用你的计算密码替换NOVA_PASS openstack-config --set /etc/nova/nova.conf DEFAULT auth_strategy keystone openstack-config --set /etc/nova/nova.conf keystone_authtoken auth_uri http://controller:5000 openstack-config --set /etc/nova/nova.conf keystone_authtoken auth_host controller openstack-config --set /etc/nova/nova.conf keystone_authtoken auth_protocol http openstack-config --set /etc/nova/nova.conf keystone_authtoken auth_port 35357 openstack-config --set /etc/nova/nova.conf keystone_authtoken admin_user nova openstack-config --set /etc/nova/nova.conf keystone_authtoken admin_tenant_name service openstack-config --set /etc/nova/nova.conf keystone_authtoken admin_password 123456 你必须注册与身份服务计算,以便其他OpenStack服务可以找到它。注册服务,并指定端 keystone service-create --name=nova --type=compute --description=&OpenStack Compute& +-------------+----------------------------------+ | Property | Value OpenStack Compute | | | True nova compute | | | | | +-------------+----------------------------------+ | description | | | | | enabled id name type| c2874dbcffa648c5a77d2d475b585fe1 |+-------------+----------------------------------+ keystone endpoint-create --service-id=$(keystone service-list | awk '/ compute / {print $2}') --publicurl=http://controller:8774/v2/%\(tenant_id\)s --internalurl=http://controller:8774/v2/%\(tenant_id\)s --adminurl=http://controller:8774/v2/%\(tenant_id\)s +-------------+-----------------------------------------+ | Property | Value | +-------------+-----------------------------------------+ | | | | | adminurl id publicurl region service_id | | http://controller:8774/v2/%(tenant_id)s | | d467c516ab745c12875ef02 || internalurl | http://controller:8774/v2/%(tenant_id)s | | http://controller:8774/v2/%(tenant_id)s | | regionOne c2874dbcffa648c5a77d2d475b585fe1 | |+-------------+-----------------------------------------+ 开始计算服务和配置在系统启动时他们开始: service openstack-nova-api start service openstack-nova-cert start service openstack-nova-consoleauth start service openstack-nova-scheduler start service openstack-nova-conductor start service openstack-nova-novncproxy start chkconfig openstack-nova-api on chkconfig openstack-nova-cert on chkconfig openstack-nova-consoleauth on chkconfig openstack-nova-scheduler on chkconfig openstack-nova-conductor on chkconfig openstack-nova-novncproxy on 来验证您的配置,列出可用的图片: nova image-list Configure a compute node 在您配置控制器节点上的计算服务,您必须配置另一个系统作为一个计算节点。计算节点接收到的请求控制 器节点和主机的虚拟机实例。您可以在单个运行所有服务节点,但是本指南中的例子使用单独的系统。这使 得它很容易水平通过添加附加计算节点后,在本节说明。 计算服务依赖于一个hypervisor运行虚拟机实例。 OpenStack可以使用不同的虚拟机监控程序,但本指南使用 KVM 计算节点安装计算软件包: yum install openstack-nova-compute -y 编辑/etc/nova/nova.conf配置文件: openstack-config --set /etc/nova/nova.conf database connection mysql://nova:123456@controller/nova openstack-config --set /etc/nova/nova.conf DEFAULT auth_strategy keystone openstack-config --set /etc/nova/nova.conf keystone_authtoken auth_uri http://controller:5000 openstack-config --set /etc/nova/nova.conf keystone_authtoken auth_host controller openstack-config --set /etc/nova/nova.conf keystone_authtoken auth_protocol http openstack-config --set /etc/nova/nova.conf keystone_authtoken auth_port 35357 openstack-config --set /etc/nova/nova.conf keystone_authtoken admin_user nova openstack-config --set /etc/nova/nova.conf keystone_authtoken admin_tenant_name service openstack-config --set /etc/nova/nova.conf keystone_authtoken admin_password 123456 计算服务配置为使用Qpid message broker通过设置这些 配置钥匙: openstack-config --set /etc/nova/nova.conf DEFAULT rpc_backend qpid openstack-config --set /etc/nova/nova.conf DEFAULT qpid_hostname controller 配置计算提供远程控制台访问实例 openstack-config --set /etc/nova/nova.conf DEFAULT my_ip 192.168.192.161 openstack-config --set /etc/nova/nova.conf DEFAULT vnc_enabled True openstack-config --set /etc/nova/nova.conf DEFAULT vncserver_listen 0.0.0.0 openstack-config --set /etc/nova/nova.conf DEFAULT vncserver_proxyclient_address 192.168.192.161 openstack-config --set /etc/nova/nova.conf DEFAULT novncproxy_base_url http://controller:6080/vnc_auto.html 指定主机运行的形象服务 openstack-config --set /etc/nova/nova.conf DEFAULT glance_host controller 你必须确定你的系统的处理器和/或虚拟机监控程序支持虚拟机的硬件加速。 运行以下命令: egrep -c '(vmx|svm)' /proc/cpuinfo 4(返回值) [libvirt] #virt_type = qemu virt_type = kvm 返回值如果是0,进行虚拟机设置: (计算节点虚拟机勾选处理器选项)如果该命令返回一个值是非零,你的系统支持的硬件加速度通常不需要额外的配置。 如果该命令返回一个值为零,您的系统不支持硬件加速和您必须配置libvirt KVM使用QEMU openstack-config --set /etc/nova/nova.conf libvirt virt_type qemu 开始计算服务及其依赖项。配置自动启动 在系统启动时 For RHEL or CentOS: service libvirtd start service messagebus start service openstack-nova-compute start chkconfig libvirtd on chkconfig messagebus on chkconfig openstack-nova-compute on For Fedora: # service libvirtd start # service dbus start # service openstack-nova-compute start # chkconfig libvirtd on # chkconfig dbus on # chkconfig openstack-nova-compute on 请注意 在RHEL 7x和衍生品,dbus / messagebus命令列出上面可能会导致一个错误。这些错误可以忽略,因为这些 现在默认启用的服务7.Add a networking service配置网络在OpenStack可以是一个令人困惑的经历。本指南提供了一步一步的指示对OpenStack网络(中子) 和遗产网络(nova-network)服务。如果你不确定使用,我们建议尝试OpenStack网络,因为它提供了相当数量 的功能和灵活性包括各种新兴产品的插件支持虚拟网络。 看到网络的章OpenStack云管理员指导的更多信息OpenStack Networking (neutron)网络概念 OpenStack网络(中子)管理的所有虚拟网络方面网络基础设施(VNI)和访问层方面的物理网络在OpenStack 环境基础设施(PNI)。OpenStack网络允许租户创建先进的虚拟网络拓扑结构包括服务,如防火墙、负载平衡 器和虚拟专用网络(vpns)。 网络提供了以下对象抽象:网络、子网,路由器。每个功能,模拟其物理同行:网络包含子网,路由器不同的子网, 网络之间路由通信。 任何给定的网络设置有至少一个外部网络。 这个网络,与其他网络,不仅仅是一个几乎定义网络。 相反,它代表 了观点成一片的外部网络访问OpenStack外安装。 知识产权网络上的地址可以访问外部网络由身体上的任何 人外部网络。因为这个网络仅仅代表外部网络的一片,在这网络DHCP是禁用的。 除了外部网络,任何网络设置有一个或多个内部网络。 这些软件定义网络直接连接到虚拟机。 只有vm上任何 给定的内部网络或子网通过接口连接到一个类似的路由器,可以访问虚拟机直接连接到网络。 外部网络访问vm,反之亦然,路由器之间的网络需要的。每个路由器都有一个网关,是连接到一个网络,许多接 口连接到子网。 就像一个物理路由器,子网可以访问机器其他子网连接到同一个路由器,和机器可以访问网络 通过路由器的网关。 另外,你可以在外部网络IP地址分配给内部端口网络。无论什么时候在连接到一个子网,连接被称为端口。 你可以把外部网络IP地址和端口vm。这种方式,实体外网可以访问vms。 网络还支持安全组。 安全组启用管理员来定义防火墙规则。 一个VM可以属于一个或多个安全组,和网络这些 安全组的规则适用于块或开启端口,端口范围,或流量VM的类型。 每个插件,网络的使用都有自己的概念。虽然不是至关重要的操作网络,理解这些概念可以帮助你建立网络。 所有网络安装使用核心插件和一个安全组插件(或无操作安全组插件)。另外,Firewall-as-a-service(FWaaS) 和Load-balancing-as-aservice(LBaaS)插件可用。 Modular Layer 2 (ML2) plug-in Configure controller node Prerequisites 在配置OpenStack网络(中子)之前,您必须创建一个数据库 身份服务凭证包括用户和服务 作为根用户连接到数据库,创建中子数据库,glant 适当的访问: 用一个合适的密码替换NEUTRON_DBPASS mysql -u root -p mysql& CREATE DATABASE mysql& GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'localhost' IDENTIFIED BY ';; mysql& GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'%' IDENTIFIED BY ';; 为网络创建身份服务凭证: NEUTRON_PASS替换为一个合适的密码和 用一个合适的电子邮件地址 keystone user-create --name neutron --pass 123456 --email
+----------+----------------------------------+ | Property | | | | email id name | Value neutron
True neutron neutron | | | | | +----------+----------------------------------+ | enabled | || a629a145e2324454acca62 || username |+----------+----------------------------------+ 中子的用户链接到服务租户和管理角色: keystone user-role-add --user neutron --tenant service --role admin 创建中子服务: keystone service-create --name neutron --type network --description &OpenStack Networking& +-------------+----------------------------------+ | Property | Value OpenStack Networking True neutron network | | | | | +-------------+----------------------------------+ | description | | | | | enabled id name type | | || 00e7b5e89e4c2f64b3b6 |+-------------+----------------------------------+ 创建服务端点: keystone endpoint-create --service-id $(keystone service-list | awk '/ network / {print $2}') --publicurl http://controller:9696 --adminurl http://controller:9696 --internalurl http://controller:9696 +-------------+----------------------------------+ | | | | | | Property adminurl id publicurl region | | Value http://controller:9696 http://controller:9696 http://controller:9696 regionOne | | | | | +-------------+----------------------------------+ | 4ddf18f172e32c488442c | | || internalurl |service_id | 00e7b5e89e4c2f64b3b6 |+-------------+----------------------------------+ 安装网络组件 yum install openstack-neutron openstack-neutron-ml2 python-neutronclient -y 配置网络服务器组件 网络服务器组件配置包括数据库,验证机制,message broker,拓扑变化通知,和插件 网络配置为使用数据库: 用一个合适的密码替换NEUTRON_DBPASS openstack-config --set /etc/neutron/neutron.conf database connection mysql://neutron:123456@controller/neutron 网络配置为使用身份验证服务: NEUTRON_PASS替换为您选择的密码的用户的中子身份服务 openstack-config --set /etc/neutron/neutron.conf DEFAULT auth_strategy keystone openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_uri http://controller:5000 openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_host controller openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_protocol http openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_port 35357 openstack-config --set /etc/neutron/neutron.conf keystone_authtoken admin_tenant_name service openstack-config --set /etc/neutron/neutron.conf keystone_authtoken admin_user neutron openstack-config --set /etc/neutron/neutron.conf keystone_authtoken admin_password 123456 网络配置为使用message broker: openstack-config --set /etc/neutron/neutron.conf DEFAULT rpc_backend mon.rpc.impl_qpid openstack-config --set /etc/neutron/neutron.conf DEFAULT qpid_hostname controller 配置网络通知计算关于网络拓扑变化: openstack-config --set /etc/neutron/neutron.conf DEFAULT notify_nova_on_port_status_changes True openstack-config --set /etc/neutron/neutron.conf DEFAULT notify_nova_on_port_data_changes True openstack-config --set /etc/neutron/neutron.conf DEFAULT nova_url http://controller:8774/v2 openstack-config --set /etc/neutron/neutron.conf DEFAULT nova_admin_username nova openstack-config --set /etc/neutron/neutron.conf DEFAULT nova_admin_tenant_id $(keystone tenant-list | awk '/ service / { print $2 }') openstack-config --set /etc/neutron/neutron.conf DEFAULT nova_admin_password 123456 openstack-config --set /etc/neutron/neutron.conf DEFAULT nova_admin_auth_url http://controller:3 网络配置为使用模块化层2中打开名为ML2插件和关联服务: openstack-config --set /etc/neutron/neutron.conf DEFAULT core_plugin ml2 openstack-config --set /etc/neutron/neutron.conf DEFAULT service_plugins router Note We recommend adding verbose = True to the [DEFAULT] section in / etc/neutron/neutron.conf to assist with troubleshooting. To configure the Modular Layer 2 (ML2) plug-in 插件使用Open vSwitch中打开的名为ML2(ovs)机制(agent)来构建虚拟网络框架实例。然而,控制器节点不需 要机汇代理或服务,因为它不处理实例的网络流量 运行以下命令: openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 type_drivers gre openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 tenant_network_types gre openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 mechanism_drivers openvswitch openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2_type_gre tunnel_id_ranges 1:1000 openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini securitygroup firewall_driver neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini securitygroup enable_security_group True 使用网络配置计算 默认情况下,大多数发行版使用遗留网络配置计算。你必须重新配置计算通过网络来管理网络 运行以下命令: NEUTRON_PASS替换为您选择的密码的用户的中子身份服务 openstack-config --set /etc/nova/nova.conf DEFAULT network_api_class nova.network.neutronv2.api.API openstack-config --set /etc/nova/nova.conf DEFAULT neutron_url http://controller:9696 openstack-config --set /etc/nova/nova.conf DEFAULT neutron_auth_strategy keystone openstack-config --set /etc/nova/nova.conf DEFAULT neutron_admin_tenant_name service openstack-config --set /etc/nova/nova.conf DEFAULT neutron_admin_username neutron openstack-config --set /etc/nova/nova.conf DEFAULT neutron_admin_password 123456 openstack-config --set /etc/nova/nova.conf DEFAULT neutron_admin_auth_url http://controller:3 openstack-config --set /etc/nova/nova.conf DEFAULT linuxnet_interface_driver nova.network.linux_net.LinuxOVSInterfaceDriver openstack-config --set /etc/nova/nova.conf DEFAULT firewall_driver nova.virt.firewall.NoopFirewallDriver openstack-config --set /etc/nova/nova.conf DEFAULT security_group_api neutron 请注意 默认情况下,计算使用的内部防火墙服务。 因为网络包括一个防火墙服务,您必须禁用防火墙计算服务通过使 用nova.virt.firewall。NoopFirewallDriver防火墙 完成安装 网络服务初始化脚本期望一个符号链接/etc/neutron/插件。ini配置文件指向与你选择的插件。举例来说, 中打开使用名为ML2符号链接必须指向/etc/neutron/plugins/ml2 / ml2_conf.ini。 如果这个符号链接不存在, 使用下面的创建它 命令: ln -s plugins/ml2/ml2_conf.ini /etc/neutron/plugin.ini 重新启动计算服务: service openstack-nova-api restart service openstack-nova-scheduler restart service openstack-nova-conductor restart 启动网络服务和配置在系统启动时启动: service neutron-server start chkconfig neutron-server on 请注意 不像其他的服务,网络通常不需要独立的因为neutron-server服务步骤来填充数据库自动填充它。然而,这些 发行版的包有时需要运行neutron-db-manage命令之前启动neutron-server服务。我们建议尝试不像其他的 服务,网络通常不需要独立的因为neutron-server服务步骤来填充数据库自动填充它。然而,这些发行版的包 有时需要运行neutron-db-manage命令之前启动neutron-server服务。我们建议尝试 网络配置为使用插件的名称: openstack-config --set /etc/neutron/neutron.conf DEFAULT core_plugin neutron.plugins.ml2.plugin.Ml2Plugin openstack-config --set /etc/neutron/neutron.conf DEFAULT service_plugins neutron.services.l3_router.l3_router_plugin.L3RouterPlugin 填充数据库: su -s /bin/sh -c &neutron-db-manage --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugin.ini upgrade head& neutron 会出现报错,查看数据库neutron表是否有数据即可,暂时忽略报错信息Configure network node先决条件 OpenStack网络配置之前,您必须启用某些内核网络 功能 Edit /etc/sysctl.conf to contain the following: net.ipv4.ip_forward=1 net.ipv4.conf.all.rp_filter=0 net.ipv4.conf.default.rp_filter=0 net.bridge.bridge-nf-call-arptables=1 net.bridge.bridge-nf-call-iptables=1 net.bridge.bridge-nf-call-ip6tables=1 [root@Network ~]# sysctl -p 安装网络组件 yum install openstack-neutron openstack-neutron-ml2 openstack-neutron-openvswitch 配置网络常见的组件 网络常见的组件配置包括身份验证机制、消息代理和插件 网络配置为使用身份验证服务: NEUTRON_PASS替换为您选择的密码的用户的中子身份服务 openstack-config --set /etc/neutron/neutron.conf DEFAULT auth_strategy keystone openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_uri http://controller:5000 openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_host controller openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_protocol http openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_port 35357 openstack-config --set /etc/neutron/neutron.conf keystone_authtoken admin_tenant_name service openstack-config --set /etc/neutron/neutron.conf keystone_authtoken admin_user neutron openstack-config --set /etc/neutron/neutron.conf keystone_authtoken admin_password 123456 网络配置为使用message broker: openstack-config --set /etc/neutron/neutron.conf DEFAULT rpc_backend mon.rpc.impl_qpid openstack-config --set /etc/neutron/neutron.conf DEFAULT qpid_hostname controller 网络配置为使用模块化层2中打开名为ML2插件和关联 服务: openstack-config --set /etc/neutron/neutron.conf DEFAULT core_plugin ml2 openstack-config --set /etc/neutron/neutron.conf DEFAULT service_plugins router Note We recommend adding verbose = True to the [DEFAULT] section in / etc/neutron/neutron.conf to assist with troubleshooting. 配置第三层(L3)代理 第三层(L3)代理提供路由服务例如虚拟网络 运行以下命令 openstack-config --set /etc/neutron/l3_agent.ini DEFAULT interface_driver neutron.agent.linux.interface.OVSInterfaceDriver openstack-config --set /etc/neutron/l3_agent.ini DEFAULT use_namespaces True Note We recommend adding verbose = True to the [DEFAULT] section in / etc/neutron/l3_agent.ini to assist with troubleshooting. 配置DHCP代理 DHCP代理提供DHCP服务例如虚拟网络 运行以下命令 openstack-config --set /etc/neutron/dhcp_agent.ini DEFAULT interface_driver neutron.agent.linux.interface.OVSInterfaceDriver openstack-config --set /etc/neutron/dhcp_agent.ini DEFAULT dhcp_driver neutron.agent.linux.dhcp.Dnsmasq openstack-config --set /etc/neutron/dhcp_agent.ini DEFAULT use_namespaces True Note We recommend adding verbose = True to the [DEFAULT] section in / etc/neutron/dhcp_agent.ini to assist with troubleshooting. 隧道协议如通用路由封装(GRE)包括额外的数据包头部,增加开销,减少可用空间有效载荷或用户数据。没有 知识的虚拟网络基础设施、实例尝试使用默认的以太网发送数据包最大传输单元(MTU)1500字节。互联网 协议(IP)网络包含路径MTU发现(PMTUD)机制来检测端到端MTU和调整相应的数据包大小。然而,一些操作 系统和网络阻塞或缺乏支持PMTUD导致性能下降或连接失败。 理想情况下,你可以防止这些问题通过支持巨型帧在物理上网络,包含您的租户虚拟网络。巨型帧支持mtu大 约9000字节的否定GRE开销的影响虚拟网络。然而,许多网络设备支持巨型帧和缺乏OpenStack管理员往往 缺乏对网络基础设施的控制。考虑到后并发症,还可以防止通过减少MTU问题实例MTU占GRE开销。确定适 当的MTU往往价值实验,但1454字节在大多数环境中工作。您可以配置DHCP服务器分配IP地址给你也调整 MTU实例。 请注意 等云映像CirrOS忽略DHCP MTU选项 运行以下命令 openstack-config --set /etc/neutron/dhcp_agent.ini DEFAULT dnsmasq_config_file /etc/neutron/dnsmasq-neutron.conf 创建和编辑/etc/neutron/dnsmasq-neutron.conf文件并添加 以下键: dhcp-option-force=26,1454 杀死任何现有dnsmasq进程: killall dnsmasq 配置元数据代理 元数据代理提供了远程配置信息,如凭证访问实例 运行以下命令: NEUTRON_PASS替换为您选择的密码的用户的中子身份服务。 METADATA_SECRET替换为一个合适的元数据 的秘密代理 openstack-config --set /etc/neutron/metadata_agent.ini DEFAULT auth_url http://controller: openstack-config --set /etc/neutron/metadata_agent.ini DEFAULT auth_region regionOne openstack-config --set /etc/neutron/metadata_agent.ini DEFAULT admin_tenant_name service openstack-config --set /etc/neutron/metadata_agent.ini DEFAULT admin_user neutron openstack-config --set /etc/neutron/metadata_agent.ini DEFAULT admin_password 123456 openstack-config --set /etc/neutron/metadata_agent.ini DEFAULT nova_metadata_ip controller openstack-config --set /etc/neutron/metadata_agent.ini DEFAULT metadata_proxy_shared_secret METADATA_SECRET Note We recommend adding verbose = True to the [DEFAULT] section in / etc/neutron/metadata_agent.ini to assist with troubleshooting. Note 控制器节点上执行下面两个步骤 控制器上的节点,计算配置为使用元数据服务: METADATA_SECRET替换的秘密你选择元数据代理 openstack-config --set /etc/nova/nova.conf DEFAULT service_neutron_metadata_proxy true openstack-config --set /etc/nova/nova.conf DEFAULT neutron_metadata_proxy_shared_secret METADATA_SECRET 控制器上的节点,重新启动计算的API服务 service openstack-nova-api restart 打开配置模块化层2名为ML2插件 插件使用Open vSwitch中打开的名为ML2(ovs)机制(agent)来构建虚拟网络框架实例 运行以下命令: 用的IP地址替换INSTANCE_TUNNELS_INTERFACE_IP_ADDRESS你的网络节点上实例隧道网络接口。本指南 使用10.0.1.21实例的IP地址隧道网络接口在网络节点上 openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 type_drivers gre openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 tenant_network_types gre openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 mechanism_drivers openvswitch openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2_type_gre tunnel_id_ranges 1:1000 openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ovs local_ip 10.0.1.21 openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ovs tunnel_type gre openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini ovs enable_tunneling True openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini securitygroup firewall_driver neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver openstack-config --set /etc/neutron/plugins/ml2/ml2_conf.ini securitygroup enable_security_group True 配置Open vSwitch(ovs)服务 ovs服务提供底层虚拟网络的框架实例的集成桥br-int处理内部实例网络流量ovs, 的外部桥br-ex处理外部实 例在ov网络流量。外部物理上的桥需要一个端口外部网络接口提供实例与外部网络访问。本质上,这个港口 桥梁虚拟和物理的外部网络在您的环境中。 启动ovs服务和配置在系统启动时启动: service openvswitch start chkconfig openvswitch on 添加集成桥: ovs-vsctl add-br br-int 添加外部桥: ovs-vsctl add-br br-ex 添加一个端口到外部桥连接到外部网络 接口: INTERFACE_NAME替换为实际的接口名称。例如,eth2或ens256 ovs-vsctl add-port br-ex eth2 Note 根据您的网络接口驱动程序,您可能需要禁用一般收到卸载(GRO)之间达到合适的吞吐量你的实例和外部网 络,暂时禁用GRO在外部网络接口测试你的环境: ethtool -K eth2 gro off 完成安装 网络服务初始化脚本期望一个符号链接/etc/neutron/plugin.ini配置文件指向与你选择的插件。 例如,插件中 打开使用名为ML2符号链接必须指向/etc/neutron/plugins/ml2_conf.ini中打开/名为ml2。如果这个符号链 接不存在,使用创建它 以下命令: ln -s plugins/ml2/ml2_conf.ini /etc/neutron/plugin.ini 由于包装错误,Open vSwitch代理初始化脚本明确查找Open vSwitch /etc/neutron/plugin.ini 插件配置文件, 而不是一个符号链接配置文件中打开指向名为ML2。运行以下命令来解决这个问题: cp /etc/init.d/neutron-openvswitch-agent /etc/init.d/neutronopenvswitch-agent.orig sed -i 's,plugins/openvswitch/ovs_neutron_plugin.ini,plugin.ini,g' /etc/init.d/neutron-openvswitch-agent 启动网络服务和配置在系统启动时他们开始: service neutron-openvswitch-agent start service neutron-l3-agent start service neutron-dhcp-agent start service neutron-metadata-agent start chkconfig neutron-openvswitch-agent on chkconfig neutron-l3-agent on chkconfig neutron-dhcp-agent on chkconfig neutron-metadata-agent on Configure compute node 先决条件 OpenStack网络配置之前,您必须启用某些内核网络功能 Edit /etc/sysctl.conf net.ipv4.conf.all.rp_filter=0 net.ipv4.conf.default.rp_filter=0 net.bridge.bridge-nf-call-arptables=1 net.bridge.bridge-nf-call-iptables=1 net.bridge.bridge-nf-call-ip6tables=1 实现的更改: sysctl -p 安装网络组件 yum install openstack-neutron-ml2 openstack-neutron-openvswitch -y 配置网络常见的组件 网络常见的组件配置包括身份验证机制、消息代理和插件 网络配置为使用身份验证服务: NEUTRON_PASS替换为您选择的密码的用户的中子身份服务 openstack-config --set /etc/neutron/neutron.conf DEFAULT auth_strategy keystone openstack-config --set /etc/neutron/neutron.conf keystone_authtoken auth_uri

我要回帖

更多关于 centos6.5安装教程 的文章

 

随机推荐