OpenStack 计算服务Nova [四]

OpenStack 计算服务Nova [四]

标签(空格分隔): openstack
时间:2016年11月28日
博客地址:www.abcdocker.com
公众号:abcdocker

Nova简介:

  Nova是openstack最早的两块模块之一,另一个是对象存储swift。在openstack体系中一个叫做计算节点,一个叫做控制节点。这个主要和nova相关,我们把安装为计算节点nova-compute,把除了nova-compute叫做控制节点。nova-compute是创建虚拟机的,只是创建虚拟机,所有的控制都在另一台上。

nova有非常多的组件(服务)

**Nova服务介绍
API:负责接受和响应外部请求。支持OpenStack API,EC2 API
Cert:负责身份认证EC 2
Scheduler:用于云主机调度
Conductor:计算节点访问数据的中间件
Consoleauth:用于控制台的授权验证
Novncproxy:VNC代理**

提示:EC 2是亚马逊云主机的意思

Nova scheduler
  Nova scheduler模块在openstack中的作用就是决策虚拟机创建在那个主机(计算节点)上

决策一个虚拟机应该调度到那个物理节点,需要分两个步骤:

**1、过滤(Fliter)
2、计算权值(Weight)**

提示:我们经常会出现找不到有效的主机?为什么?

 因为nova scheduler认为没有资源创建虚拟机,即使你有100G内存,如果nova scheduler认为你没有资格照样无法进行创建。scheduler作用就是决策虚拟机创建在那个主机上

image_1b2kgrl8f1sje1euatfcpohlhd9.png-85.5kB

经过主机过滤后,需要对主机进行权值的计算,根据策略选择相应的某一台主机(对于每一个要创建的虚拟机而言)

image_1b2kgs83p1tajtsb18pn14ni1gqgm.png-166.9kB

控制节点设置:
数据库以及keystone修改我们在前面已经完成,所以在此跳过

安装软件包

[root@linux-node1 ~]# yum install openstack-nova-api openstack-nova-conductor \
>   openstack-nova-console openstack-nova-novncproxy \
>   openstack-nova-scheduler

在配置文件中修改数据库的连接地址

[root@linux-node1 ~]# vim /etc/nova/nova.conf
…
[database]
connection=mysql+pymysql://nova:nova@192.168.56.11/nova
…
[api_database]
connection=mysql+pymysql://nova:nova@192.168.56.11/nova_api

提示:不要修改错了,每个都在在相对应的模块下面进行修改

同步数据库

[root@linux-node1 ~]# su -s /bin/sh -c "nova-manage api_db sync" nova
[root@linux-node1 ~]# su -s /bin/sh -c "nova-manage db sync" nova

提示:db的有警告可以忽略

检查是否有表结构

[root@linux-node1 ~]# mysql -h 192.168.56.11 -unova -pnova -e "use nova;show tables;"
[root@linux-node1 ~]# mysql -h 192.168.56.11 -unova_api -pnova_api -e "use nova_api;show tables;"

配置keystone

[root@linux-node1 ~]# vim /etc/nova/nova.conf
…
[keystone_authtoken]
auth_uri = http://192.168.56.11:5000
auth_url = http://192.168.56.11:35357
memcached_servers = 192.168.56.11:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = nova
password = nova
…
[DEFAULT]
auth_strategy=keystone
#打开注释,此行代表使用keystone进行认证

RabbitMq(消息队列配置)
因为nova服务之间使用消息队列进行沟通,所以我们需要配置rabbitmq

[root@linux-node1 ~]# vim /etc/nova/nova.conf
[DEFAULT]
rpc_backend=rabbit
#搜索rpc_backend打开注释

rabbit_host=192.168.56.11
将localhost修改为IP地址

rabbit_port=5672
端口我们可以开启也可以不开启默认就好

rabbit_userid=openstack
rabbit_password=openstack
这个是我们在rabbitmq上配置的用户

配置nova自己的一些功能

设置启用的元数据API
[root@linux-node1 ~]# vim /etc/nova/nova.conf
[DEFAULT]
enabled_apis=osapi_compute,metadata

启动网络服
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值