Compare commits

..

9 Commits

Author SHA1 Message Date
Ultradesu
a7aaa3e4a5 Added RBAC
All checks were successful
Update Kubernetes Services Wiki / Generate and Update K8s Wiki (push) Successful in 10s
Check with kubeconform / lint (push) Successful in 7s
Auto-update README / Generate README and Create MR (push) Successful in 12s
2026-02-05 12:15:47 +02:00
Ultradesu
5f882c7beb fixing permissions
All checks were successful
Update Kubernetes Services Wiki / Generate and Update K8s Wiki (push) Successful in 7s
Check with kubeconform / lint (push) Successful in 5s
Auto-update README / Generate README and Create MR (push) Successful in 5s
2026-02-04 17:57:46 +02:00
Ultradesu
72cf9902d4 fixing permissions
All checks were successful
Update Kubernetes Services Wiki / Generate and Update K8s Wiki (push) Successful in 7s
Check with kubeconform / lint (push) Successful in 6s
Auto-update README / Generate README and Create MR (push) Successful in 5s
2026-02-04 17:55:32 +02:00
Ultradesu
a4b2eb8ab9 fixing permissions
All checks were successful
Update Kubernetes Services Wiki / Generate and Update K8s Wiki (push) Successful in 8s
Check with kubeconform / lint (push) Successful in 6s
Auto-update README / Generate README and Create MR (push) Successful in 6s
2026-02-04 17:31:32 +02:00
Ultradesu
80b7b0a7f7 Drop init cont fixing permissions
All checks were successful
Update Kubernetes Services Wiki / Generate and Update K8s Wiki (push) Successful in 8s
Check with kubeconform / lint (push) Successful in 6s
Auto-update README / Generate README and Create MR (push) Successful in 12s
2026-02-04 17:25:41 +02:00
Ultradesu
ecd475e83d Added init cont fixing permissions
All checks were successful
Update Kubernetes Services Wiki / Generate and Update K8s Wiki (push) Successful in 9s
Check with kubeconform / lint (push) Successful in 7s
Auto-update README / Generate README and Create MR (push) Successful in 6s
2026-02-04 17:10:30 +02:00
ab
69aed3fe23 Update k8s/core/kube-system-custom/nfs-storage.yaml
All checks were successful
Update Kubernetes Services Wiki / Generate and Update K8s Wiki (push) Successful in 7s
Check with kubeconform / lint (push) Successful in 5s
Auto-update README / Generate README and Create MR (push) Successful in 6s
2026-02-04 15:07:27 +00:00
Ultradesu
d74479c935 Fixed SC
All checks were successful
Update Kubernetes Services Wiki / Generate and Update K8s Wiki (push) Successful in 8s
Check with kubeconform / lint (push) Successful in 6s
Auto-update README / Generate README and Create MR (push) Successful in 5s
2026-02-04 17:04:46 +02:00
Ultradesu
e5ad65b63b Fix n8n sec context
All checks were successful
Update Kubernetes Services Wiki / Generate and Update K8s Wiki (push) Successful in 7s
Check with kubeconform / lint (push) Successful in 5s
Auto-update README / Generate README and Create MR (push) Successful in 5s
2026-02-04 16:46:14 +02:00
5 changed files with 113 additions and 6 deletions

View File

@@ -44,7 +44,6 @@ ArgoCD homelab project
| **jellyfin** | [![jellyfin](https://ag.hexor.cy/api/badge?name=jellyfin&revision=true)](https://ag.hexor.cy/applications/argocd/jellyfin) | | **jellyfin** | [![jellyfin](https://ag.hexor.cy/api/badge?name=jellyfin&revision=true)](https://ag.hexor.cy/applications/argocd/jellyfin) |
| **k8s-secrets** | [![k8s-secrets](https://ag.hexor.cy/api/badge?name=k8s-secrets&revision=true)](https://ag.hexor.cy/applications/argocd/k8s-secrets) | | **k8s-secrets** | [![k8s-secrets](https://ag.hexor.cy/api/badge?name=k8s-secrets&revision=true)](https://ag.hexor.cy/applications/argocd/k8s-secrets) |
| **khm** | [![khm](https://ag.hexor.cy/api/badge?name=khm&revision=true)](https://ag.hexor.cy/applications/argocd/khm) | | **khm** | [![khm](https://ag.hexor.cy/api/badge?name=khm&revision=true)](https://ag.hexor.cy/applications/argocd/khm) |
| **n8n** | [![n8n](https://ag.hexor.cy/api/badge?name=n8n&revision=true)](https://ag.hexor.cy/applications/argocd/n8n) |
| **ollama** | [![ollama](https://ag.hexor.cy/api/badge?name=ollama&revision=true)](https://ag.hexor.cy/applications/argocd/ollama) | | **ollama** | [![ollama](https://ag.hexor.cy/api/badge?name=ollama&revision=true)](https://ag.hexor.cy/applications/argocd/ollama) |
| **paperless** | [![paperless](https://ag.hexor.cy/api/badge?name=paperless&revision=true)](https://ag.hexor.cy/applications/argocd/paperless) | | **paperless** | [![paperless](https://ag.hexor.cy/api/badge?name=paperless&revision=true)](https://ag.hexor.cy/applications/argocd/paperless) |
| **pasarguard** | [![pasarguard](https://ag.hexor.cy/api/badge?name=pasarguard&revision=true)](https://ag.hexor.cy/applications/argocd/pasarguard) | | **pasarguard** | [![pasarguard](https://ag.hexor.cy/api/badge?name=pasarguard&revision=true)](https://ag.hexor.cy/applications/argocd/pasarguard) |

View File

@@ -1,9 +1,11 @@
apiVersion: kustomize.config.k8s.io/v1beta1 apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization kind: Kustomization
# Updated: Fixed n8n volume permissions issue
resources: resources:
- external-secrets.yaml - external-secrets.yaml
- storage.yaml - storage.yaml
- rbac.yaml
helmCharts: helmCharts:
- name: n8n - name: n8n

71
k8s/apps/n8n/rbac.yaml Normal file
View File

@@ -0,0 +1,71 @@
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: n8n-readonly
rules:
- apiGroups: [""]
resources:
- pods
- services
- endpoints
- persistentvolumeclaims
- persistentvolumes
- configmaps
- secrets
- nodes
- namespaces
- events
verbs: ["get", "list", "watch"]
- apiGroups: ["apps"]
resources:
- deployments
- replicasets
- statefulsets
- daemonsets
verbs: ["get", "list", "watch"]
- apiGroups: ["networking.k8s.io"]
resources:
- ingresses
- networkpolicies
verbs: ["get", "list", "watch"]
- apiGroups: ["extensions"]
resources:
- ingresses
verbs: ["get", "list", "watch"]
- apiGroups: ["autoscaling"]
resources:
- horizontalpodautoscalers
verbs: ["get", "list", "watch"]
- apiGroups: ["batch"]
resources:
- jobs
- cronjobs
verbs: ["get", "list", "watch"]
- apiGroups: ["metrics.k8s.io"]
resources:
- pods
- nodes
verbs: ["get", "list"]
- apiGroups: ["storage.k8s.io"]
resources:
- storageclasses
verbs: ["get", "list", "watch"]
- apiGroups: ["policy"]
resources:
- poddisruptionbudgets
verbs: ["get", "list", "watch"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: n8n-readonly
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: n8n-readonly
subjects:
- kind: ServiceAccount
name: n8n-readonly
namespace: n8n

View File

@@ -16,9 +16,32 @@ main:
enabled: true enabled: true
existingClaim: n8n-home existingClaim: n8n-home
mountPath: /home/node/.n8n mountPath: /home/node/.n8n
podSecurityContext: podSecurityContext:
fsGroup: 1000 runAsUser: 1000
fsGroupChangePolicy: "OnRootMismatch" runAsGroup: 1000
runAsNonRoot: true
# Configure health probes for slow startup
main:
livenessProbe:
httpGet:
path: /healthz
port: http
initialDelaySeconds: 120 # Дать время на запуск
periodSeconds: 30
timeoutSeconds: 10
failureThreshold: 6
readinessProbe:
httpGet:
path: /healthz/readiness
port: http
initialDelaySeconds: 60
periodSeconds: 10
timeoutSeconds: 5
failureThreshold: 10
worker: worker:
mode: regular mode: regular
@@ -31,6 +54,12 @@ redis:
existingEncryptionKeySecret: credentials existingEncryptionKeySecret: credentials
serviceAccount:
create: true
automount: true
annotations: {}
name: "n8n-readonly"
externalPostgresql: externalPostgresql:
existingSecret: credentials existingSecret: credentials
host: "psql.psql.svc" host: "psql.psql.svc"

View File

@@ -10,5 +10,11 @@ parameters:
reclaimPolicy: Retain reclaimPolicy: Retain
volumeBindingMode: Immediate volumeBindingMode: Immediate
mountOptions: mountOptions:
- vers=4 - nfsvers=4.1
- hard - rsize=1048576
- wsize=1048576
- timeo=14
- intr
- bg
- soft
- noatime