小编Hao*_* Ge的帖子

如何用普罗米修斯计算kubernetes中容器的cpu使用情况作为监控?

我想计算kubernetes集群中所有pod的cpu使用情况.我在prometheus中发现了两个指标可能很有用:

container_cpu_usage_seconds_total: Cumulative cpu time consumed per cpu in seconds.
process_cpu_seconds_total: Total user and system CPU time spent in seconds.

Cpu Usage of all pods = increment per second of sum(container_cpu_usage_seconds_total{id="/"})/increment per second of sum(process_cpu_seconds_total)
Run Code Online (Sandbox Code Playgroud)

但是,我发现每秒的增量都container_cpu_usage{id="/"}大于增量sum(process_cpu_seconds_total).因此使用量可能大于1 ...

kubernetes prometheus

19
推荐指数
4
解决办法
3万
查看次数

Kubernetes容器中的容器之间共享哪些命名空间?

linux中有6种名称空间:Network, UTS, Users, Mount, IPC, Pid。我知道所有容器都与Kubernetes容器中的暂停容器共享相同的网络名称空间。默认情况下,不同的容器具有不同的PID名称空间,因为它们具有不同的初始化过程。但是,其他名称空间又如何呢?

namespaces kubernetes

7
推荐指数
2
解决办法
1096
查看次数

kafka on kubernetes无法生成/使用主题(ClosedChannelException,ErrorLoggingCallback)

我按照这条指令在kubernetes上的docker中运行1个kafka和3个zookeeper-server .我不能在pod(docker container)之外生成/使用主题.

bin/kafka-console-producer.sh --broker-list 1.2.3.4:9092 --topic

[2016-06-11 15:14:46,889] ERROR Error when sending message to topic test with key: null, value: 3 bytes with error: (org.apache.kafka.clients.producer.internals.ErrorLoggingCallback)
org.apache.kafka.common.errors.TimeoutException: Batch containing 3 record(s) expired due to timeout while requesting metadata from brokers for test-0

bin/kafka-console-consumer.sh --zookeeper 5.6.7.8:2181 --topic test --from-beginning 

[2016-06-11 15:15:58,985] WARN Fetching topic metadata with correlation id 0 for topics [Set(test)] from broker [BrokerEndPoint(1001,kafka-service,9092)] failed (kafka.client.ClientUtils$)
java.nio.channels.ClosedChannelException
    at kafka.network.BlockingChannel.send(BlockingChannel.scala:110)
    at kafka.producer.SyncProducer.liftedTree1$1(SyncProducer.scala:80)
    at kafka.producer.SyncProducer.kafka$producer$SyncProducer$$doSend(SyncProducer.scala:79)
    at kafka.producer.SyncProducer.send(SyncProducer.scala:124)
    at kafka.client.ClientUtils$.fetchTopicMetadata(ClientUtils.scala:59)
    at …
Run Code Online (Sandbox Code Playgroud)

apache-kafka docker kubernetes

5
推荐指数
1
解决办法
3073
查看次数

如何显示glusterfs的版本?

我没有找到有关如何显示我的glusterfs客户端和服务器版本的任何信息.我认为应该很容易.我试过"gluster版",它无法正常工作.

glusterfs

5
推荐指数
1
解决办法
7164
查看次数

Datanode 拒绝与 namenode 通信,因为无法解析主机名

我在 kubernetes 中运行了一个 hadoop 集群,有 4 个日志节点和 2 个名称节点。有时,我的数据节点无法注册到名称节点。

