diff --git a/plugins/filter_kubernetes/kube_conf.c b/plugins/filter_kubernetes/kube_conf.c index 79103577a32..eb409fcee54 100644 --- a/plugins/filter_kubernetes/kube_conf.c +++ b/plugins/filter_kubernetes/kube_conf.c @@ -90,7 +90,7 @@ struct flb_kube *flb_kube_conf_create(struct flb_filter_instance *ins, ctx->api_https = FLB_FALSE; } else if (ctx->use_kubelet) { - ctx->api_host = flb_strdup(FLB_KUBELET_HOST); + ctx->api_host = flb_strdup(ctx->kubelet_host); ctx->api_port = ctx->kubelet_port; ctx->api_https = FLB_TRUE; diff --git a/plugins/filter_kubernetes/kube_conf.h b/plugins/filter_kubernetes/kube_conf.h index a986130967e..576e533d892 100644 --- a/plugins/filter_kubernetes/kube_conf.h +++ b/plugins/filter_kubernetes/kube_conf.h @@ -54,9 +54,6 @@ #define FLB_API_PORT 443 #define FLB_API_TLS FLB_TRUE -/* Kubelet info */ -#define FLB_KUBELET_HOST "127.0.0.1" - /* * Default expected Kubernetes tag prefix, this is used mostly when source * data comes from in_tail with custom tags like: kube.service.* @@ -155,6 +152,7 @@ struct flb_kube { int use_tag_for_meta; int use_kubelet; + char *kubelet_host; int kubelet_port; int kube_meta_cache_ttl; diff --git a/plugins/filter_kubernetes/kubernetes.c b/plugins/filter_kubernetes/kubernetes.c index 5cd5b792532..8136bf1d027 100644 --- a/plugins/filter_kubernetes/kubernetes.c +++ b/plugins/filter_kubernetes/kubernetes.c @@ -845,6 +845,15 @@ static struct flb_config_map config_map[] = { 0, FLB_TRUE, offsetof(struct flb_kube, use_kubelet), "use kubelet to get metadata instead of kube-server" }, + /* + * The kubelet host for /pods endpoint, default is 127.0.0.1 + * Will only check when "use_kubelet" config is set to true + */ + { + FLB_CONFIG_MAP_STR, "kubelet_host", "127.0.0.1", + 0, FLB_TRUE, offsetof(struct flb_kube, kubelet_host), + "kubelet host to connect with when using kubelet" + }, /* * The kubelet port for /pods endpoint, default is 10250 * Will only check when "use_kubelet" config is set to true