直到iOS工程师引入API监控工具「Topbeat」之前
我想要做的是进程监控和资源监控,如果进程崩溃或资源耗尽,希望能被告知。
实际上,我也想要将访问日志可视化,但不确定应该选择什么方式……因此,在暑假期间我会做些调查。
暂时先看看各个公司的案例…总结一下在网络公司中经常使用的监控工具。
不行,我不懂。
无论如何,虽然我用过Zabbix和nginx,但它们给我一种冗长而沉重的感觉。
如果能够在Kibana等工具上快速查看一些小型API服务器的资源状态和访问趋势,那就太聪明了。
我选择的是Topbeat。
安装
//Topbeat
$ curl -L -O https://download.elastic.co/beats/topbeat/topbeat-1.0.1-x86_64.rpm
$ sudo rpm -vi topbeat-1.0.1-x86_64.rpm
$ sudo /etc/init.d/topbeat start
//elasticsearch
// http://qiita.com/inouet/items/6276c5a08c4fe5eecdb5
$ yum install java-1.8.0-openjdk-headless
$ yum install elasticsearch
$ sudo service elasticsearch start
//Packetbeat
$ sudo rpm -ivh https://download.elastic.co/beats/packetbeat/packetbeat-1.0.0-x86_64.rpm
$ curl -XPUT localhost:9200/_template/packetbeat -d @/etc/packetbeat/packetbeat.template.json
$ sudo /etc/init.d/packetbeat start
在Kibana中发生错误
[jumbo@tk2-230-24763 ~]$ sudo service elasticsearch start
Starting elasticsearch: Exception in thread "main" java.lang.IllegalStateException: Failed to created node environment
Likely root cause: java.nio.file.AccessDeniedException: /var/lib/elasticsearch/elasticsearch/nodes/1
at sun.nio.fs.UnixException.translateToIOException(UnixException.java:84)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
at sun.nio.fs.UnixFileSystemProvider.createDirectory(UnixFileSystemProvider.java:383)
at java.nio.file.Files.createDirectory(Files.java:630)
at java.nio.file.Files.createAndCheckIsDirectory(Files.java:734)
at java.nio.file.Files.createDirectories(Files.java:720)
at org.elasticsearch.env.NodeEnvironment.<init>(NodeEnvironment.java:169)
at org.elasticsearch.node.Node.<init>(Node.java:165)
at org.elasticsearch.node.Node.<init>(Node.java:140)
at org.elasticsearch.node.NodeBuilder.build(NodeBuilder.java:143)
at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:178)
at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:270)
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:35)
Refer to the log for complete error details.
请使用以下方法以避免问题:
这个问题的解决方法可以在这里找到:https://github.com/elastic/elasticsearch/issues/10671
您可以通过执行命令来更改文件或目录的所有者并避免该问题:
$ sudo chown -R elasticsearch:elasticsearch /var/lib/elasticsearch/
确认 Kibana 是否已启动。
好的,开始行动。
[jumbo@tk2-230-24763 ~]$ curl -XGET http://localhost:9200
{
"name" : "Doorman",
"cluster_name" : "elasticsearch",
"version" : {
"number" : "2.3.5",
"build_hash" : "90f439ff60a3c0f497f91663701e64ccd01edbb4",
"build_timestamp" : "2016-07-27T10:36:52Z",
"build_snapshot" : false,
"lucene_version" : "5.5.0"
},
"tagline" : "You Know, for Search"
}
我要看看
这数量太多了啊… 前任做了些什么。
研究Elasticsearch中的内容。
Elasticsearch 查询
查看索引列表
[jumbo@tk2-230-24763 beats-dashboards-1.0.1]$ curl -XGET localhost:9200/_aliases?pretty
{
"topbeat-2016.08.13" : {
"aliases" : { }
},
"mytest" : {
"aliases" : { }
},
".kibana" : {
"aliases" : { }
}
}
查看内部
[jumbo@tk2-230-24763 beats-dashboards-1.0.1]$ curl -XGET localhost:9200/_cat/count/topbeat-2016.08.13
1471051011 10:16:51 44216
[jumbo@tk2-230-24763 beats-dashboards-1.0.1]$ curl -XGET localhost:9200/_cat/count/topbeat-2016.08.13
1471051020 10:17:00 44382
慢慢地越来越多了呢。
解决方法 (jiě jué fǎ)
$ curl -X PUT localhost:9200/.kibana/_settings -d '{ "index": { "max_result_window": 2147483647 }}'
即使导出所有内容,也无法获取Kibana的设置。
以下是無人助手回答的原文的中文翻譯:
下一個錯誤
解决方法 (jiě jué fǎ)
2016年6月3日,Elastic Stack 5.0 alpha 3发布了,终于迎来了Metricbeat!#elasticsearch
未被显示出来……
尝试升级Java。
使用sudo yum install java-1.8.0-openjdk-devel命令安装Java 1.8.0 开发环境。
第一次听说的激活指令
[jumbo@tk2-230-24763 beats-dashboards-1.0.1]$ sudo alternatives --config java
There are 2 programs which provide 'java'.
Selection Command
-----------------------------------------------
* 1 /usr/lib/jvm/jre-1.8.0-openjdk.x86_64/bin/java
+ 2 /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java
Enter to keep the current selection[+], or type selection number: 1
[jumbo@tk2-230-24763 beats-dashboards-1.0.1]$ javac -version
javac 1.8.0_101
无论如何我能看到,但出现了错误。
SearchParseException[Unknown key for a VALUE_STRING in [2]: [pre_zone].]
我本来觉得无法再继续了…但是听说可以升级到Kibana4.2就可以了。
$ curl -sL https://download.elastic.co/kibana/kibana/kibana-4.2.0-linux-x64.tar.gz | sudo tar zxf - -C /tmp
$ sudo mv /tmp/kibana-4.2.0-linux-x64 /usr/share/kibana
$ sudo /usr/share/kibana/bin/kibana
太棒了!!!!!
好日子啊。我们喝啤酒吧!
Topbeat的优点。
-
- 導入が簡単
-
- リソース監視が見やすい
- プロセス監視が便利
寻找死亡监视与警报的工具将是不同的。
请参考以下资料。
Topbeat可以在10分钟内监视服务器资源。