Skip to content

Commit 25c05a9

Browse files
authored
[agave] support agave v3 (#331)
* [agave] support agave v3 * bump kind version, add capabilities for sysctl container
1 parent 4f74d99 commit 25c05a9

File tree

6 files changed

+27
-7
lines changed

6 files changed

+27
-7
lines changed

.github/workflows/lint-test.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,9 +62,9 @@ jobs:
6262
fi
6363
-
6464
name: Create Kubernetes Cluster (kind)
65-
uses: helm/kind-action@v1.10.0
65+
uses: helm/kind-action@v1.12.0
6666
with:
67-
node_image: kindest/node:v1.29.4
67+
node_image: kindest/node:v1.34.0
6868
if: steps.charts.outputs.testing == 'true'
6969
-
7070
name: Install Charts chart-testing

dysnix/agave/Chart.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@ name: agave
33
description: Agave (previously Solana) blockchain node Helm chart
44
type: application
55

6-
version: 0.2.3
7-
appVersion: v2.1.14
6+
version: 0.3.0
7+
appVersion: v3.0.8
88

99
keywords:
1010
- agave

dysnix/agave/README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,8 @@ A Helm chart to deploy Agave node inside Kubernetes cluster.
7979
| Name | Description | Value |
8080
| -------------------------------------------------- | ------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------- |
8181
| `agaveArgs` | `agave-validator` arguments | `{}` |
82+
| `adjustLimitMemLock.enabled` | Enable adjustment of memory lock limit for Agave container | `false` |
83+
| `adjustLimitMemLock.limit` | Memory lock limit in kilobytes | `2000000000` |
8284
| `gracefulShutdown.timeout` | Seconds to wait for graceful shutdown | `120` |
8385
| `gracefulShutdown.options` | `agave-validator exit` arguments | `{}` |
8486
| `gracefulShutdown.options.force` | Do not wait for restart window, useful for non-validators | `false` |
@@ -89,7 +91,7 @@ A Helm chart to deploy Agave node inside Kubernetes cluster.
8991
| `plugins.containerPorts` | Extra container ports for added plugins | `[]` |
9092
| `plugins.servicePorts` | Extra service ports for added plugins | `[]` |
9193
| `plugins.yellowstoneGRPC.enabled` | Enable download of Yellowstone gRPC | `false` |
92-
| `plugins.yellowstoneGRPC.version` | Yellowstone gRPC version | `v3.2.2+solana.2.0.18` |
94+
| `plugins.yellowstoneGRPC.version` | Yellowstone gRPC version | `v5.0.1+solana.2.1.14` |
9395
| `plugins.yellowstoneGRPC.downloadURL` | Yellowstone GRPC plugin download URL | `https://github.com/rpcpool/yellowstone-grpc/releases/download/` |
9496
| `plugins.yellowstoneGRPC.listenIP` | Yellowstone gRPC listen IP address, without port | `$(MY_POD_IP)` |
9597
| `plugins.yellowstoneGRPC.configYaml` | Yellowstone gRPC config file | `look in values.yaml` |

dysnix/agave/templates/scripts/_start.tpl

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
#!/bin/sh
22

3+
{{- if .Values.adjustLimitMemLock.enabled }}
4+
{{- if not ( "privileged" | get .Values.securityContext | default false ) }}
5+
{{- fail "adjustLimitMemLock is enabled but securityContext is not privileged. Please set securityContext.privileged=true." }}
6+
{{- end }}
7+
ulimit -l {{ int .Values.adjustLimitMemLock.limit }}
8+
{{- end }}
39
exec agave-validator
410
{{- range $arg, $val := .Values.agaveArgs }}
511
{{- if and $arg (or $val (and (kindIs "float64" $val) (eq (int $val) 0))) }} \{{ end }}

dysnix/agave/templates/statefulset.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,10 @@ spec:
4242
image: busybox:latest
4343
securityContext:
4444
privileged: true
45+
capabilities:
46+
add:
47+
- CAP_SYS_ADMIN
48+
- CAP_NET_ADMIN
4549
command: ["sh", "-c"]
4650
{{- /* as per agave validator requirements */}}
4751
args:

dysnix/agave/values.yaml

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -391,7 +391,7 @@ agaveArgs:
391391
rpc-port: 8899
392392
rpc-bind-address: ${MY_POD_IP}
393393
private-rpc: true
394-
dynamic-port-range: 8000-8020
394+
dynamic-port-range: 8000-8025
395395
wal-recovery-mode: skip_any_corrupted_record
396396
limit-ledger-size: true
397397
enable-extended-tx-metadata-storage: false
@@ -403,6 +403,14 @@ agaveArgs:
403403
# geyser-plugin-config: /plugins/yellowstone-grpc/config.json # uncomment to load Yellowstone GRPC plugin
404404
# snapshot-interval-slots: 0 # uncomment to disable snapshots creation
405405

406+
adjustLimitMemLock:
407+
## @param adjustLimitMemLock.enabled Enable adjustment of memory lock limit for Agave container
408+
##
409+
enabled: false
410+
## @param adjustLimitMemLock.limit Memory lock limit in kilobytes
411+
##
412+
limit: 2000000000
413+
406414
## Graceful shutdown options
407415
##
408416
gracefulShutdown:
@@ -455,7 +463,7 @@ plugins:
455463
enabled: false
456464
## @param plugins.yellowstoneGRPC.version Yellowstone gRPC version
457465
##
458-
version: v5.0.1+solana.2.1.14
466+
version: v10.0.1+solana.3.0.6
459467
## @param plugins.yellowstoneGRPC.downloadURL Yellowstone GRPC plugin download URL
460468
##
461469
downloadURL: https://github.com/rpcpool/yellowstone-grpc/releases/download/

0 commit comments

Comments
 (0)