The content of "K8S Ecological Weekly" mainly includes some recommended weekly information related to the K8S ecology that I have come into contact with. Welcome to subscribe to know the column"k8s ecology"。
Prometheus blackbox_exporter v0.20.0 officially released
Blackbox_exporter in Prometheus We generally use it for black box monitoring, such as some HTTP/HTTPS, DNS, TCP and other interfaces or requests.
A lot of interesting features have been added in this version, let's take a look.
- #835Added health check for gRPC interface, and now gRPC is used more and more. You must know that when a similar function discussion was launched two years ago, the maintainers at that time thought that gRPC support had exceeded the scope of the project's responsibilities, but now it can be seen that blackbox_exporter has basically covered the various protocols we need.
If you use this function, it will generate some metrics for us to monitor and alert.
probe_grpc_healthcheck_response{serving_status="UNKNOWN"}=0
probe_grpc_healthcheck_response{serving_status="SERVING"}=1
probe_grpc_healthcheck_response{serving_status="NOT_SERVING"}=0
probe_grpc_healthcheck_response{serving_status="SERVICE_UNKNOWN"}=0
复制代码
- #823Added
Hostname
parameters , which can be passed in theHost
request header when initiating a request. You can use the following configuration as a reference when configuring tasks:
scrape_configs:
- job_name: blackbox_all
metrics_path: /probe
params:
module: [ http_2xx ] # Look for a HTTP 200 response.
dns_sd_configs:
- names:
- example.com
- prometheus.io
type: A
port: 443
relabel_configs:
- source_labels: [__address__]
target_label: __param_target
replacement: https://$1/ # Make probe URL be like https://1.2.3.4:443/
- source_labels: [__param_target]
target_label: instance
- target_label: __address__
replacement: 127.0.0.1:9115 # The blackbox exporter's real hostname:port.
- source_labels: [__meta_dns_name]
target_label: __param_hostname # Make domain name become 'Host' header for probe requests
- source_labels: [__meta_dns_name]
target_label: vhost # and store it in 'vhost' label
复制代码
For more details, please refer to itsReleaseNote
runc v1.1.1 released
runc is an underlying container runtime. There are many articles about runc in my previous articles, if you are interested, you can read them.
In fact, when runc runs as an underlying container, its release frequency is very low. After all, there are a large number of projects in the cloud native field that rely on runc or import runc as a dependency. Every time runc releases a new version, these projects generally Dependency updates are also required.
This release of v1.1.1 is just a minor version update, mainly for some bugfixes. Let's take a look at what's worth noting:
In previous versions statfs("/sys/fs/cgroup/unified")
, ENOENT
errors other than occurred would cause panic. this time in#3433It has been adjusted in it, it will no longer panic, but will record the log.
Furthermore, through the#3398Fixed checks for content contained in /sys/kernel/cgroup/delegate
files in . Because not all cgroups contain this content.
For more details, please refer to itsReleaseNote
Upstream progress
- # 109074 · Governors / GovernorsIn kubeadm, an
--experimental-initial-corrupt-check
option , which can be used to confirm the consistency of data in etcd members. This feature is expected to be officially available in v3.6 of etcd. In addition, the Release page of etcd is also written. Currently, etcd 3.5.x is not recommended for production environments. If you have not upgraded, you can continue to use 3.4.x. If it has been upgraded, you can increase this parameter by yourself; - # 108032 · Governors / GovernorsThis PR adds
timeZone
a , which is implemented according to KEP 3140. From now on, when you use CronJob in Kubernetes, you can easily set the time zone.
Welcome to subscribe my article public account [MoeLove]