Skip to content

Commit b2ab8db

Browse files
authored
update agave chart (#333)
1 parent 3b456cf commit b2ab8db

File tree

6 files changed

+144
-106
lines changed

6 files changed

+144
-106
lines changed

dysnix/agave/Chart.yaml

Lines changed: 18 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,21 @@
11
apiVersion: v2
2-
name: agave
3-
description: Agave (previously Solana) blockchain node Helm chart
4-
type: application
5-
6-
version: 0.3.1
7-
appVersion: v3.0.8
8-
2+
appVersion: v3.1.8
3+
description: Agave blockchain node Helm chart
94
keywords:
10-
- agave
11-
- solana
12-
- anza-xyz
13-
- crypto
14-
- web3
15-
- cryptocurrency
16-
- blockchain
17-
18-
sources:
19-
- https://github.com/dysnix/charts
20-
- https://github.com/dysnix/docker-agave
21-
- https://github.com/anza-xyz/agave
22-
- https://github.com/solana-labs/solana
23-
5+
- agave
6+
- solana
7+
- anza-xyz
8+
- crypto
9+
- web3
10+
- cryptocurrency
11+
- blockchain
2412
maintainers:
25-
- name: VladStarr
26-
email: vlad.derigin@dysnix.com
13+
- email: vlad.derigin@dysnix.com
14+
name: VladStarr
15+
name: agave
16+
sources:
17+
- https://github.com/dysnix/charts
18+
- https://github.com/dysnix/docker-agave
19+
- https://github.com/anza-xyz/agave
20+
type: application
21+
version: 0.4.0

dysnix/agave/README.md

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -73,39 +73,39 @@ A Helm chart to deploy Agave node inside Kubernetes cluster.
7373
| `metrics.prometheusRule.rules` | Prometheus rules | `[]` |
7474
| `metrics.influxdb.existingSecret.name` | Name of secret containing InfluxDB credentials | `agave-metrics-config` |
7575
| `metrics.influxdb.existingSecret.key` | Key name inside the secret | `config` |
76+
| `hostNetwork` | Enable hostNetwork for Agave container | `true` |
7677

7778
### Agave node configuration
7879

79-
| Name | Description | Value |
80-
| -------------------------------------------------- | ------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------- |
81-
| `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` |
84-
| `gracefulShutdown.timeout` | Seconds to wait for graceful shutdown | `120` |
85-
| `gracefulShutdown.options` | `agave-validator exit` arguments | `{}` |
86-
| `gracefulShutdown.options.force` | Do not wait for restart window, useful for non-validators | `false` |
87-
| `gracefulShutdown.options.skip-health-check` | Skip health check before exit | `false` |
88-
| `gracefulShutdown.options.skip-new-snapshot-check` | Skip check for a new snapshot before exit | `false` |
89-
| `rustLog` | Logging configuration | `solana_metrics=warn,agave_validator::bootstrap=debug,info` |
90-
| `plugins.enabled` | Enable download of Geyser plugins | `false` |
91-
| `plugins.containerPorts` | Extra container ports for added plugins | `[]` |
92-
| `plugins.servicePorts` | Extra service ports for added plugins | `[]` |
93-
| `plugins.yellowstoneGRPC.enabled` | Enable download of Yellowstone gRPC | `false` |
94-
| `plugins.yellowstoneGRPC.version` | Yellowstone gRPC version | `v10.0.1+solana.3.0.6` |
95-
| `plugins.yellowstoneGRPC.downloadURL` | Yellowstone GRPC plugin download URL | `https://github.com/rpcpool/yellowstone-grpc/releases/download/` |
96-
| `plugins.yellowstoneGRPC.listenIP` | Yellowstone gRPC listen IP address, without port | `$(MY_POD_IP)` |
97-
| `plugins.yellowstoneGRPC.configYaml` | Yellowstone gRPC config file | `look in values.yaml` |
98-
| `plugins.yellowstoneGRPC.config` | Yellowstone gRPC config.json file | `""` |
99-
| `plugins.jitoGRPC.enabled` | Enable download of Jito gRPC | `false` |
100-
| `plugins.jitoGRPC.version` | Jito gRPC version | `v2.0.15` |
101-
| `plugins.jitoGRPC.downloadURL` | Jito GRPC plugin download URL | `https://github.com/jito-foundation/geyser-grpc-plugin/releases/download/v2.0.15/libgeyser_grpc_plugin_server.so` |
102-
| `plugins.jitoGRPC.listenIP` | Jito gRPC listen IP address, without port | `$(MY_POD_IP)` |
103-
| `plugins.jitoGRPC.configYaml` | Jito gRPC config file in YAML format | `look in values.yaml` |
104-
| `plugins.jitoGRPC.config` | Jito gRPC config.json file in raw format | `""` |
105-
| `identity.validatorKeypair` | Validator keypair string (required) | `""` |
106-
| `identity.voteKeypair` | Vote keypair string (required only for validator) | `""` |
107-
| `identity.existingSecret` | Use existing secret with keypairs instead of specifying them above | `""` |
108-
| `identity.mountPath` | Keypair files mount path | `/secrets` |
80+
| Name | Description | Value |
81+
| -------------------------------------------------- | ------------------------------------------------------------------ | ------------------------------------------------------------------------------- |
82+
| `agaveArgs` | `agave-validator` arguments | `{}` |
83+
| `adjustLimitMemLock.enabled` | Enable adjustment of memory lock limit for Agave container | `false` |
84+
| `adjustLimitMemLock.limit` | Memory lock limit in kilobytes | `2000000000` |
85+
| `gracefulShutdown.timeout` | Seconds to wait for graceful shutdown | `120` |
86+
| `gracefulShutdown.options` | `agave-validator exit` arguments | `{}` |
87+
| `gracefulShutdown.options.force` | Do not wait for restart window, useful for non-validators | `false` |
88+
| `gracefulShutdown.options.skip-health-check` | Skip health check before exit | `false` |
89+
| `gracefulShutdown.options.skip-new-snapshot-check` | Skip check for a new snapshot before exit | `false` |
90+
| `rustLog` | Logging configuration | `solana_metrics=warn,agave_validator::bootstrap=debug,info` |
91+
| `plugins.enabled` | Enable download of Geyser plugins | `false` |
92+
| `plugins.containerPorts` | Extra container ports for added plugins | `[]` |
93+
| `plugins.servicePorts` | Extra service ports for added plugins | `[]` |
94+
| `plugins.yellowstoneGRPC.enabled` | Enable download of Yellowstone gRPC | `false` |
95+
| `plugins.yellowstoneGRPC.version` | Yellowstone gRPC version | `v11.0.1+solana.3.1.8` |
96+
| `plugins.yellowstoneGRPC.downloadURL` | Yellowstone GRPC plugin download URL | `https://github.com/rpcpool/yellowstone-grpc/releases/download/` |
97+
| `plugins.yellowstoneGRPC.listenIP` | Yellowstone gRPC listen IP address, without port | `$(MY_POD_IP)` |
98+
| `plugins.yellowstoneGRPC.configYaml` | Yellowstone gRPC config file | `look in values.yaml` |
99+
| `plugins.yellowstoneGRPC.config` | Yellowstone gRPC config.json file | `""` |
100+
| `plugins.richat.enabled` | Enable download of Richat | `false` |
101+
| `plugins.richat.downloadURL` | Richat download URL | `https://pub-f70d2191aa5a466faa56be3f4d80638a.r2.dev/librichat_plugin_agave.so` |
102+
| `plugins.richat.listenIP` | Richat listen IP address, without port | `$(MY_POD_IP)` |
103+
| `plugins.richat.configYaml` | Richat config file | `look in values.yaml` |
104+
| `plugins.richat.config` | Richat config.json file | `""` |
105+
| `identity.validatorKeypair` | Validator keypair string (required) | `""` |
106+
| `identity.voteKeypair` | Vote keypair string (required only for validator) | `""` |
107+
| `identity.existingSecret` | Use existing secret with keypairs instead of specifying them above | `""` |
108+
| `identity.mountPath` | Keypair files mount path | `/secrets` |
109109

110110
### Agave ledger db persistence config
111111

dysnix/agave/templates/configmap-plugins.yaml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,12 @@ data:
1414
{{- toPrettyJson .Values.plugins.yellowstoneGRPC.configYaml | nindent 4 }}
1515
{{- end }}
1616
{{- end }}
17-
{{- if .Values.plugins.jitoGRPC.enabled }}
18-
jitogrpc-config.json: |-
19-
{{- if .Values.plugins.jitoGRPC.config }}
20-
{{- .Values.plugins.jitoGRPC.config | nindent 4 }}
17+
{{- if .Values.plugins.richat.enabled }}
18+
richat-config.json: |-
19+
{{- if .Values.plugins.richat.config }}
20+
{{- .Values.plugins.richat.config | nindent 4 }}
2121
{{- else }}
22-
{{- toPrettyJson .Values.plugins.jitoGRPC.configYaml | nindent 4 }}
22+
{{- toPrettyJson .Values.plugins.richat.configYaml | nindent 4 }}
2323
{{- end }}
2424
{{- end }}
2525
{{- end }}

dysnix/agave/templates/scripts/_download-plugins.tpl

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,14 @@
44
set -e
55

66
YELLOWSTONE_GRPC__PLUGIN_DIR="$PLUGINS_DIR/yellowstone-grpc"
7-
JITO_GRPC__PLUGIN_DIR="$PLUGINS_DIR/jito-grpc"
7+
RICHAT__PLUGIN_DIR="$PLUGINS_DIR/richat"
88

99
yellowstone_grpc_bootstrap() {
1010
echo "Yellowstone gRPC: Downloading plugin version ${YELLOWSTONE_GRPC__VERSION}.."
1111
mkdir -p "$YELLOWSTONE_GRPC__PLUGIN_DIR"
12-
wget -q "${YELLOWSTONE_GRPC__DOWNLOAD_URL}/${YELLOWSTONE_GRPC__VERSION}/geyser.proto"
13-
wget -q "${YELLOWSTONE_GRPC__DOWNLOAD_URL}/${YELLOWSTONE_GRPC__VERSION}/solana-storage.proto"
1412
wget -qO- "${YELLOWSTONE_GRPC__DOWNLOAD_URL}/${YELLOWSTONE_GRPC__VERSION}/yellowstone-grpc-geyser-release22-x86_64-unknown-linux-gnu.tar.bz2" | tar jxvf -
1513

16-
echo "Yellowstone gRPC: Copying proto and lib to ${YELLOWSTONE_GRPC__PLUGIN_DIR}.."
17-
cp -r /tmp/*.proto "$YELLOWSTONE_GRPC__PLUGIN_DIR/"
14+
echo "Yellowstone gRPC: Copying lib to ${YELLOWSTONE_GRPC__PLUGIN_DIR}.."
1815
cp -r /tmp/yellowstone-grpc-geyser-release/lib "$YELLOWSTONE_GRPC__PLUGIN_DIR/"
1916

2017
echo "Yellowstone gRPC: Copying config file to ${YELLOWSTONE_GRPC__PLUGIN_DIR}.."
@@ -26,22 +23,24 @@ yellowstone_grpc_bootstrap() {
2623
echo "Yellowstone gRPC: Bootstrap done!"
2724
}
2825

29-
jito_grpc_bootstrap() {
30-
mkdir -p "$JITO_GRPC__PLUGIN_DIR"
26+
richat_bootstrap() {
27+
echo "Richat: Downloading plugin version ${RICHAT__VERSION}.."
28+
mkdir -p "$RICHAT__PLUGIN_DIR/lib"
29+
wget -q "${RICHAT__DOWNLOAD_URL}" -O "$RICHAT__PLUGIN_DIR/lib/librichat_plugin_agave.so"
3130

32-
echo "Jito gRPC: Copying config file to ${JITO_GRPC__PLUGIN_DIR}.."
33-
cp -L "$JITO_GRPC__CONFIG_PATH" "$JITO_GRPC__PLUGIN_DIR/config.json"
31+
echo "Richat: Copying config file to ${RICHAT__PLUGIN_DIR}.."
32+
cp -L "$RICHAT__CONFIG_PATH" "$RICHAT__PLUGIN_DIR/config.json"
3433

35-
echo "Jito gRPC: Changing listen IP address in config file to ${JITO_GRPC__LISTEN_IP}.."
36-
sed -i "s/LISTEN_IP/${JITO_GRPC__LISTEN_IP}/g" "$JITO_GRPC__PLUGIN_DIR/config.json"
34+
echo "Richat: Changing listen IP address in config file to ${RICHAT__LISTEN_IP}.."
35+
sed -i "s/LISTEN_IP/${RICHAT__LISTEN_IP}/g" "$RICHAT__PLUGIN_DIR/config.json"
3736

38-
echo "Jito gRPC: Bootstrap done!"
37+
echo "Richat: Bootstrap done!"
3938
}
4039

4140
main() {
4241
cd /tmp
4342
if [ "$YELLOWSTONE_GRPC__ENABLED" = "1" ]; then yellowstone_grpc_bootstrap; fi
44-
if [ "$JITO_GRPC__ENABLED" = "1" ]; then jito_grpc_bootstrap; fi
43+
if [ "$RICHAT__ENABLED" = "1" ]; then richat_bootstrap; fi
4544
}
4645

4746
main

0 commit comments

Comments
 (0)