Cloudinsight 在 15 年年底的时候,成为了国内首家支持 Docker 监控的监控工具。Cloudinsight 一直跟随架构栈的技术变迁,满足不同企业和开发者的监控需求,所以在这炎热和雷雨交替的夏天,Cloudinsight 又一次开启了国内 OpenStack 监控的先河。
什么是 OpenStack
OpenStack 是一个美国国家航空航天局和 Rackspace 合作研发的 IaaS 软件,让任何人都可以自行建立和提供云端运算服务。此外,OpenStack 也用作建立防火墙内的私有云,提供机构或企业内各部门共享资源。
简单来说,OpenStack 就是一个提供私有化部署的 Amazon Web Services。经历 5 年的蓬勃发展,加入 OpenStack 阵营的已经包括 Google、惠普、IBM 和 Intel。
在 Cloudinsight Agent 4.7.0 版本中,已经加入了 OpenStack 监控。其中包括计算模块 Nova 的监控。
OpenStack 模块构成
既然提到 Cloudinsight 支持 Nova 的监控,那么就有必要说说 OpenStack 的模块构成。OpenStack 由以下 5 个重要模块构成:
- Nova - 计算服务
- Keysyone - 认证服务
- Glance - 镜像服务
- Neutron - 虚拟网络服务
- Cinder - 存储服务
- Horizon - UI 组件
总的来说,OpenStack 就像 AWS 提供虚拟计算单元 EC2,虚拟存储 S3,虚拟网段 VPC等。而这些相互独立的模块组成了一套完整的云计算服务平台;如果加上面向对象的存储 Swfit,资源监控 Ceilometer 和云系统部署 Heat,那么这个云计算服务平台会更加完整。
下面我们来介绍与 Cloudinsight 监控相关的 3 个模块:Nova、Keystone 和 Neutron,方便您更好地使用 Cloudinsight Agent。
Nova
Nova 是 OpenStack 计算的弹性控制器。OpenStack 云实例生命期所需的各种动作都将由 Nova 进行处理和支撑,这就意味着 Nova 以管理平台的身份登场,负责管理整个云的计算资源、网络、授权及测度。虽然Nova 本身并不提供任何虚拟能力,但是它将使用 libvirt API 与虚拟机的宿主机进行交互。Nova 通过 Web服务 API 来对外提供处理接口,而且这些接口与 Amazon 的 Web 服务接口是兼容的。
Nova 功能及特点:
- 实例生命周期管理
- 计算资源管理
- 网络与授权管理
- 基于 REST 的 API
- 异步连续通信
- 支持各种宿主:Xen、XenServer/XCP、KVM、UML、VMware vSphere 及 Hyper-V
基于 Nova 的功能,Cloudinsight OpenStack 监控提供以下数据:
-
openstack.nova.current_workload
:当前 Nova 的 Workload,包括 build, snapshot, migration, resize 各种动作的负载。 -
openstack.nova.running_vms
:当前 Nova 在运行的虚拟机和实例(instance)的数量。 -
openstack.nova.hypervisor_load.1
:hypervisor 相关指标;除了一分钟内系统负载外,还包括 disk, ram, cpu 等相关指标。 -
openstack.nova.limits.max_personality
:和 project 和租户相关的指标;包括除 personality 外的 image, security 相关指标。
更全面的监控指标和指标涵义,请参考 Cloudinsight OpenStack 监控 • 文档。
OpenStack 内部在遵循 AMQP