分享

如何对CloudFoundry进行监控:varz(重要)

xioaxu790 发表于 2014-6-21 08:13:35 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 0 6638
问题导读:
1、什么是varz?
2、如何监控CloudFoundry?





CF的组建其实都有自己的状态监控,我们可以通过http查看他们的状态。这个就是varz。

比如我们在dea.yml配置文件中加入:
  1. status:  
  2.   port: 2222  
  3.   user: user  
  4.   password: pw  
复制代码


然后http访问http://本机的ip:2222/varz,那个ip不能是localhost或者127.0.0.1,必须是对外的ip。然后就会有验证信息,输入上面的用户密码,就可以看到dea的许多信息,包括配置、framework、instances以及vm状态等。


原理
在代码中我们可以看到组件在启动时都会向component注册自己。那么这个注册就会启动一个http server。启动的代码在vcap common的component.rb中。这个模块已经成为了一个gem,你不必装cloudfoundry,而只需要gem install一个都可以使用了。在vcap common中,如果有组建来注册,他会为这个组件建立一个server。然后server的port以及帐号密码默认是cf自己生成的。但是按照上文的配置,这些参数就会被传入,我们就可以按照自己的参数来配置这个server了。
在组件向component注册完成之后,组建就可以通过一下方式向varz传数据了:
  1. #这是dea的状态更新      
  2.       VCAP::Component.varz[:running_apps] = running_apps  
  3.       VCAP::Component.varz[:frameworks] = metrics[:framework]  
  4.       VCAP::Component.varz[:runtimes] = metrics[:runtime]  
复制代码


ps:在那个http的url中把varz改成healthz,可以看到一个简单的ok,表示此组建正常运行

没找到任何评论,期待你打破沉寂

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条