fluent-plugin-kubernetes-metrics 1.2.0 → 1.2.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d045b836c1441d1472ebe35ffed305974a6c6cb438f28bc5d9c9d04cb205808f
4
- data.tar.gz: 6828329da0a99066abccb55b72c64c5d69f4e2b281d8834767eb5ce896ed9514
3
+ metadata.gz: 662a9e611ea57072a0b3da111045e77b618f6f5c42b21a3900c16ae833f3baff
4
+ data.tar.gz: 44272014cff2423cdbdc94279ffbac130e09549bc47f1c210db6687214180f61
5
5
  SHA512:
6
- metadata.gz: 4f0f254bcf6d823a95478780df14aa7ddccbfc07849c36373b86f79c995167625b7872d7a193352ffad4b14c3b92b824f6344aeb4d92a3c6f6edc93bbdeda567
7
- data.tar.gz: bbb2bbdc5b8a6ae48cc8e0e8f159a69c58a715e270d3275e8030878f2dcffb14cb999f1347bf07dc33092db7c05b348b03e14d57e45131fa012253140f4dcd61
6
+ metadata.gz: 1a277adece0c57c5bd77c430791416a346010e4f2d21a268dfc56b4ff3b2aab19d7717be9dc44f30181a2997fc0827adc0cdc53fbdf62210b46c5cbd86f7436c
7
+ data.tar.gz: 022bd5db3693e6d7de874a66bf4d35173d106be8283f592b89d0e0347408fd7cafb2200d4bf1dc5b2e6f15f8c052ef785e1fa9b4ab7ba127e523d90dcafc559d
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- fluent-plugin-kubernetes-metrics (1.2.0)
4
+ fluent-plugin-kubernetes-metrics (1.2.2)
5
5
  fluentd (>= 1.9.1)
6
6
  kubeclient (~> 4.9.3)
7
7
  multi_json (~> 1.14)
@@ -23,7 +23,7 @@ GEM
23
23
  ffi-compiler (1.0.1)
24
24
  ffi (>= 1.0.0)
25
25
  rake
26
- fluentd (1.15.1)
26
+ fluentd (1.15.3)
27
27
  bundler
28
28
  cool.io (>= 1.4.5, < 2.0.0)
29
29
  http_parser.rb (>= 0.5.1, < 0.9.0)
@@ -59,10 +59,10 @@ GEM
59
59
  mime-types (3.4.1)
60
60
  mime-types-data (~> 3.2015)
61
61
  mime-types-data (3.2022.0105)
62
- msgpack (1.5.4)
62
+ msgpack (1.6.0)
63
63
  multi_json (1.15.0)
64
64
  netrc (0.11.0)
65
- oj (3.13.20)
65
+ oj (3.13.23)
66
66
  power_assert (2.0.1)
67
67
  public_suffix (4.0.6)
68
68
  rake (13.0.6)
@@ -86,7 +86,7 @@ GEM
86
86
  power_assert
87
87
  tzinfo (2.0.5)
88
88
  concurrent-ruby (~> 1.0)
89
- tzinfo-data (1.2022.2)
89
+ tzinfo-data (1.2022.6)
90
90
  tzinfo (>= 1.0.0)
91
91
  unf (0.1.4)
92
92
  unf_ext
@@ -110,4 +110,4 @@ DEPENDENCIES
110
110
  webmock (~> 3.5.1)
111
111
 
112
112
  BUNDLED WITH
113
- 2.3.20
113
+ 2.4.9
data/README.md CHANGED
@@ -1,3 +1,7 @@
1
+ # End of Support
2
+
3
+ **Important:** The fluent-plugin-kubernetes-metrics will reach End of Support on January 1, 2024. After that date, this repository will no longer receive updates from Splunk and will no longer be supported by Splunk. Until then, only critical security fixes and bug fixes will be provided.
4
+
1
5
  # Fluentd Plugin for Kubernetes Metrics
2
6
 
3
7
  The [Fluentd](https://fluentd.org/) input plugin collects Kubernetes cluster metrics which are exposed by the [Kubelet API](https://kubernetes.io/docs/admin/kubelet/) and forwards them to fluentd.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.2.0
1
+ 1.2.2
@@ -17,6 +17,7 @@ require 'time'
17
17
  require 'fluent/plugin/input'
18
18
  require 'kubeclient'
19
19
  require 'multi_json'
20
+ require 'resolv'
20
21
 
21
22
  module Fluent
22
23
  module Plugin
@@ -76,6 +77,8 @@ module Fluent
76
77
  def configure(conf)
77
78
  super
78
79
 
80
+ @kubelet_address = "[#{@kubelet_address}]" if @kubelet_address =~ Resolv::IPv6::Regex
81
+
79
82
  if @use_rest_client
80
83
  raise Fluentd::ConfigError, 'node_name is required' if @node_name.nil? || @node_name.empty?
81
84
  else
@@ -136,6 +139,7 @@ module Fluent
136
139
  if @kubernetes_url.nil?
137
140
  # Use Kubernetes default service account if we're in a pod.
138
141
  env_host = ENV['KUBERNETES_SERVICE_HOST']
142
+ env_host = "[#{env_host}]" if env_host =~ Resolv::IPv6::Regex
139
143
  env_port = ENV['KUBERNETES_SERVICE_PORT']
140
144
  if env_host && env_port
141
145
  @kubernetes_url = "https://#{env_host}:#{env_port}/api/"
@@ -109,6 +109,30 @@ class KubernetesMetricsInputTest < Test::Unit::TestCase
109
109
  assert_equal true, d.instance.use_rest_client
110
110
  end
111
111
 
112
+ test 'IPv6 node configuration' do
113
+ IPv6_CONFIG = %(
114
+ type kubernetes_metrics
115
+ node_name generics-aws-node-name
116
+ tag kube.*
117
+ insecure_ssl true
118
+ interval 10s
119
+ use_rest_client true
120
+ use_rest_client_ssl false
121
+ kubelet_port 10_255
122
+ kubelet_address fd55:4d62:e00f::1
123
+ )
124
+ assert_nothing_raised(Fluent::ConfigError) do
125
+ create_driver(IPv6_CONFIG)
126
+ end
127
+
128
+ d = create_driver(IPv6_CONFIG)
129
+ assert_equal '[fd55:4d62:e00f::1]', d.instance.kubelet_address
130
+ assert_equal 'http://[fd55:4d62:e00f::1]:10255/stats/summary', d.instance.instance_variable_get('@kubelet_url')
131
+ assert_equal 'http://[fd55:4d62:e00f::1]:10255/stats', d.instance.instance_variable_get('@kubelet_url_stats')
132
+ assert_equal 'http://[fd55:4d62:e00f::1]:10255/metrics/cadvisor', d.instance.instance_variable_get('@cadvisor_url')
133
+
134
+ end
135
+
112
136
  sub_test_case 'node_unit_tests' do
113
137
  test 'test_emit_cpu_metrics' do
114
138
  assert_not_nil @@hash_map_test.key?('kube.node.cpu.usage')
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fluent-plugin-kubernetes-metrics
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Splunk Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-08-16 00:00:00.000000000 Z
11
+ date: 2023-03-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -180,6 +180,6 @@ signing_key:
180
180
  specification_version: 4
181
181
  summary: A fluentd input plugin that collects kubernetes cluster metrics.
182
182
  test_files:
183
- - test/plugin/test_missing_timestamps.rb
184
183
  - test/plugin/test_in_kubernetes_metrics.rb
184
+ - test/plugin/test_missing_timestamps.rb
185
185
  - test/helper.rb