diff --git a/jsonnet/kube-prometheus/components/blackbox-exporter.libsonnet b/jsonnet/kube-prometheus/components/blackbox-exporter.libsonnet index 0c8377c6..66077c7b 100644 --- a/jsonnet/kube-prometheus/components/blackbox-exporter.libsonnet +++ b/jsonnet/kube-prometheus/components/blackbox-exporter.libsonnet @@ -246,6 +246,8 @@ function(params) { podSelector: { matchLabels: bb._config.selectorLabels, }, + policyTypes: ['Egress', 'Ingress'], + egress: [{}], ingress: [{ from: [{ podSelector: { diff --git a/jsonnet/kube-prometheus/components/kube-state-metrics.libsonnet b/jsonnet/kube-prometheus/components/kube-state-metrics.libsonnet index f72ce43b..414b990b 100644 --- a/jsonnet/kube-prometheus/components/kube-state-metrics.libsonnet +++ b/jsonnet/kube-prometheus/components/kube-state-metrics.libsonnet @@ -126,6 +126,8 @@ function(params) (import 'github.com/kubernetes/kube-state-metrics/jsonnet/kube- podSelector: { matchLabels: ksm._config.selectorLabels, }, + policyTypes: ['Egress', 'Ingress'], + egress: [{}], ingress: [{ from: [{ podSelector: { diff --git a/jsonnet/kube-prometheus/components/node-exporter.libsonnet b/jsonnet/kube-prometheus/components/node-exporter.libsonnet index 4b6ba1cc..9353d726 100644 --- a/jsonnet/kube-prometheus/components/node-exporter.libsonnet +++ b/jsonnet/kube-prometheus/components/node-exporter.libsonnet @@ -167,6 +167,8 @@ function(params) { podSelector: { matchLabels: ne._config.selectorLabels, }, + policyTypes: ['Egress', 'Ingress'], + egress: [{}], ingress: [{ from: [{ podSelector: { diff --git a/jsonnet/kube-prometheus/components/prometheus-adapter.libsonnet b/jsonnet/kube-prometheus/components/prometheus-adapter.libsonnet index ff031870..19d644f3 100644 --- a/jsonnet/kube-prometheus/components/prometheus-adapter.libsonnet +++ b/jsonnet/kube-prometheus/components/prometheus-adapter.libsonnet @@ -214,6 +214,8 @@ function(params) { podSelector: { matchLabels: pa._config.selectorLabels, }, + policyTypes: ['Egress', 'Ingress'], + egress: [{}], ingress: [{ from: [{ podSelector: { diff --git a/kustomization.yaml b/kustomization.yaml index 6dfa024b..3d26a2ef 100644 --- a/kustomization.yaml +++ b/kustomization.yaml @@ -12,6 +12,7 @@ resources: - ./manifests/blackboxExporter-clusterRoleBinding.yaml - ./manifests/blackboxExporter-configuration.yaml - ./manifests/blackboxExporter-deployment.yaml +- ./manifests/blackboxExporter-networkPolicy.yaml - ./manifests/blackboxExporter-service.yaml - ./manifests/blackboxExporter-serviceAccount.yaml - ./manifests/blackboxExporter-serviceMonitor.yaml @@ -27,6 +28,7 @@ resources: - ./manifests/kubeStateMetrics-clusterRole.yaml - ./manifests/kubeStateMetrics-clusterRoleBinding.yaml - ./manifests/kubeStateMetrics-deployment.yaml +- ./manifests/kubeStateMetrics-networkPolicy.yaml - ./manifests/kubeStateMetrics-prometheusRule.yaml - ./manifests/kubeStateMetrics-service.yaml - ./manifests/kubeStateMetrics-serviceAccount.yaml @@ -40,6 +42,7 @@ resources: - ./manifests/nodeExporter-clusterRole.yaml - ./manifests/nodeExporter-clusterRoleBinding.yaml - ./manifests/nodeExporter-daemonset.yaml +- ./manifests/nodeExporter-networkPolicy.yaml - ./manifests/nodeExporter-prometheusRule.yaml - ./manifests/nodeExporter-service.yaml - ./manifests/nodeExporter-serviceAccount.yaml @@ -64,6 +67,7 @@ resources: - ./manifests/prometheusAdapter-clusterRoleServerResources.yaml - ./manifests/prometheusAdapter-configMap.yaml - ./manifests/prometheusAdapter-deployment.yaml +- ./manifests/prometheusAdapter-networkPolicy.yaml - ./manifests/prometheusAdapter-podDisruptionBudget.yaml - ./manifests/prometheusAdapter-roleBindingAuthReader.yaml - ./manifests/prometheusAdapter-service.yaml diff --git a/manifests/blackboxExporter-networkPolicy.yaml b/manifests/blackboxExporter-networkPolicy.yaml new file mode 100644 index 00000000..8a6873aa --- /dev/null +++ b/manifests/blackboxExporter-networkPolicy.yaml @@ -0,0 +1,31 @@ +apiVersion: networking.k8s.io/v1 +kind: NetworkPolicy +metadata: + labels: + app.kubernetes.io/component: exporter + app.kubernetes.io/name: blackbox-exporter + app.kubernetes.io/part-of: kube-prometheus + app.kubernetes.io/version: 0.19.0 + name: blackbox-exporter + namespace: monitoring +spec: + egress: + - {} + ingress: + - from: + - podSelector: + matchLabels: + app.kubernetes.io/name: prometheus + ports: + - port: 9115 + protocol: TCP + - port: 19115 + protocol: TCP + podSelector: + matchLabels: + app.kubernetes.io/component: exporter + app.kubernetes.io/name: blackbox-exporter + app.kubernetes.io/part-of: kube-prometheus + policyTypes: + - Egress + - Ingress diff --git a/manifests/kubeStateMetrics-networkPolicy.yaml b/manifests/kubeStateMetrics-networkPolicy.yaml new file mode 100644 index 00000000..de898944 --- /dev/null +++ b/manifests/kubeStateMetrics-networkPolicy.yaml @@ -0,0 +1,31 @@ +apiVersion: networking.k8s.io/v1 +kind: NetworkPolicy +metadata: + labels: + app.kubernetes.io/component: exporter + app.kubernetes.io/name: kube-state-metrics + app.kubernetes.io/part-of: kube-prometheus + app.kubernetes.io/version: 2.2.4 + name: kube-state-metrics + namespace: monitoring +spec: + egress: + - {} + ingress: + - from: + - podSelector: + matchLabels: + app.kubernetes.io/name: prometheus + ports: + - port: 8443 + protocol: TCP + - port: 9443 + protocol: TCP + podSelector: + matchLabels: + app.kubernetes.io/component: exporter + app.kubernetes.io/name: kube-state-metrics + app.kubernetes.io/part-of: kube-prometheus + policyTypes: + - Egress + - Ingress diff --git a/manifests/nodeExporter-networkPolicy.yaml b/manifests/nodeExporter-networkPolicy.yaml new file mode 100644 index 00000000..ffa0d43f --- /dev/null +++ b/manifests/nodeExporter-networkPolicy.yaml @@ -0,0 +1,29 @@ +apiVersion: networking.k8s.io/v1 +kind: NetworkPolicy +metadata: + labels: + app.kubernetes.io/component: exporter + app.kubernetes.io/name: node-exporter + app.kubernetes.io/part-of: kube-prometheus + app.kubernetes.io/version: 1.3.0 + name: node-exporter + namespace: monitoring +spec: + egress: + - {} + ingress: + - from: + - podSelector: + matchLabels: + app.kubernetes.io/name: prometheus + ports: + - port: 9100 + protocol: TCP + podSelector: + matchLabels: + app.kubernetes.io/component: exporter + app.kubernetes.io/name: node-exporter + app.kubernetes.io/part-of: kube-prometheus + policyTypes: + - Egress + - Ingress diff --git a/manifests/prometheusAdapter-networkPolicy.yaml b/manifests/prometheusAdapter-networkPolicy.yaml new file mode 100644 index 00000000..c66673d4 --- /dev/null +++ b/manifests/prometheusAdapter-networkPolicy.yaml @@ -0,0 +1,29 @@ +apiVersion: networking.k8s.io/v1 +kind: NetworkPolicy +metadata: + labels: + app.kubernetes.io/component: metrics-adapter + app.kubernetes.io/name: prometheus-adapter + app.kubernetes.io/part-of: kube-prometheus + app.kubernetes.io/version: 0.9.1 + name: prometheus-adapter + namespace: monitoring +spec: + egress: + - {} + ingress: + - from: + - podSelector: + matchLabels: + app.kubernetes.io/name: prometheus + ports: + - port: 443 + protocol: TCP + podSelector: + matchLabels: + app.kubernetes.io/component: metrics-adapter + app.kubernetes.io/name: prometheus-adapter + app.kubernetes.io/part-of: kube-prometheus + policyTypes: + - Egress + - Ingress