public_docs/vault_secrets_storage_relation_departed_workaround.md

38 lines
1.4 KiB
Markdown
Raw Permalink Normal View History

1. Get to the relation's details:
juju run --unit ceph-osd/4 'relation-ids secrets-storage'
will get you the relation id.
juju run --unit ceph-osd/4 'relation-get -r 311 - vault/0'
juju run --unit ceph-osd/4 'relation-get -r 311 - vault/1'
juju run --unit ceph-osd/4 'relation-get -r 311 - vault/2'
You need to query all the units (maybe just the leader is enough), to see which relation stores the `ceph-osd/4_role_id` and `4_token_id` variables.
1. you have the token, need to find the last-token.
Install sqlite3 to be able to browse the unit's KV store (`apt install sqlite3`, not necessarily on the node, if that's not allowed).
then fetch the last-token:
juju ssh ceph-osd/4 sudo -i
apt install sqlite3
sqlite3 /var/lib/juju/agents/unit-ceph-osd-4/charm/.unit-state.db 'select data from kv where key="last-token";'
Probably there are easier ways to get this data, but this works for sure.
1. Match and update the last token id with the current one:
juju run --unit vault/2 -- 'relation-set -r 311 ceph-osd/4_token="WHAT you got from the DB"'
e.g.:
2022-03-14 17:34:42 +00:00
juju run --unit vault/2 -- relation-set -r 311 ceph-osd/4_token='"s.bk3GMbPxKwgGXyODysVjihuA"'
Pay attention to the escape characters and dots, etc.
4. make sure you got the correct relation data updated.
juju run --unit ceph-osd/4 'relation-get -r 311 - vault/2'