17/06/08 07:45:32 INFO datanode.DataNode: Block pool BP-541956668-10.100.81.42-1496827795971 (Datanode Uuid null) service to hadoop-namenode-0.myhadoopcluster/10.100.81.42:8020 beginning handshake with NN
17/06/08 07:45:32 ERROR datanode.DataNode: Initialization failed for Block pool BP-541956668-10.100.81.42-1496827795971 (Datanode Uuid null) service to hadoop-namenode-0.myhadoopcluster/10.100.81.42:8020 Datanode denied communication with namenode because hostname cannot be resolved (ip=10.100.9.45, hostname=10.100.9.45): DatanodeRegistration(0.0.0.0:50010, datanodeUuid=b1babba6-9a6f-40dc-933b-08885cbd358e, infoPort=50075, infoSecurePort=0, ipcPort=50020, storageInfo=lv=-56;cid=CID-bceaa23f-ba3d-4749-a542-74cda1e82e07;nsid=177502984;c=0)
    at org.apache.hadoop.hdfs.server.blockmanagement.DatanodeManager.registerDatanode(DatanodeManager.java:863)
    at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.registerDatanode(FSNamesystem.java:4529)
    at org.apache.hadoop.hdfs.server.namenode.NameNodeRpcServer.registerDatanode(NameNodeRpcServer.java:1279)
    at org.apache.hadoop.hdfs.protocolPB.DatanodeProtocolServerSideTranslatorPB.registerDatanode(DatanodeProtocolServerSideTranslatorPB.java:95)
    at org.apache.hadoop.hdfs.protocol.proto.DatanodeProtocolProtos$DatanodeProtocolService$2.callBlockingMethod(DatanodeProtocolProtos.java:28539)
    at org.apache.hadoop.ipc.ProtobufRpcEngine$Server$ProtoBufRpcInvoker.call(ProtobufRpcEngine.java:616)
    at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:969)
    at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2049)
    at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2045)
    at java.security.AccessController.doPrivileged(Native …
Run Code Online (Sandbox Code Playgroud)

hadoop docker kubernetes

5
推荐指数
2
解决办法
3535
查看次数

如何搜索不是github中某人的问题/公关?

我想过滤由机器人创建的所有问题,例如: is:issue is:open author:not:robot

如何获取除机器人创建的问题以外的所有问题?

github

4
推荐指数
2
解决办法
590
查看次数

启动时如何将索引模板文件加载到elasticsearch中?

在elasticsearch v1.5中,可以将Index模板放在模板目录下的配置位置(path.conf)中elasticsearch/config/templates。但是,我发现升级到v2.3或v5.3后将不会加载此模板。有什么办法加载索引模板吗?

https://www.elastic.co/guide/zh-CN/elasticsearch/reference/1.5/indices-templates.html

elasticsearch elasticsearch-2.0 elasticsearch-5

4
推荐指数
1
解决办法
542
查看次数

为什么特使边车可以控制我的交通?

我跑istioKubernetes.我想知道特使边车是如何工作的.例如,在将边车注入吊舱后,原始集装箱无法进入外部网络EgressRule.它是如何工作的?

kubernetes istio envoyproxy

3
推荐指数
1
解决办法
559
查看次数

如何将fmt.Print和log.Print保存到Golang中的同一文件中

在shell中,我使用go run file > output,但只有fmt.Print被保存到输出中.所有log.Print仍然输出到屏幕!在我在互联网上搜索之后,我发现我可以设置日志的输出目录,但是如何在同一个文件中保存日志和文件?

shell go

2
推荐指数
1
解决办法
532
查看次数

如何在Golang中每秒多次执行命令?

我想N每秒打印一行.

for i := 0; i < N; i++ {
  fmt.Println(getLogs())
  time.Sleep(1000000000/N * time.Nanosecond)
}
Run Code Online (Sandbox Code Playgroud)

但似乎fmt.Println()getLogs()也将消耗时间.所以实际上打印N线会花费我超过1秒.

说,getLogs()并且fmt.Println()将花费1毫秒.我想每秒打印100万行.因此,打印1行将花费1毫秒getLogs(),1毫秒打印,1毫秒睡眠...打印N行将花费我3秒.

有更好的解决方案来更准确地实现这一目

go

1
推荐指数
1
解决办法
220
查看次数

Elasticsearch 返回结果的上下文(命中前后各 10 行)

查询elasticsearch时,只会返回命中的文档。如何获取点击的上下文,例如点击之前和之后的 10 个文档?

例如,我在elasticsearch中插入了5条日志:

{"log": "a"}
{"log": "b"}
{"log": "c"}
{"log": "d"}
{"log": "e"}
Run Code Online (Sandbox Code Playgroud)

我已经搜索过"query": { "match": { "log": "e" } },es将返回第5个文档。但是,我可能想要前面的4条日志进行调试,es可以返回上下文吗?

elasticsearch

1
推荐指数
1
解决办法
2400
查看次数