Last active
March 4, 2025 10:48
-
-
Save jesuslpm/67c613f23d108560f2757b4867dfadc6 to your computer and use it in GitHub Desktop.
yaml manifest to deploy RavenDB 5.4 to AKS
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| --- | |
| apiVersion: storage.k8s.io/v1 | |
| kind: StorageClass | |
| metadata: | |
| name: managed-premium-zrs | |
| provisioner: disk.csi.azure.com | |
| parameters: | |
| skuName: Premium_ZRS | |
| location: northeurope | |
| reclaimPolicy: Retain | |
| volumeBindingMode: WaitForFirstConsumer | |
| allowVolumeExpansion: true | |
| --- | |
| apiVersion: v1 | |
| kind: ConfigMap | |
| metadata: | |
| name: ravendb-settings | |
| namespace: default | |
| labels: | |
| app: ravendb | |
| data: | |
| ravendb-0: "{\r\n \"Setup.Mode\": \"None\",\r\n \"DataDir\": \"/data/RavenData\",\r\n | |
| \ \"Security.Certificate.Path\": \"/ssl/ssl\",\r\n \"ServerUrl\": \"https://0.0.0.0\",\r\n | |
| \ \"ServerUrl.Tcp\": \"tcp://0.0.0.0:38888\",\r\n \"PublicServerUrl\": \"https://raven.example.com\",\r\n | |
| \ \"PublicServerUrl.Tcp\": \"tcp://tcp-raven.example.com:443\",\r\n | |
| \ \"License.Path\": \"/license/license.json\",\r\n \"License.Eula.Accepted\": \"true\"}" | |
| --- | |
| apiVersion: apps/v1 | |
| kind: StatefulSet | |
| metadata: | |
| name: ravendb | |
| namespace: default | |
| labels: | |
| app: ravendb | |
| spec: | |
| serviceName: ravendb | |
| template: | |
| metadata: | |
| labels: | |
| app: ravendb | |
| spec: | |
| containers: | |
| - command: | |
| - /bin/sh | |
| - -c | |
| - /opt/RavenDB/Server/Raven.Server --config-path /config/$HOSTNAME | |
| image: ravendb/ravendb:5.4-ubuntu-latest | |
| imagePullPolicy: Always | |
| name: ravendb | |
| resources: | |
| requests: | |
| memory: "4096Mi" | |
| cpu: "1000m" | |
| limits: | |
| memory: "4096Mi" | |
| cpu: "2000m" | |
| ports: | |
| - containerPort: 443 | |
| name: http-api | |
| protocol: TCP | |
| - containerPort: 38888 | |
| name: tcp-server | |
| protocol: TCP | |
| - containerPort: 161 | |
| name: snmp | |
| protocol: TCP | |
| terminationMessagePath: /dev/termination-log | |
| terminationMessagePolicy: File | |
| volumeMounts: | |
| - mountPath: /data | |
| name: data | |
| - mountPath: /ssl | |
| name: ssl | |
| - mountPath: /license | |
| name: license | |
| - mountPath: /config | |
| name: config | |
| dnsPolicy: ClusterFirst | |
| restartPolicy: Always | |
| terminationGracePeriodSeconds: 120 | |
| volumes: | |
| - name: ssl | |
| secret: | |
| defaultMode: 420 | |
| secretName: ravendb-ssl | |
| - configMap: | |
| defaultMode: 420 | |
| name: ravendb-settings | |
| name: config | |
| - name: license | |
| secret: | |
| defaultMode: 420 | |
| secretName: ravendb-license | |
| updateStrategy: | |
| type: RollingUpdate | |
| podManagementPolicy: OrderedReady | |
| replicas: 1 | |
| selector: | |
| matchLabels: | |
| app: ravendb | |
| volumeClaimTemplates: | |
| - metadata: | |
| annotations: | |
| volume.beta.kubernetes.io/storage-class: managed-premium-zrs | |
| labels: | |
| app: ravendb | |
| name: data | |
| spec: | |
| storageClassName: managed-premium-zrs | |
| accessModes: | |
| - ReadWriteOnce | |
| resources: | |
| requests: | |
| storage: 1024Gi | |
| --- | |
| apiVersion: networking.k8s.io/v1 | |
| kind: Ingress | |
| metadata: | |
| name: ravendb | |
| namespace: default | |
| labels: | |
| app: ravendb | |
| annotations: | |
| ingress.kubernetes.io/ssl-passthrough: "true" | |
| kubernetes.io/ingress.class: haproxy | |
| spec: | |
| rules: | |
| - host: raven.example.com | |
| http: | |
| paths: | |
| - backend: | |
| service: | |
| name: ravendb-0 | |
| port: | |
| number: 443 | |
| path: / | |
| pathType: Prefix | |
| - host: tcp-raven.example.com | |
| http: | |
| paths: | |
| - backend: | |
| service: | |
| name: ravendb-0 | |
| port: | |
| number: 38888 | |
| path: / | |
| pathType: Prefix | |
| --- | |
| apiVersion: v1 | |
| kind: Service | |
| metadata: | |
| name: ravendb | |
| namespace: default | |
| labels: | |
| app: ravendb | |
| spec: | |
| clusterIP: None | |
| ports: | |
| - name: http-api | |
| port: 443 | |
| protocol: TCP | |
| targetPort: 443 | |
| - name: tcp-server | |
| port: 38888 | |
| protocol: TCP | |
| targetPort: 38888 | |
| - name: snmp | |
| port: 161 | |
| protocol: TCP | |
| targetPort: 161 | |
| selector: | |
| app: ravendb | |
| type: ClusterIP | |
| --- | |
| apiVersion: v1 | |
| kind: Service | |
| metadata: | |
| name: ravendb-0 | |
| namespace: default | |
| labels: | |
| app: ravendb | |
| node: "0" | |
| spec: | |
| ports: | |
| - name: http-api | |
| port: 443 | |
| protocol: TCP | |
| targetPort: 443 | |
| - name: tcp-server | |
| port: 38888 | |
| protocol: TCP | |
| targetPort: 38888 | |
| - name: snmp | |
| port: 161 | |
| protocol: TCP | |
| targetPort: 161 | |
| selector: | |
| app: ravendb | |
| statefulset.kubernetes.io/pod-name: ravendb-0 | |
| type: ClusterIP | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment