mirror of
https://github.com/prowler-cloud/prowler.git
synced 2025-12-19 05:17:47 +00:00
fix(k8s): improve kubernetes deployment (#3713)
This commit is contained in:
92
kubernetes/job.yaml
Normal file
92
kubernetes/job.yaml
Normal file
@@ -0,0 +1,92 @@
|
||||
apiVersion: batch/v1
|
||||
kind: Job
|
||||
metadata:
|
||||
name: prowler
|
||||
spec:
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: prowler
|
||||
spec:
|
||||
containers:
|
||||
- name: prowler
|
||||
image: toniblyx/prowler:stable
|
||||
command: ["prowler"]
|
||||
args: ["kubernetes", "-z"]
|
||||
imagePullPolicy: Always
|
||||
volumeMounts:
|
||||
- name: var-lib-cni
|
||||
mountPath: /var/lib/cni
|
||||
readOnly: true
|
||||
- mountPath: /var/lib/etcd
|
||||
name: var-lib-etcd
|
||||
readOnly: true
|
||||
- mountPath: /var/lib/kubelet
|
||||
name: var-lib-kubelet
|
||||
readOnly: true
|
||||
- mountPath: /var/lib/kube-scheduler
|
||||
name: var-lib-kube-scheduler
|
||||
readOnly: true
|
||||
- mountPath: /var/lib/kube-controller-manager
|
||||
name: var-lib-kube-controller-manager
|
||||
readOnly: true
|
||||
- mountPath: /etc/systemd
|
||||
name: etc-systemd
|
||||
readOnly: true
|
||||
- mountPath: /lib/systemd/
|
||||
name: lib-systemd
|
||||
readOnly: true
|
||||
- mountPath: /srv/kubernetes/
|
||||
name: srv-kubernetes
|
||||
readOnly: true
|
||||
- mountPath: /etc/kubernetes
|
||||
name: etc-kubernetes
|
||||
readOnly: true
|
||||
- mountPath: /usr/local/mount-from-host/bin
|
||||
name: usr-bin
|
||||
readOnly: true
|
||||
- mountPath: /etc/cni/net.d/
|
||||
name: etc-cni-netd
|
||||
readOnly: true
|
||||
- mountPath: /opt/cni/bin/
|
||||
name: opt-cni-bin
|
||||
readOnly: true
|
||||
hostPID: true
|
||||
restartPolicy: Never
|
||||
volumes:
|
||||
- name: var-lib-cni
|
||||
hostPath:
|
||||
path: /var/lib/cni
|
||||
- hostPath:
|
||||
path: /var/lib/etcd
|
||||
name: var-lib-etcd
|
||||
- hostPath:
|
||||
path: /var/lib/kubelet
|
||||
name: var-lib-kubelet
|
||||
- hostPath:
|
||||
path: /var/lib/kube-scheduler
|
||||
name: var-lib-kube-scheduler
|
||||
- hostPath:
|
||||
path: /var/lib/kube-controller-manager
|
||||
name: var-lib-kube-controller-manager
|
||||
- hostPath:
|
||||
path: /etc/systemd
|
||||
name: etc-systemd
|
||||
- hostPath:
|
||||
path: /lib/systemd
|
||||
name: lib-systemd
|
||||
- hostPath:
|
||||
path: /srv/kubernetes
|
||||
name: srv-kubernetes
|
||||
- hostPath:
|
||||
path: /etc/kubernetes
|
||||
name: etc-kubernetes
|
||||
- hostPath:
|
||||
path: /usr/bin
|
||||
name: usr-bin
|
||||
- hostPath:
|
||||
path: /etc/cni/net.d/
|
||||
name: etc-cni-netd
|
||||
- hostPath:
|
||||
path: /opt/cni/bin/
|
||||
name: opt-cni-bin
|
||||
11
kubernetes/prowler-role.yaml
Normal file
11
kubernetes/prowler-role.yaml
Normal file
@@ -0,0 +1,11 @@
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRole
|
||||
metadata:
|
||||
name: prowler-read-cluster
|
||||
rules:
|
||||
- apiGroups: [""]
|
||||
resources: ["pods", "configmaps", "nodes", "namespaces"]
|
||||
verbs: ["get", "list", "watch"]
|
||||
- apiGroups: ["rbac.authorization.k8s.io"]
|
||||
resources: ["clusterrolebindings", "rolebindings", "clusterroles", "roles"]
|
||||
verbs: ["get", "list", "watch"]
|
||||
12
kubernetes/prowler-rolebinding.yaml
Normal file
12
kubernetes/prowler-rolebinding.yaml
Normal file
@@ -0,0 +1,12 @@
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRoleBinding
|
||||
metadata:
|
||||
name: prowler-read-cluster-default-sa
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
name: prowler-read-cluster
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: default
|
||||
namespace: default
|
||||
Reference in New Issue
Block a user