Compare commits

..

12 commits

Author SHA1 Message Date
dd382f8ce0 [#68] service/morph: Add volume for morph_chain
Signed-off-by: Alexander Chuprov <a.chuprov@yadro.com>
2024-08-19 11:54:57 +00:00
044cf99e8d [#70] Makefile: Make bootstrap idempotent
Signed-off-by: Alexander Chuprov <a.chuprov@yadro.com>
2024-08-19 11:54:57 +00:00
ae658469a5 [#69] service/ir: Add support -q flag in healthcheck
Signed-off-by: Alexander Chuprov <a.chuprov@yadro.com>
2024-08-19 06:25:04 +00:00
155042343b [#69] service/storage: Add support -q flag in healthcheck
Signed-off-by: Alexander Chuprov <a.chuprov@yadro.com>
2024-08-19 06:25:04 +00:00
f94fa284ec [#76] Update frostfs-core components to v0.42.9
All checks were successful
DCO action / DCO (pull_request) Successful in 26s
Signed-off-by: Alexander Chuprov <a.chuprov@yadro.com>
2024-08-17 05:51:34 +03:00
d03be14312 [#75] Makefile: Add subjects for storage and client wallets to FrostfsID
All checks were successful
DCO action / DCO (pull_request) Successful in 28s
Signed-off-by: Airat Arifullin <a.arifullin@yadro.com>
2024-08-16 10:41:57 +03:00
0be22a9375
[#73] Update HTTP gate docs
All checks were successful
DCO action / DCO (pull_request) Successful in 5m41s
Signed-off-by: Aleksey Savchuk <a.savchuk@yadro.com>
2024-07-08 10:56:42 +03:00
2b6122192a [#67] services/ir: Remove deprecated flag in healthcheck
All checks were successful
DCO action / DCO (pull_request) Successful in 13m28s
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2024-05-08 11:35:37 +03:00
773ea2339b [#66] Update frostfs-* to v0.38.5
All checks were successful
DCO action / DCO (pull_request) Successful in 45s
Signed-off-by: Alexander Chuprov <a.chuprov@yadro.com>
2024-04-15 20:16:51 +03:00
47b4917e7b [#65] services: Fix docker-compose warnings
All checks were successful
DCO action / DCO (pull_request) Successful in 5m24s
There were multiple warning like this one.
```
WARN[0000] /secret/services/rest_gate/docker-compose.yml: `version` is obsolete
```

According to docker-compose spec, the parameter is indeed purely informative:
https://github.com/compose-spec/compose-spec/blob/master/spec.md#version-and-name-top-level-elements

Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2024-04-04 11:47:33 +03:00
Airat Arifullin
8edfcb364d [#64] adm: Create default Allow policy for root namespace
Signed-off-by: Airat Arifullin <aarifullin@yadro.com>
2024-02-26 08:03:13 +00:00
19e5cec49f [#63] Use SIGTERM to stop Go services
All checks were successful
DCO action / DCO (pull_request) Successful in 3m32s
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2024-02-20 15:54:23 +03:00
19 changed files with 54 additions and 63 deletions

18
.env
View file

@ -12,12 +12,12 @@ NEOGO_VERSION=0.104.0
NEOGO_IMAGE=nspccdev/neo-go NEOGO_IMAGE=nspccdev/neo-go
# FrostFS InnerRing nodes # FrostFS InnerRing nodes
IR_VERSION=0.37.0-rc.1-164-gbdd43f62 IR_VERSION=v0.42.9
IR_IMAGE=truecloudlab/frostfs-ir IR_IMAGE=git.frostfs.info/truecloudlab/frostfs-ir
# FrostFS Storage nodes # FrostFS Storage nodes
NODE_VERSION=0.37.0-rc.1-164-gbdd43f62 NODE_VERSION=v0.42.9
NODE_IMAGE=truecloudlab/frostfs-storage NODE_IMAGE=git.frostfs.info/truecloudlab/frostfs-storage
# NATS Server # NATS Server
NATS_VERSION=2.7.2 NATS_VERSION=2.7.2
@ -40,17 +40,17 @@ LOCODE_DB_URL=https://git.frostfs.info/attachments/a2e8def7-52b6-49f1-89cd-a0567
#LOCODE_DB_PATH=/path/to/locode_db #LOCODE_DB_PATH=/path/to/locode_db
# FrostFS CLI binary # FrostFS CLI binary
FROSTFS_CLI_URL=https://http.t5.fs.neo.org/7sm9csjtRLpr4c9QD55q9JJM73v79ohuAhTzP4fYRHFz/HUu3vMojqiopmAzWgUPPPSN7ThosapsLj5WrBvZR67tC FROSTFS_CLI_URL=https://git.frostfs.info/TrueCloudLab/frostfs-node/releases/download/${NODE_VERSION}//frostfs-cli
#FROSTFS_CLI_PATH=/path/to/frostfs-cli-binary #FROSTFS_CLI_PATH=/path/to/frostfs-cli-binary
# FrostFS ADM tool binary # FrostFS ADM tool binary
FROSTFS_ADM_VERSION=eca5c210 FROSTFS_ADM_VERSION=498f9955ea
FROSTFS_ADM_URL=https://http.t5.fs.neo.org/7sm9csjtRLpr4c9QD55q9JJM73v79ohuAhTzP4fYRHFz/NMw4AktoK2zo5Kftj23wGEVzE1d52ULufjtcLjAVqZc FROSTFS_ADM_URL=https://git.frostfs.info/TrueCloudLab/frostfs-node/releases/download/${NODE_VERSION}/frostfs-adm
#FROSTFS_ADM_PATH=/path/to/frostfs-adm-binary #FROSTFS_ADM_PATH=/path/to/frostfs-adm-binary
# Compiled FrostFS Smart Contracts # Compiled FrostFS Smart Contracts
FROSTFS_CONTRACTS_VERSION=8537293e FROSTFS_CONTRACTS_VERSION=694daebb19
FROSTFS_CONTRACTS_URL=https://http.t5.fs.neo.org/7sm9csjtRLpr4c9QD55q9JJM73v79ohuAhTzP4fYRHFz/BLG2NrQW5UAF1RSMSBK8Z4mGanhvzD9aTRk4NsRGVDV9 FROSTFS_CONTRACTS_URL=https://git.frostfs.info/TrueCloudLab/frostfs-contract/releases/download/v0.19.2/frostfs-contract-v0.19.2.tar.gz
#FROSTFS_CONTRACTS_PATH=/path/to/unpacked/frostfs-contracts-dir #FROSTFS_CONTRACTS_PATH=/path/to/unpacked/frostfs-contracts-dir
# Jaeger tracing # Jaeger tracing

View file

@ -76,12 +76,25 @@ up/bootstrap: get vendor/hosts
@$(foreach SVC, $(START_BOOTSTRAP), $(shell docker-compose -f services/$(SVC)/docker-compose.yml up -d)) @$(foreach SVC, $(START_BOOTSTRAP), $(shell docker-compose -f services/$(SVC)/docker-compose.yml up -d))
@source ./bin/helper.sh @source ./bin/helper.sh
@./vendor/frostfs-adm --config frostfs-adm.yml morph init --contracts vendor/contracts @./vendor/frostfs-adm --config frostfs-adm.yml morph init --contracts vendor/contracts
echo "Set rule chain to policy contract"
@./vendor/frostfs-adm --config frostfs-adm.yml morph \
ape add-rule-chain --target-type namespace --target-name "" \
--rule 'allow Container.* *' --chain-id "allow_container_ops"
@for f in ./services/storage/wallet*.json; do \ @for f in ./services/storage/wallet*.json; do \
echo "Transfer GAS to wallet $${f}" \ echo "Transfer GAS to wallet $${f}" \
&& ./vendor/frostfs-adm -c frostfs-adm.yml morph refill-gas --storage-wallet $${f} --gas 10.0 \ && ./vendor/frostfs-adm -c frostfs-adm.yml morph refill-gas --storage-wallet $${f} --gas 10.0 \
|| die "Failed to transfer GAS to alphabet wallets"; \ || die "Failed to transfer GAS to alphabet wallets"; \
done done
@echo "FrostFS sidechain environment is deployed" @echo "Create frostfsid subject for ./wallets/wallet.json"; \
if [ -n "$$(./vendor/frostfs-adm -c frostfs-adm.yml morph frostfsid list-subjects --namespace '')" ]; then \
echo "Subject already exists"; \
else \
subj_key=`docker container exec -it morph_chain neo-go wallet dump-keys -w /wallets/wallet.json | tail -1 | tr -d ' \r\n'` \
&& echo "Subject key: $${subj_key}" \
&& ./vendor/frostfs-adm -c frostfs-adm.yml morph frostfsid create-subject --namespace "" --subject-key $${subj_key} --subject-name walletsubject \
|| die "Failed to create subject for the wallet"; \
fi
echo "FrostFS sidechain environment is deployed"
# Build up certain service # Build up certain service
.PHONY: up/% .PHONY: up/%

View file

@ -22,8 +22,8 @@ Image label prefix to use for containers.
- Create a new container - Create a new container
``` ```
$ frostfs-cli --rpc-endpoint s01.frostfs.devenv:8080 \ $ frostfs-cli --rpc-endpoint s01.frostfs.devenv:8080 \
--key wallets/wallet.key \ --wallet wallets/wallet.key \
container create --basic-acl readonly --await \ container create --basic-acl private --await \
--policy "REP 1 SELECT 1 FROM *" --policy "REP 1 SELECT 1 FROM *"
container ID: 4LfREK1cetL4PUji5fqj9SgRTSmaC5jExEDK9HKCDjdP container ID: 4LfREK1cetL4PUji5fqj9SgRTSmaC5jExEDK9HKCDjdP
awaiting... awaiting...
@ -33,7 +33,7 @@ container has been persisted on sidechain
- Put an object into the newly created container - Put an object into the newly created container
``` ```
$ frostfs-cli --rpc-endpoint s01.frostfs.devenv:8080 \ $ frostfs-cli --rpc-endpoint s01.frostfs.devenv:8080 \
--key wallets/wallet.key \ --wallet wallets/wallet.key \
object put --file /tmp/backup.jpeg \ object put --file /tmp/backup.jpeg \
--cid 4LfREK1cetL4PUji5fqj9SgRTSmaC5jExEDK9HKCDjdP --cid 4LfREK1cetL4PUji5fqj9SgRTSmaC5jExEDK9HKCDjdP
[/tmp/backup.jpeg] Object successfully stored [/tmp/backup.jpeg] Object successfully stored

View file

@ -1,6 +1,5 @@
--- ---
version: "2.4"
services: services:
basenet: basenet:

View file

@ -1,4 +1,3 @@
version: '2.4'
services: services:
grafana: grafana:
image: ${GRAFANA_IMAGE}:${GRAFANA_VERSION} image: ${GRAFANA_IMAGE}:${GRAFANA_VERSION}

View file

@ -1,6 +1,5 @@
--- ---
version: "2.4"
services: services:
http_gate: http_gate:
image: ${HTTP_GW_IMAGE}:${HTTP_GW_VERSION} image: ${HTTP_GW_IMAGE}:${HTTP_GW_VERSION}

View file

@ -25,7 +25,6 @@ endif
# Download FrostFS CLI # Download FrostFS CLI
.ONESHELL: .ONESHELL:
get.cli: FROSTFS_CLI_FILE=./vendor/frostfs-cli get.cli: FROSTFS_CLI_FILE=./vendor/frostfs-cli
get.cli: FROSTFS_CLI_ARCHIVE_FILE=${FROSTFS_CLI_FILE}.tar.gz
get.cli: FROSTFS_CLI_PATH?= get.cli: FROSTFS_CLI_PATH?=
get.cli: get.cli:
@mkdir -p ./vendor @mkdir -p ./vendor
@ -34,10 +33,8 @@ ifeq (${FROSTFS_CLI_PATH},)
@echo "⇒ Download FrostFS CLI binary from ${FROSTFS_CLI_URL}" @echo "⇒ Download FrostFS CLI binary from ${FROSTFS_CLI_URL}"
@curl \ @curl \
-ksSL "${FROSTFS_CLI_URL}" \ -ksSL "${FROSTFS_CLI_URL}" \
-o ${FROSTFS_CLI_ARCHIVE_FILE} -o ${FROSTFS_CLI_FILE}
@tar -xvf ${FROSTFS_CLI_ARCHIVE_FILE} -C ./vendor | xargs -I {} \ @chmod +x ${FROSTFS_CLI_FILE}
mv ./vendor/{} ${FROSTFS_CLI_FILE}
@rm ${FROSTFS_CLI_ARCHIVE_FILE}
else else
@echo "⇒ Copy local binary from ${FROSTFS_CLI_PATH}" @echo "⇒ Copy local binary from ${FROSTFS_CLI_PATH}"
@cp ${FROSTFS_CLI_PATH} ${FROSTFS_CLI_FILE} @cp ${FROSTFS_CLI_PATH} ${FROSTFS_CLI_FILE}

View file

@ -1,6 +1,5 @@
--- ---
version: "2.4"
services: services:
ir01: ir01:
@ -13,19 +12,19 @@ services:
ir_int: ir_int:
internet: internet:
ipv4_address: ${IPV4_PREFIX}.61 ipv4_address: ${IPV4_PREFIX}.61
stop_signal: SIGKILL stop_signal: SIGTERM
stop_grace_period: 15s
volumes: volumes:
- ./az.json:/wallet.json - ./az.json:/wallet.json
- ./az.key:/wallet01.key - ./az.key:/wallet01.key
- ./../../vendor/hosts:/etc/hosts - ./../../vendor/hosts:/etc/hosts
- ./../../vendor/locode_db:/locode/db - ./../../vendor/locode_db:/locode/db
- ./../../vendor/frostfs-cli:/frostfs-cli - ./../../vendor/frostfs-cli:/frostfs-cli
- ./healthcheck.sh:/healthcheck.sh
- ./cfg:/etc/frostfs/ir - ./cfg:/etc/frostfs/ir
env_file: [ ".env", ".ir.env", ".int_test.env" ] env_file: [ ".env", ".ir.env", ".int_test.env" ]
command: [ "frostfs-ir", "--config", "/etc/frostfs/ir/config.yml" ] command: [ "frostfs-ir", "--config", "/etc/frostfs/ir/config.yml" ]
healthcheck: healthcheck:
test: ["CMD-SHELL", "/healthcheck.sh"] test: ["CMD-SHELL", "/frostfs-cli control ir healthcheck -q --wallet /wallet01.key --endpoint \"$$FROSTFS_IR_CONTROL_GRPC_ENDPOINT\""]
interval: 2s interval: 2s
timeout: 1s timeout: 1s
retries: 5 retries: 5

View file

@ -1,6 +0,0 @@
#!/bin/sh
/frostfs-cli control healthcheck \
--endpoint "$FROSTFS_IR_CONTROL_GRPC_ENDPOINT" \
--wallet /wallet01.key --ir |
grep "Health status: READY"

View file

@ -1,4 +1,3 @@
version: '2.4'
services: services:
jaeger: jaeger:
image: ${JAEGER_IMAGE}:${JAEGER_VERSION} image: ${JAEGER_IMAGE}:${JAEGER_VERSION}

View file

@ -20,15 +20,12 @@ endif
# Download FrostFS ADM tool # Download FrostFS ADM tool
get.adm: FROSTFS_ADM_DEST=./vendor/frostfs-adm get.adm: FROSTFS_ADM_DEST=./vendor/frostfs-adm
get.adm: FROSTFS_ADM_ARCHIVE=frostfs-adm.tar.gz
get.adm: get.adm:
ifeq (${FROSTFS_ADM_PATH},) ifeq (${FROSTFS_ADM_PATH},)
@echo "⇒ Download FrostFS ADM binary from ${FROSTFS_ADM_URL}" @echo "⇒ Download FrostFS ADM binary from ${FROSTFS_ADM_URL}"
@curl -skSL ${FROSTFS_ADM_URL} -o ${FROSTFS_ADM_ARCHIVE} @curl -skSL ${FROSTFS_ADM_URL} -o ${FROSTFS_ADM_DEST}
@tar -xvf ${FROSTFS_ADM_ARCHIVE} -C ./vendor | xargs -I {} \ @chmod +x ${FROSTFS_ADM_DEST}
mv ./vendor/{} ${FROSTFS_ADM_DEST}
@rm ${FROSTFS_ADM_ARCHIVE}
else else
@echo "⇒ Copy frostfs-adm binary from ${FROSTFS_ADM_PATH}" @echo "⇒ Copy frostfs-adm binary from ${FROSTFS_ADM_PATH}"
@cp ${FROSTFS_ADM_PATH} ${FROSTFS_ADM_DEST} @cp ${FROSTFS_ADM_PATH} ${FROSTFS_ADM_DEST}

View file

@ -1,6 +1,5 @@
--- ---
version: "2.4"
services: services:
frostfs_morph_chain: frostfs_morph_chain:
image: ${NEOGO_IMAGE}:${NEOGO_VERSION} image: ${NEOGO_IMAGE}:${NEOGO_VERSION}
@ -20,9 +19,13 @@ services:
- ./config.yml:/wallets/config.yml - ./config.yml:/wallets/config.yml
- ./../../vendor/hosts:/etc/hosts - ./../../vendor/hosts:/etc/hosts
- ./../../wallets/wallet.json:/wallets/wallet.json - ./../../wallets/wallet.json:/wallets/wallet.json
- chains:/chains
networks: networks:
chain_int: chain_int:
internet: internet:
external: true external: true
name: basenet_internet name: basenet_internet
volumes:
chains:

View file

@ -17,7 +17,7 @@ ApplicationConfiguration:
DBConfiguration: DBConfiguration:
Type: "boltdb" Type: "boltdb"
BoltDBOptions: BoltDBOptions:
FilePath: "./db/morph.bolt" FilePath: "/chains/morph.bolt"
P2P: P2P:
Addresses: Addresses:
- ":20333" - ":20333"

View file

@ -1,6 +1,5 @@
--- ---
version: "2.4"
services: services:
nats: nats:
image: ${NATS_IMAGE}:${NATS_VERSION} image: ${NATS_IMAGE}:${NATS_VERSION}

View file

@ -1,4 +1,3 @@
version: '2.4'
services: services:
prometheus: prometheus:
image: ${PROMETHEUS_IMAGE}:${PROMETHEUS_VERSION} image: ${PROMETHEUS_IMAGE}:${PROMETHEUS_VERSION}

View file

@ -1,6 +1,5 @@
--- ---
version: "2.4"
services: services:
rest_gate: rest_gate:
image: ${REST_GW_IMAGE}:${REST_GW_VERSION} image: ${REST_GW_IMAGE}:${REST_GW_VERSION}
@ -16,7 +15,8 @@ services:
- ./wallet.json:/wallet.json - ./wallet.json:/wallet.json
- ./../../vendor/hosts:/etc/hosts - ./../../vendor/hosts:/etc/hosts
- ./cfg:/etc/frostfs/rest - ./cfg:/etc/frostfs/rest
stop_signal: SIGKILL stop_signal: SIGTERM
stop_grace_period: 15s
env_file: [ ".env", ".int_test.env" ] env_file: [ ".env", ".int_test.env" ]
command: [ "frostfs-rest-gw", "--config", "/etc/frostfs/rest/config.yml" ] command: [ "frostfs-rest-gw", "--config", "/etc/frostfs/rest/config.yml" ]
environment: environment:

View file

@ -1,6 +1,5 @@
--- ---
version: "2.4"
services: services:
s3_gate: s3_gate:
image: ${S3_GW_IMAGE}:${S3_GW_VERSION} image: ${S3_GW_IMAGE}:${S3_GW_VERSION}
@ -18,7 +17,8 @@ services:
- ./tls.crt:/tls.crt - ./tls.crt:/tls.crt
- ./../../vendor/hosts:/etc/hosts - ./../../vendor/hosts:/etc/hosts
- ./cfg:/etc/frostfs/s3 - ./cfg:/etc/frostfs/s3
stop_signal: SIGKILL stop_signal: SIGTERM
stop_grace_period: 15s
env_file: [ ".env", ".s3.env", ".int_test.env" ] env_file: [ ".env", ".s3.env", ".int_test.env" ]
command: [ "frostfs-s3-gw", "--config", "/etc/frostfs/s3/config.yml" ] command: [ "frostfs-s3-gw", "--config", "/etc/frostfs/s3/config.yml" ]
environment: environment:

View file

@ -1,6 +1,5 @@
--- ---
version: "2.4"
services: services:
storage01: storage01:
image: ${NODE_IMAGE}:${NODE_VERSION} image: ${NODE_IMAGE}:${NODE_VERSION}
@ -18,13 +17,13 @@ services:
- storage_s01:/storage - storage_s01:/storage
- ./../../vendor/frostfs-cli:/frostfs-cli - ./../../vendor/frostfs-cli:/frostfs-cli
- ./cli-cfg.yml:/cli-cfg.yml - ./cli-cfg.yml:/cli-cfg.yml
- ./healthcheck.sh:/healthcheck.sh
- ./s04tls.crt:/etc/ssl/certs/s04tls.crt - ./s04tls.crt:/etc/ssl/certs/s04tls.crt
- ../nats/client-cert.pem:/etc/frostfs-node/nats.tls.cert - ../nats/client-cert.pem:/etc/frostfs-node/nats.tls.cert
- ../nats/client-key.pem:/etc/frostfs-node/nats.tls.key - ../nats/client-key.pem:/etc/frostfs-node/nats.tls.key
- ../nats/ca-cert.pem:/etc/frostfs-node/nats.ca.crt - ../nats/ca-cert.pem:/etc/frostfs-node/nats.ca.crt
- ./cfg:/etc/frostfs/storage - ./cfg:/etc/frostfs/storage
stop_signal: SIGKILL stop_signal: SIGTERM
stop_grace_period: 15s
env_file: [ ".env", ".storage.env", ".int_test.env" ] env_file: [ ".env", ".storage.env", ".int_test.env" ]
command: [ "frostfs-node", "--config", "/etc/frostfs/storage/config.yml" ] command: [ "frostfs-node", "--config", "/etc/frostfs/storage/config.yml" ]
environment: environment:
@ -36,7 +35,7 @@ services:
- FROSTFS_NODE_ATTRIBUTE_1=UN-LOCODE:RU MOW - FROSTFS_NODE_ATTRIBUTE_1=UN-LOCODE:RU MOW
- FROSTFS_NODE_ATTRIBUTE_2=Price:22 - FROSTFS_NODE_ATTRIBUTE_2=Price:22
healthcheck: healthcheck:
test: ["CMD-SHELL", "/healthcheck.sh"] test: ["CMD-SHELL", "/frostfs-cli control healthcheck -q -c /cli-cfg.yml --endpoint \"$$FROSTFS_CONTROL_GRPC_ENDPOINT\""]
interval: 2s interval: 2s
timeout: 1s timeout: 1s
retries: 5 retries: 5
@ -58,13 +57,13 @@ services:
- storage_s02:/storage - storage_s02:/storage
- ./../../vendor/frostfs-cli:/frostfs-cli - ./../../vendor/frostfs-cli:/frostfs-cli
- ./cli-cfg.yml:/cli-cfg.yml - ./cli-cfg.yml:/cli-cfg.yml
- ./healthcheck.sh:/healthcheck.sh
- ./s04tls.crt:/etc/ssl/certs/s04tls.crt - ./s04tls.crt:/etc/ssl/certs/s04tls.crt
- ../nats/client-cert.pem:/etc/frostfs-node/nats.tls.cert - ../nats/client-cert.pem:/etc/frostfs-node/nats.tls.cert
- ../nats/client-key.pem:/etc/frostfs-node/nats.tls.key - ../nats/client-key.pem:/etc/frostfs-node/nats.tls.key
- ../nats/ca-cert.pem:/etc/frostfs-node/nats.ca.crt - ../nats/ca-cert.pem:/etc/frostfs-node/nats.ca.crt
- ./cfg:/etc/frostfs/storage - ./cfg:/etc/frostfs/storage
stop_signal: SIGKILL stop_signal: SIGTERM
stop_grace_period: 15s
env_file: [ ".env", ".storage.env", ".int_test.env" ] env_file: [ ".env", ".storage.env", ".int_test.env" ]
command: [ "frostfs-node", "--config", "/etc/frostfs/storage/config.yml" ] command: [ "frostfs-node", "--config", "/etc/frostfs/storage/config.yml" ]
environment: environment:
@ -76,7 +75,7 @@ services:
- FROSTFS_NODE_ATTRIBUTE_1=UN-LOCODE:RU LED - FROSTFS_NODE_ATTRIBUTE_1=UN-LOCODE:RU LED
- FROSTFS_NODE_ATTRIBUTE_2=Price:33 - FROSTFS_NODE_ATTRIBUTE_2=Price:33
healthcheck: healthcheck:
test: ["CMD-SHELL", "/healthcheck.sh"] test: ["CMD-SHELL", "/frostfs-cli control healthcheck -q -c /cli-cfg.yml --endpoint \"$$FROSTFS_CONTROL_GRPC_ENDPOINT\""]
interval: 2s interval: 2s
timeout: 1s timeout: 1s
retries: 5 retries: 5
@ -98,13 +97,13 @@ services:
- storage_s03:/storage - storage_s03:/storage
- ./../../vendor/frostfs-cli:/frostfs-cli - ./../../vendor/frostfs-cli:/frostfs-cli
- ./cli-cfg.yml:/cli-cfg.yml - ./cli-cfg.yml:/cli-cfg.yml
- ./healthcheck.sh:/healthcheck.sh
- ./s04tls.crt:/etc/ssl/certs/s04tls.crt - ./s04tls.crt:/etc/ssl/certs/s04tls.crt
- ../nats/client-cert.pem:/etc/frostfs-node/nats.tls.cert - ../nats/client-cert.pem:/etc/frostfs-node/nats.tls.cert
- ../nats/client-key.pem:/etc/frostfs-node/nats.tls.key - ../nats/client-key.pem:/etc/frostfs-node/nats.tls.key
- ../nats/ca-cert.pem:/etc/frostfs-node/nats.ca.crt - ../nats/ca-cert.pem:/etc/frostfs-node/nats.ca.crt
- ./cfg:/etc/frostfs/storage - ./cfg:/etc/frostfs/storage
stop_signal: SIGKILL stop_signal: SIGTERM
stop_grace_period: 15s
env_file: [ ".env", ".storage.env", ".int_test.env" ] env_file: [ ".env", ".storage.env", ".int_test.env" ]
command: [ "frostfs-node", "--config", "/etc/frostfs/storage/config.yml" ] command: [ "frostfs-node", "--config", "/etc/frostfs/storage/config.yml" ]
environment: environment:
@ -116,7 +115,7 @@ services:
- FROSTFS_NODE_ATTRIBUTE_1=UN-LOCODE:SE STO - FROSTFS_NODE_ATTRIBUTE_1=UN-LOCODE:SE STO
- FROSTFS_NODE_ATTRIBUTE_2=Price:11 - FROSTFS_NODE_ATTRIBUTE_2=Price:11
healthcheck: healthcheck:
test: ["CMD-SHELL", "/healthcheck.sh"] test: ["CMD-SHELL", "/frostfs-cli control healthcheck -q -c /cli-cfg.yml --endpoint \"$$FROSTFS_CONTROL_GRPC_ENDPOINT\""]
interval: 2s interval: 2s
timeout: 1s timeout: 1s
retries: 5 retries: 5
@ -138,14 +137,14 @@ services:
- storage_s04:/storage - storage_s04:/storage
- ./../../vendor/frostfs-cli:/frostfs-cli - ./../../vendor/frostfs-cli:/frostfs-cli
- ./cli-cfg.yml:/cli-cfg.yml - ./cli-cfg.yml:/cli-cfg.yml
- ./healthcheck.sh:/healthcheck.sh
- ./s04tls.crt:/tls.crt - ./s04tls.crt:/tls.crt
- ./s04tls.key:/tls.key - ./s04tls.key:/tls.key
- ../nats/client-cert.pem:/etc/frostfs-node/nats.tls.cert - ../nats/client-cert.pem:/etc/frostfs-node/nats.tls.cert
- ../nats/client-key.pem:/etc/frostfs-node/nats.tls.key - ../nats/client-key.pem:/etc/frostfs-node/nats.tls.key
- ../nats/ca-cert.pem:/etc/frostfs-node/nats.ca.crt - ../nats/ca-cert.pem:/etc/frostfs-node/nats.ca.crt
- ./cfg:/etc/frostfs/storage - ./cfg:/etc/frostfs/storage
stop_signal: SIGKILL stop_signal: SIGTERM
stop_grace_period: 15s
env_file: [ ".env", ".storage.env", ".int_test.env" ] env_file: [ ".env", ".storage.env", ".int_test.env" ]
command: [ "frostfs-node", "--config", "/etc/frostfs/storage/config.yml" ] command: [ "frostfs-node", "--config", "/etc/frostfs/storage/config.yml" ]
environment: environment:
@ -162,7 +161,7 @@ services:
- FROSTFS_NODE_ATTRIBUTE_1=UN-LOCODE:FI HEL - FROSTFS_NODE_ATTRIBUTE_1=UN-LOCODE:FI HEL
- FROSTFS_NODE_ATTRIBUTE_2=Price:44 - FROSTFS_NODE_ATTRIBUTE_2=Price:44
healthcheck: healthcheck:
test: ["CMD-SHELL", "/healthcheck.sh"] test: ["CMD-SHELL", "/frostfs-cli control healthcheck -q -c /cli-cfg.yml --endpoint \"$$FROSTFS_CONTROL_GRPC_ENDPOINT\""]
interval: 2s interval: 2s
timeout: 1s timeout: 1s
retries: 5 retries: 5

View file

@ -1,5 +0,0 @@
#!/bin/sh
/frostfs-cli control healthcheck -c /cli-cfg.yml \
--endpoint "$FROSTFS_CONTROL_GRPC_ENDPOINT" |
grep "Health status: READY"