我想实现一个功能 - 使用k8s JSON模式/ Yaml模式验证Kubernetes部署文件(部署yaml或service yaml或rc yaml).
目前我需要设置kubectl和k8s群集才能验证.但是如果没有这个设置,想要使用Go-Client(K8s)api进行验证.
谁能告诉我是否有可用于验证文件的库?我如何获得K8s模式.有没有工具/库来生成模式?你能指出我的方向吗,因为我对kubernetes的东西很新.
有谁知道kubectl如何实现这个?如果可能的话,我想使用类似的库
使用 JMX 导出器和 Prometheus 监控 Spring boot 应用程序(TestMonitoring)。Prometheus 和 Spring Boot 应用程序 Pod 已在 kubernetes 集群中启动并运行。现在的难题是让 JMX 导出器运行,并且应用程序应该通过 JMX 公开指标。
在 TestMonitoring 应用程序中,application.properties 文件具有以下设置:
endpoints.jmx.enabled=true
spring.jmx.enabled=true
Run Code Online (Sandbox Code Playgroud)
现在如何安装 JMX 导出器作为代理:我已经下载了 jar 并执行:
java -javaagent:./jmx_prometheus_javaagent-0.9.jar=1234:config.yml
Run Code Online (Sandbox Code Playgroud)
在config.yml中->以下hostPort:xx.xxx:30001(作为服务提供的myspring boot应用程序的目标端口)
抛出以下异常:
Sep 22, 2017 4:12:31 PM
io.prometheus.jmx.shaded.io.prometheus.jmx.JmxCollector collect
SEVERE: JMX scrape failed: java.io.IOException: Failed to retrieve RMIServer stub: javax.naming.CommunicationException [R oot exception is java.rmi.ConnectIOException: non-JRMP server at remote endpoint]
at javax.management.remote.rmi.RMIConnector.connect(RMIConnector.java:370)
at javax.management.remote.JMXConnectorFactory.connect(JMXConnectorFactory.java:268)
at io.prometheus.jmx.shaded.io.prometheus.jmx.JmxScraper.doScrape(JmxScraper.java:106)
at io.prometheus.jmx.shaded.io.prometheus.jmx.JmxCollector.collect(JmxCollector.java:401)
at io.prometheus.jmx.shaded.io.prometheus.client.CollectorRegistry.collectorNames(CollectorRegistry.java:99)
at io.prometheus.jmx.shaded.io.prometheus.client.CollectorRegistry.register(CollectorRegistry.java:50)
at io.prometheus.jmx.shaded.io.prometheus.client.Collector.register(Collector.java:128)
at io.prometheus.jmx.shaded.io.prometheus.client.Collector.register(Collector.java:121) …Run Code Online (Sandbox Code Playgroud)