Docker によってデプロイされた Nexus は K8S に移行されます

1. 環境紹介

1.1ネクサスバージョン

ネクサスのバージョンは3.28.1です

docker pull sonatype/nexus3:3.28.1

1.2 Kubernetes環境

ここでの kubernetes クラスターは、Alibaba Cloud の ACK コンテナー サービスを使用し、Alibaba Cloud の NAS をストレージ デバイスとして使用し、PersistentVolumeClaim (ストレージ クレーム) を使用して StorageClass (ストレージ クラス) を関連付け、クラスター全体のデータ永続性ソリューションとして Persistent Volume (ストレージ ボリューム) を動的に生成します。

1.3 データの移行

1. Docker によってマウントされた Nexus データ ストレージ パスを見つけます

这里是容器内nexus数据存放目录,如果没有将该目录挂载到docker宿主机目录的话需要将这一个目录整个备份出去,可以使用以下指令将docker容器内文件或目录同步到宿主机
docker cp <container_name>:/opt/sonatype/sonatype-work/nexus3 /nexus-data-bak

/opt/sonatype/sonatype-work/nexus3

ここに画像の説明を挿入

2. 移行を容易にするために、nexus データ ディレクトリ全体を圧縮します。データの量が大きい場合は、バックグラウンドで圧縮コマンドを実行できます。大きなファイルを圧縮する場合は、tar+pigz コマンドを使用して圧縮することをお勧めします
。圧縮サイクルを短縮します。filezilla
sftp デスクトップ ツールを使用してソース サーバーからデータを転送することもできます。ディレクトリはローカル マシンにダウンロードされ、ローカル マシンからターゲット サーバーにアップロードされます。

ここに画像の説明を挿入

## blobs/ 代表要压缩的目录
## /temp-nexus/nexus_blobs_bak/nexus-blods-bak.tar.gz 代表要将压缩后的文件存放在那个路径以及压缩后的文件名
nohup tar -cvf - blobs/ |pigz > /temp-nexus/nexus_blobs_bak/nexus-blods-bak.tar.gz

1.4 データ復旧

1. K8S に関連する NAS ボリュームをマウントする Linux サーバーを見つけます。

挂载地址及挂载命令可以去到阿里云NAS控制台查看
mount -t nfs -o vers=3,nolock,proto=tcp,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport xxxxx.cn-shanghai.nas.aliyuncs.com:/k8s/k8s-pod-pvc-xxxxx-xxx-xxxx-xxxxx-xxxxxxxx/nexus-data /temp_nexus/

2. k8s によってデプロイされた nexus ポッドのコピーの数を 0 にスケールし、nas に移動して nexus データ ディレクトリをクリアします。
ここに画像の説明を挿入

3. 圧縮ファイルを、k8s によってデプロイされたネクサスにマウントされた NAS ボリュームの対応するパスにコピーして解凍しますデータ
量が多い場合、セッション ウィンドウの切断を避けるために、バックグラウンドで解凍コマンドを実行することを選択できます4.解凍
後のディレクトリ階層は以下のとおりです
ここに画像の説明を挿入
5. nexus ディレクトリの権限を設定します (必要に応じて、起動時にエラーが報告されます)

chown -hR 200 ./nexus-data/

6. ポッドの特権コンテナを開きます。
ここに画像の説明を挿入
7. k8s にデプロイされた nexus ポッドを開始します。
ここに画像の説明を挿入
8. データとアカウントの権限を確認します
。 ログを確認し、ポッドのステータスが完全に実行されていたら、nexus アクセス アドレスを開いてアカウントでログインします。古いネクサスで、アカウントにデータがあるかどうかを確認します
ここに画像の説明を挿入
。正常にログインでき、古いデータが存在します。その後、パッケージを手動でアップロードして試します。移行が成功したことが証明されます。

おすすめ

転載: blog.csdn.net/Habo_/article/details/131397366