data-migate ns fix

This commit is contained in:
azykov@mail.ru
2026-07-20 21:23:28 +03:00
parent dea1346094
commit 8de86e0318
5 changed files with 32 additions and 31 deletions
+8 -8
View File
@@ -4,19 +4,19 @@ metadata:
name: radicale-secrets name: radicale-secrets
namespace: radicale namespace: radicale
stringData: stringData:
users: ENC[AES256_GCM,data:SVe+X2tOO1skqK47Y8HrSmSXTRFhEVEB0my54448d3F/JwgboEG+hwnKcVOpKzXFINkIpvVOi5Y6eZJ4LRiTt69zLT2zG9GVZS5HLA8X2BDAU9Im4vbyQhFX72wBYRAzSQHJYuipgl+iyttaP8VwWoHO/16OY3HPhbxHes6g6Y+JlybCHbzvrw==,iv:KmlVYIrdwUZ+CpGx1k9D66aKdf7UaruQwGSLuCHTQ4M=,tag:t3BmeBQknv4QVzaOM7P3Hw==,type:str] users: ENC[AES256_GCM,data:Jg9bn8OFcstQlKIN7u96FTKvJyDf95dwB0CVc5zQoY0WIddWza5S0NiWa9pLEPHE/XVRIefirYdvEgNTEbkWppx9zXjBSR7XS9AYzFx7g/rBIzUoK3r38Big690WmcnJe5vN/nHmzOcfNvvpHfuQh1zvUYjDN1fxBk90z8RBuk3RDTXrFp7PIg==,iv:9fzE19KuEDlq7p7IwiisnUATTGGt7wtpSL2CwVo6p18=,tag:ORZIZKsmUAjZH+9SNPw3Xg==,type:str]
sops: sops:
age: age:
- recipient: age1nqjekn6qk8uqunyv5cl88nx9g3y8a94h5qr0u53q5dsdsmhr7g2syy6fsd - recipient: age1nqjekn6qk8uqunyv5cl88nx9g3y8a94h5qr0u53q5dsdsmhr7g2syy6fsd
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA4YVN4Q2N3d216LzJrVEwy YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBPMzRKY1BqdHBuc1J4cGFj
SHRSR3EwZUwzbkNEdHhEN1ZaTmkwM2NZL0cwCkh4b2RGYXc3QVhFaE41T0V1YlY4 VVorSUdoemhWNmZjeUVXNVZ3NjJTVVFYdXo0CnIza1hEK0tIVGlrWmFHU2xKWEFt
R01yTEs2SDhZbzVYdDhzMHBtTTdsOGcKLS0tIERtN3U5T054VFQ1bVM0cGUyUzFK UjhuWXNSdlV3dGtDNHA1Qm9pbmV2YXMKLS0tIGlWTjMzWUNMSVhqVDVaUlN5amcz
UTF2cnFwZWtGRGxSblBnZERQT1drcE0KpXz/psOXMH5/Ikl7UQ0W5LTesLv0wOFd dHhiRlBtK2lCaDZwRFVUeTk1MkxXdjgKR9j3TrGtWAkNswZJUGyT1LdWNrZtbch6
UHtwITdFJpXpVmyz3nJPzl/T+c+GKpfjNThcqY1iXYdeubSPFl/Iuw== LK2NfrcSoomWINkd+ltHsSVRmzbAhXcNUEBSUGYXq3g71W6umqE5xA==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
lastmodified: "2026-08-26T10:17:51Z" lastmodified: "2026-08-26T10:17:55Z"
mac: ENC[AES256_GCM,data:eO2TYUDwsaQXvDQgvuXayJ96/bjHnqkQFyc+0JQImTDG3g5JAFzWkyIInXo03IcDf4PrlNL1VKB3jJrO8YrASwfC53r2PqFuggkFCquHPeQQaF5ZkOg3QELsypuccT1mWzfDdX2MPflpc4IoSF5luGvaoA6yZC+4QEBaA1RWfOI=,iv:Cx6Q+EAoNjtDJe8nsK47CWVGI5rYAPS5ZJU2AuLs/Go=,tag:fCwkOJQO4T3BlK2n+/wHKA==,type:str] mac: ENC[AES256_GCM,data:ZsXLvMpFWfDWZw2YmmtRyQ9/+SCeexQgCM11Z17eYMPKvsrf/NUJuLNjpOpr8CLR7WtfIAnEqqB8AC4Zto+lssrw0Df7bkxjhbnLQ7cl0ay743EsaO2Wlk0cyZUy0y2lvZRlyElKMNDjwDYaQT9/ZinwqRZYP3x2dP6MBRRSIFs=,iv:mL2BJL9OIL7Mp2Dujm0uAihxhXN8BWcL6JLxgIq2GLE=,tag:yXT6PaYk21wa6Z10gnchZA==,type:str]
encrypted_regex: ^(data|stringData)$ encrypted_regex: ^(data|stringData)$
version: 3.11.0 version: 3.11.0
@@ -4,20 +4,20 @@ metadata:
name: vaultwarden-secrets name: vaultwarden-secrets
namespace: vaultwarden namespace: vaultwarden
stringData: stringData:
#ENC[AES256_GCM,data:+pADpFTk7bOhY/qxT0Gz1GSKFW38PK0EOn0zm1LD0D4tJ8cd+rvRdF3aNsj1EoKC3ONwAXGScsd9,iv:dHg8i4m/156oFXjeZoBSeHbUHa8jEMKbznQH1sk69aE=,tag:f3ROFD2UsJk2HaVQIUgvgg==,type:comment] #ENC[AES256_GCM,data:Rgz6I3Ko2l/yMpeP9bjG1NT/PBhNZyB/VxIf49GR4wJ5ETblyLFzn+BEEx1XwaBOWmZKHsn2fHVZ,iv:1Jr9BH8P+FaNX7kaVMPL/UF4CwLod0aYH2xB2nyAev4=,tag:v18YCoE8hWRCj77+uygcVw==,type:comment]
ADMIN_TOKEN: ENC[AES256_GCM,data:tvNeaxVILprFBMElHkUGSV/+LQ4lRItPi0adrPDAA2LjsxGjaSRqznWMAskgRPhvFoD9fGfjaduDyJLFLyIx0sQT0QniRWzNPTst8arj6745+pxYs6jfTmt1FmqgrvkDfbV6TQF2tGtKg6qPuw6wQFRLOeA1jA==,iv:LmbjBV7zyzUZw0ryiYtTncDqqm3B/5D+G9UNNEEEQSw=,tag:BBUjxwWeuhvjk1Y7cv/s4g==,type:str] ADMIN_TOKEN: ENC[AES256_GCM,data:9DHptkwxK3O7MOrLA3P9Nbnps/WedhrvZPTkB4XSSsLn8FYK+ruFG5TncwhLXV36f+ZZh5zEZQWlJplZkGcFzx/lkWCxmwRAZ+ksyROo34Vj6NqqA39MVGGzZQ0j+F5RT1cGL0se7s7Gvkw37UKxwsUs+2621Q==,iv:thhQbpQbBY848hzcdZyPEveeyvikAOich8NV6FUZH2o=,tag:WurDduYCj7uQTXOlUXe7jw==,type:str]
sops: sops:
age: age:
- recipient: age109zta6l0cwpkxn5wek82kvauxn6yqrq80rsz4mvu5atdnpcn9pusuvnqk5 - recipient: age109zta6l0cwpkxn5wek82kvauxn6yqrq80rsz4mvu5atdnpcn9pusuvnqk5
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBHRDNxRnFJNXFEcTlHZklJ YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBrM3RzOVFIVUZHbzhRTGo1
cmlzWTR2NFRaUkNVV3pISlpJTEVHSUV5VFIwCnd0NHYvS3A0c21JSTF6V2lvdnJG a3RQME5Pa1Zhb1RPNG9GeldUOU53dTJrNlI0CjdxWGpNR3pLdEsxc2pDeU9LSGtu
ZjNCdk9vOEtKdWJuZnpYWE9kZnQ4YWMKLS0tIDNNMFV0VkJ3Qm5ybFViV2o4cVRt eVZXdlM2ZllXM3VvMTN1b2pSK09XU3MKLS0tIHVlVFlCL3V3VjFDT01Sa1JpQ1pP
aVZHWitsemcrU05td21YK01Kc1NGSE0KRs4ulUT2+qEvEf589RczFZSuK7joxqHo eHZSM2hNY1dzV01GUlRXSldBb3lXMGcKdwRMdWIAwptaIQ/skd/JywxA77hyZasd
X2DIlKkkgcPapPKzQv2wFb3ZOtpACKf28z4zbXzqML7uHcpwBbzrQw== avTldJYiR0NZUEpYiNA1bMqwtzYhImXKqnIXfhwWWUPUin+aWBWnJA==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
lastmodified: "2026-08-26T10:17:52Z" lastmodified: "2026-08-26T10:17:56Z"
mac: ENC[AES256_GCM,data:QiULStHctOOXKs77VrxGlusBxd4+80kJzZx7IPHaQ5jferre8NQx3wl+rQwLJmYiiri1ifVV5PuptQvniFNrs7tH3SH9WowJgvR+FCPbN8H72CtQRppwNj2mzMoik0RN+gXnRAtPYDJdz1L7HKg8COLjGNbwBtBCVnKMn6C2mqA=,iv:OEYB9U9CjVEnRo26UTl1A8WgIC0WZWoc4zABSngm5Aw=,tag:/Iyk7tztL8Vgh/alTBMHBQ==,type:str] mac: ENC[AES256_GCM,data:P73sqCWzj/Yv3UF5Z17pjk/zjfPt7W1AqMbt2S79cflX+Fx1rlj/BM+pFL5gzLSDZN/znNmXjqAnjcx5ZtJALDpZqA6T04Zo7vFQvnm2tCO3kOdzlKLF8ie6BFPUHBkJ0Sucphx0JXmnB2xUKVxnrnAEDvXd1g9yEMDyKEzhiA8=,iv:K3c5GtrOuZMmw1nKo8ha3jUyO1pWIJBYHt5f8YHKKmE=,tag:AHZrX/Q6fDPmQL4cAFiW0Q==,type:str]
encrypted_regex: ^(data|stringData)$ encrypted_regex: ^(data|stringData)$
version: 3.11.0 version: 3.11.0
@@ -4,19 +4,19 @@ metadata:
name: zigbee2mqtt-secrets name: zigbee2mqtt-secrets
namespace: zigbee2mqtt namespace: zigbee2mqtt
stringData: stringData:
secret.yaml: ENC[AES256_GCM,data:aW2sz89BvgbMHHYcTqpKdt1zYmTOXneb5tlPIeWbJyWMt9zJtCn7Jn5uxQCj/1IKt+z7jCQdW6Yb/CPkQo36cVGfz6SLpvLPqfupDd/RDCrjcj6zK1CXY7OPejp6F0CRfFm3D/dMoiU+4ngpSYy7Pde5nuLsCMo9tAKECHk=,iv:+6rzGzV/lcBpmyeowRZgNbNzKWk3/HQAffx62iRJC6Q=,tag:YG8nUAyO1Nlv3LFVj9fpag==,type:str] secret.yaml: ENC[AES256_GCM,data:cNUgISei9wG15ASojdXMGy3cZOYe63Ti4L88qmeaZY23dWFRXywkB5wC/o1oTCeYxpDpUO0yfx+bqpKXyOwgJlGkFi0lgcNlqPybHF65HhGqRQ5SpGfcIhIDNw57eowgcvBzy8jEVRf3r2I9xX7FDFNzrBGTw53IMwkuW7U=,iv:mio+jOHo81XE6E+O/FRQKRDpamRdsrcujH+wwje7Y8Y=,tag:fgFylzYNOAmuJKhxei/4AA==,type:str]
sops: sops:
age: age:
- recipient: age1tu4xgfefvgdda0vn2thaqndq4p9tuydq2ud6qa98tzzgnff6749qnlcx29 - recipient: age1tu4xgfefvgdda0vn2thaqndq4p9tuydq2ud6qa98tzzgnff6749qnlcx29
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBEMUJuVFA4NnI0UjJlNTZx YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB1N2Jsd3NrMndHeWl4aEtN
ZTF0dkJGMWEyd2ZNWjAzV1BDY1RoNmI5TUV3CkhSTGlsbFJTU283VnA4NUNjYk02 Lzg5a29Wb2tpZW9hVlRVNGRMbHFyeElLUkhFCnluWkovM3pxeElCSHZRc1llcDUy
Z3E2T0NSTVBteWt3RVhKTlhnU0tjSlUKLS0tIGc0V1lYUy9mcDJsL0N5bmZRT1Bn REpSQTkyM3pHdWxZZnY0QXg0elBuZVUKLS0tIEJhaTViMzN5NitpMEM4UzlYd1ln
WUZrNDZvREZ3ZFRIWGptVGRhRzMrOWsKoSlR+NGPPWC03CEloEAfThUu5GLRKf55 bG42SGl1T0JOejcrUHd6WkV6aGV6Ym8KQOmzIu57Dve5kTg2gxmNaCEtCkvSHL2q
zc6zi76KdGo4apDZ0Ikd2qjlWL/9IrpFxD7j5zIEsljTnKJZVH7YTg== IGaDJmTavmq2is4js81Huw86NYQCpTnZrBskw182wpENiK9d9SGmPw==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
lastmodified: "2026-08-26T10:17:53Z" lastmodified: "2026-08-26T10:17:57Z"
mac: ENC[AES256_GCM,data:BIOhrUPLRJ0Ltpsi9L4ZSsZzT+I2m7B04FUNqS9GbIOGtMjFxVXSyhfNFDw3D+7Q4oeG4NdTSQ+2wvK88D4QN/szXagZjmY7kHRtF9Hn33vcoz7HVTOAkSnw0gFUvVKmd31yT/yK62HkSFnscQNqyXGglBrsutcYdAf56S8e7iE=,iv:GCIJRqyHJRagXO0eNcKmb9io3TvcKOOlSLVHZRoUS/w=,tag:gY1PBP6vAKkAwL9AVeXngw==,type:str] mac: ENC[AES256_GCM,data:0T7Ozd12aRccYDAtGL7HELU+t6+VndHF80Ogo++V7KsSNxwnvZgX2jFI3ZotYNtdWmEXjeA35MgHgt+ir9hdoGa1FsDSGEUfCLb6ZHir4QsvHkcoygY20+6wcNSpXa/Hj8ytnkTbAj0MM5Jf/MPw+fmY9nTQ8iOVqv/LNXuNJss=,iv:tTEZGLBy/0kYisCx9WpbXeCOXy31cPIySEzEfR8IIlk=,tag:vgKv/1ke/P8N7Eq/67VEyQ==,type:str]
encrypted_regex: ^(data|stringData)$ encrypted_regex: ^(data|stringData)$
version: 3.11.0 version: 3.11.0
+6 -5
View File
@@ -1,11 +1,12 @@
0. the namespace will be the namespace for your target application
1. run the application you need 1. run the application you need
2. wait for its PVs to be created 2. wait for its PVs to be created
3. suspend the application: `kubectl scale deployment/statefulset/... NAME -n NAMESPACE --replicas=0` 3. suspend the application: `kubectl scale deployment/statefulset/... NAME -n NAMESPACE --replicas=0`
4. wait for it to scale down so that the ReadWriteOnce PVs are released (or data-migrate will not be able to mount them) 4. wait for it to scale down so that the ReadWriteOnce PVs are released (or data-migrate will not be able to mount them)
5. look up the destination PVC name you need: `kubectl get pvc NAME -n NAMESPACE` 5. look up the destination PVC name you need: `kubectl get pvc NAME -n NAMESPACE`
6. put the source host(node) and dir and destination PVC name to `install.yaml` 6. put the namespace, source host(node) and dir and destination PVC name to `install.yaml`
7. install the data-migrate: `kubectl create namespace data-migrate && kubectl delete pod data-migrate -n data-migrate --ignore-not-found=true && kubectl apply -f install.yaml` 7. install the data-migrate: `kubectl delete pod data-migrate -n NAMESPACE --ignore-not-found=true && kubectl apply -f install.yaml`
8. run the migration: `kubectl exec data-migrate -n data-migrate -- cp -a /old/. /new/` or anything you need instead of `cp` 8. run the migration: `kubectl exec data-migrate -n NAMESPACE -- cp -a /old/. /new/` or anything you need instead of `cp` or interactive shell `kubectl exec -it data-migrate -n NAMESPACE -- sh` (or `bash` or `zsh`)
9. validate you have everything migrated: `kubectl exec data-migrate -n data-migrate -- ls -laR /new` 9. validate you have everything migrated: `kubectl exec data-migrate -n NAMESPACE -- ls -laR /new`
10. uninstall the data-migrate: `kubectl delete pod data-migrate -n data-migrate` 10. uninstall the data-migrate: `kubectl delete pod data-migrate -n NAMESPACE`
11. resume the application back: `kubectl scale deployment/statefulset/... NAME -n NAMESPACE --replicas=1` 11. resume the application back: `kubectl scale deployment/statefulset/... NAME -n NAMESPACE --replicas=1`
+1 -1
View File
@@ -2,7 +2,7 @@ apiVersion: v1
kind: Pod kind: Pod
metadata: metadata:
name: data-migrate name: data-migrate
namespace: data-migrate namespace: <NAMESPACE_YOU_WANT_TO_MIGRATE_TO>
spec: spec:
restartPolicy: Never restartPolicy: Never
containers: containers: