我希望从旧的GKE集群迁移到新的Alias IP,但是我需要将状态集及其PersistentVolumeClaims迁移到新的GKE集群。我似乎在任何地方都没有找到一个好的答案,说明它是可能的,但我想只要它在同一地区内就应该。两个新旧k8s集群仍位于同一GCP项目和同一区域中。
我已经搜索了,但是找不到答案,而且我不知道如何在不创建新PV的情况下重新创建有状态集。
答案 0 :(得分:0)
您可能想研究Volume Snapshots and volume snapshot content的方向。
类似于API资源PersistentVolume和 PersistentVolumeClaim用于为用户和 管理员,VolumeSnapshotContent和VolumeSnapshot API资源 提供了为用户和管理员创建卷快照的方法。
VolumeSnapshotContent是从快照中的卷获取的快照 由管理员配置的群集。它是一个 就像PersistentVolume一样,群集中的资源就是一个群集 资源。
VolumeSnapshot是用户对卷进行快照的请求。它 与PersistentVolumeClaim相似。
卷快照内容示例:
apiVersion: snapshot.storage.k8s.io/v1alpha1 kind: VolumeSnapshotContent metadata: name: new-snapshot-content-test spec: snapshotClassName: csi-hostpath-snapclass source:
name: pvc-test
kind: PersistentVolumeClaim volumeSnapshotSource:
csiVolumeSnapshotSource:
creationTime: 1535478900692119403
driver: csi-hostpath
restoreSize: 10Gi
snapshotHandle: 7bdd0de3-aaeb-11e8-9aae-0242ac110002
VolumeSnapshot示例:
apiVersion: snapshot.storage.k8s.io/v1alpha1
kind: VolumeSnapshot
metadata:
name: new-snapshot-test
spec:
snapshotClassName: csi-hostpath-snapclass
source:
name: pvc-test
kind: PersistentVolumeClaim
Volume Snapshot Alpha for Kubernetes在v1.12中引入。此功能允许创建/删除卷快照,并能够使用Kubernetes API从本地创建快照中的新卷。