Compare commits
14 Commits
auto-updat
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| a2f4f989e7 | |||
| cacc5ef02b | |||
| f05a1515e6 | |||
| dbb9722840 | |||
| e7e066587f | |||
| cb83a3fa38 | |||
|
|
4b3e1a10d4 | ||
|
|
caf024aaa2 | ||
|
|
f4c1a4b310 | ||
|
|
f6623efab1 | ||
|
|
52cea30ac3 | ||
|
|
67bcf5247e | ||
|
|
e38f18d9a8 | ||
|
|
67bdb8ea29 |
@@ -18,6 +18,7 @@ ArgoCD homelab project
|
|||||||
| **external-secrets** | [](https://ag.hexor.cy/applications/argocd/external-secrets) |
|
| **external-secrets** | [](https://ag.hexor.cy/applications/argocd/external-secrets) |
|
||||||
| **kube-system-custom** | [](https://ag.hexor.cy/applications/argocd/kube-system-custom) |
|
| **kube-system-custom** | [](https://ag.hexor.cy/applications/argocd/kube-system-custom) |
|
||||||
| **kubernetes-dashboard** | [](https://ag.hexor.cy/applications/argocd/kubernetes-dashboard) |
|
| **kubernetes-dashboard** | [](https://ag.hexor.cy/applications/argocd/kubernetes-dashboard) |
|
||||||
|
| **longhorn** | [](https://ag.hexor.cy/applications/argocd/longhorn) |
|
||||||
| **postgresql** | [](https://ag.hexor.cy/applications/argocd/postgresql) |
|
| **postgresql** | [](https://ag.hexor.cy/applications/argocd/postgresql) |
|
||||||
| **prom-stack** | [](https://ag.hexor.cy/applications/argocd/prom-stack) |
|
| **prom-stack** | [](https://ag.hexor.cy/applications/argocd/prom-stack) |
|
||||||
| **system-upgrade** | [](https://ag.hexor.cy/applications/argocd/system-upgrade) |
|
| **system-upgrade** | [](https://ag.hexor.cy/applications/argocd/system-upgrade) |
|
||||||
|
|||||||
@@ -85,11 +85,11 @@ spec:
|
|||||||
mountPath: /home/node/.n8n
|
mountPath: /home/node/.n8n
|
||||||
resources:
|
resources:
|
||||||
requests:
|
requests:
|
||||||
cpu: 100m
|
cpu: 2000m
|
||||||
memory: 128Mi
|
|
||||||
limits:
|
|
||||||
cpu: 512m
|
|
||||||
memory: 512Mi
|
memory: 512Mi
|
||||||
|
limits:
|
||||||
|
cpu: 4000m
|
||||||
|
memory: 2048Gi
|
||||||
livenessProbe:
|
livenessProbe:
|
||||||
httpGet:
|
httpGet:
|
||||||
path: /healthz
|
path: /healthz
|
||||||
@@ -7,7 +7,7 @@ metadata:
|
|||||||
app: n8n
|
app: n8n
|
||||||
component: worker
|
component: worker
|
||||||
spec:
|
spec:
|
||||||
replicas: 1
|
replicas: 2
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
app: n8n
|
app: n8n
|
||||||
@@ -26,6 +26,8 @@ spec:
|
|||||||
env:
|
env:
|
||||||
- name: HOME
|
- name: HOME
|
||||||
value: "/home/node"
|
value: "/home/node"
|
||||||
|
- name: NODES_EXCLUDE
|
||||||
|
value: "[]"
|
||||||
- name: N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS
|
- name: N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS
|
||||||
value: "true"
|
value: "true"
|
||||||
- name: N8N_RUNNERS_ENABLED
|
- name: N8N_RUNNERS_ENABLED
|
||||||
@@ -77,11 +79,11 @@ spec:
|
|||||||
mountPath: /home/node/.n8n
|
mountPath: /home/node/.n8n
|
||||||
resources:
|
resources:
|
||||||
requests:
|
requests:
|
||||||
cpu: 100m
|
cpu: 2000m
|
||||||
memory: 256Mi
|
memory: 512Mi
|
||||||
limits:
|
limits:
|
||||||
cpu: 1000m
|
cpu: 4000m
|
||||||
memory: 1Gi
|
memory: 2048Gi
|
||||||
livenessProbe:
|
livenessProbe:
|
||||||
exec:
|
exec:
|
||||||
command:
|
command:
|
||||||
@@ -1,19 +1,18 @@
|
|||||||
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
|
||||||
- plain/
|
- storage.yaml
|
||||||
|
- rbac.yaml
|
||||||
|
- redis-deployment.yaml
|
||||||
|
- redis-service.yaml
|
||||||
|
- deployment-main.yaml
|
||||||
|
- deployment-worker.yaml
|
||||||
|
- service.yaml
|
||||||
|
- ingress.yaml
|
||||||
|
|
||||||
helmCharts:
|
helmCharts:
|
||||||
# - name: n8n
|
|
||||||
# repo: https://community-charts.github.io/helm-charts
|
|
||||||
# version: 1.16.28
|
|
||||||
# releaseName: n8n
|
|
||||||
# namespace: n8n
|
|
||||||
# valuesFile: values-n8n.yaml
|
|
||||||
# includeCRDs: true
|
|
||||||
- name: yacy
|
- name: yacy
|
||||||
repo: https://gt.hexor.cy/api/packages/ab/helm
|
repo: https://gt.hexor.cy/api/packages/ab/helm
|
||||||
version: 0.1.2
|
version: 0.1.2
|
||||||
@@ -21,3 +20,6 @@ helmCharts:
|
|||||||
namespace: n8n
|
namespace: n8n
|
||||||
valuesFile: values-yacy.yaml
|
valuesFile: values-yacy.yaml
|
||||||
includeCRDs: true
|
includeCRDs: true
|
||||||
|
|
||||||
|
commonLabels:
|
||||||
|
app.kubernetes.io/name: n8n
|
||||||
|
|||||||
@@ -1,16 +0,0 @@
|
|||||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
|
||||||
kind: Kustomization
|
|
||||||
|
|
||||||
resources:
|
|
||||||
- storage.yaml
|
|
||||||
- rbac.yaml
|
|
||||||
- redis-deployment.yaml
|
|
||||||
- redis-service.yaml
|
|
||||||
- deployment-main.yaml
|
|
||||||
- deployment-worker.yaml
|
|
||||||
- service.yaml
|
|
||||||
- ingress.yaml
|
|
||||||
|
|
||||||
commonLabels:
|
|
||||||
app.kubernetes.io/name: n8n
|
|
||||||
app.kubernetes.io/instance: n8n-plain
|
|
||||||
@@ -1,37 +0,0 @@
|
|||||||
---
|
|
||||||
apiVersion: v1
|
|
||||||
kind: ServiceAccount
|
|
||||||
metadata:
|
|
||||||
name: n8n
|
|
||||||
---
|
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
|
||||||
kind: ClusterRole
|
|
||||||
metadata:
|
|
||||||
name: n8n-clusterrole
|
|
||||||
rules:
|
|
||||||
- apiGroups:
|
|
||||||
- ""
|
|
||||||
resources:
|
|
||||||
- pods
|
|
||||||
- jobs
|
|
||||||
- cronjobs
|
|
||||||
- deployments
|
|
||||||
- statefulsets
|
|
||||||
verbs:
|
|
||||||
- get
|
|
||||||
- list
|
|
||||||
- watch
|
|
||||||
- create
|
|
||||||
---
|
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
|
||||||
kind: ClusterRoleBinding
|
|
||||||
metadata:
|
|
||||||
name: n8n-clusterrolebinding
|
|
||||||
roleRef:
|
|
||||||
apiGroup: rbac.authorization.k8s.io
|
|
||||||
kind: ClusterRole
|
|
||||||
name: n8n-clusterrole
|
|
||||||
subjects:
|
|
||||||
- kind: ServiceAccount
|
|
||||||
name: n8n
|
|
||||||
namespace: n8n
|
|
||||||
45
k8s/apps/n8n/rbac.yaml
Normal file
45
k8s/apps/n8n/rbac.yaml
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: ServiceAccount
|
||||||
|
metadata:
|
||||||
|
name: n8n
|
||||||
|
---
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRole
|
||||||
|
metadata:
|
||||||
|
name: n8n-clusterrole
|
||||||
|
rules:
|
||||||
|
# Core API group ("")
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["*"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
|
|
||||||
|
# Common built-in API groups
|
||||||
|
- apiGroups: ["apps", "batch", "autoscaling", "extensions", "policy"]
|
||||||
|
resources: ["*"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
|
|
||||||
|
- apiGroups: ["networking.k8s.io", "rbac.authorization.k8s.io", "apiextensions.k8s.io"]
|
||||||
|
resources: ["*"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
|
|
||||||
|
- apiGroups: ["coordination.k8s.io", "discovery.k8s.io", "events.k8s.io"]
|
||||||
|
resources: ["*"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
|
|
||||||
|
- apiGroups: ["storage.k8s.io", "admissionregistration.k8s.io", "authentication.k8s.io", "authorization.k8s.io"]
|
||||||
|
resources: ["*"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
|
---
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRoleBinding
|
||||||
|
metadata:
|
||||||
|
name: n8n-clusterrolebinding
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: ClusterRole
|
||||||
|
name: n8n-clusterrole
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: n8n
|
||||||
|
namespace: n8n
|
||||||
@@ -6,7 +6,7 @@ metadata:
|
|||||||
spec:
|
spec:
|
||||||
accessModes:
|
accessModes:
|
||||||
- ReadWriteMany
|
- ReadWriteMany
|
||||||
storageClassName: nfs-csi
|
storageClassName: longhorn
|
||||||
resources:
|
resources:
|
||||||
requests:
|
requests:
|
||||||
storage: 10Gi
|
storage: 10Gi
|
||||||
24
k8s/apps/n8n/values-yacy.yaml
Normal file
24
k8s/apps/n8n/values-yacy.yaml
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
nodeSelector:
|
||||||
|
kubernetes.io/hostname: master.tail2fe2d.ts.net
|
||||||
|
|
||||||
|
resources:
|
||||||
|
limits:
|
||||||
|
memory: 2Gi
|
||||||
|
requests:
|
||||||
|
memory: 1Gi
|
||||||
|
|
||||||
|
persistence:
|
||||||
|
enabled: true
|
||||||
|
size: 10Gi
|
||||||
|
|
||||||
|
yacy:
|
||||||
|
network:
|
||||||
|
mode: "intranet"
|
||||||
|
config:
|
||||||
|
network.unit.bootstrap.seedlist: ""
|
||||||
|
network.unit.remotecrawl: "false"
|
||||||
|
network.unit.dhtredundancy.junior: "1"
|
||||||
|
network.unit.dhtredundancy.senior: "1"
|
||||||
|
index.receive.allow: "false"
|
||||||
|
index.distribute.allow: "false"
|
||||||
|
crawl.response.timeout: "10000"
|
||||||
21
k8s/core/longhorn/app.yaml
Normal file
21
k8s/core/longhorn/app.yaml
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
apiVersion: argoproj.io/v1alpha1
|
||||||
|
kind: Application
|
||||||
|
metadata:
|
||||||
|
name: longhorn
|
||||||
|
namespace: argocd
|
||||||
|
spec:
|
||||||
|
project: core
|
||||||
|
destination:
|
||||||
|
namespace: longhorn
|
||||||
|
server: https://kubernetes.default.svc
|
||||||
|
source:
|
||||||
|
repoURL: ssh://git@gt.hexor.cy:30022/ab/homelab.git
|
||||||
|
targetRevision: HEAD
|
||||||
|
path: k8s/core/longhorn
|
||||||
|
syncPolicy:
|
||||||
|
automated:
|
||||||
|
selfHeal: true
|
||||||
|
prune: true
|
||||||
|
syncOptions:
|
||||||
|
- CreateNamespace=true
|
||||||
|
|
||||||
15
k8s/core/longhorn/kustomization.yaml
Normal file
15
k8s/core/longhorn/kustomization.yaml
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||||
|
kind: Kustomization
|
||||||
|
|
||||||
|
#resources:
|
||||||
|
# - app.yaml
|
||||||
|
|
||||||
|
helmCharts:
|
||||||
|
- name: longhorn
|
||||||
|
repo: https://charts.longhorn.io
|
||||||
|
version: 1.11.0
|
||||||
|
releaseName: longhorn
|
||||||
|
namespace: longhorn
|
||||||
|
valuesFile: values.yaml
|
||||||
|
includeCRDs: true
|
||||||
|
|
||||||
4
k8s/core/longhorn/values.yaml
Normal file
4
k8s/core/longhorn/values.yaml
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
longhornUI:
|
||||||
|
replicas: 1
|
||||||
|
persistence:
|
||||||
|
reclaimPolicy: "Retain"
|
||||||
Reference in New Issue
Block a user