Kubernates集積Harborの主な考え方と操作
4250 ワード
Kubernates集積Harborの主な考え方と操作を紹介した.
文書ディレクトリ前置作業 主な考え方 の詳細手順は、以下の である. Step 1、node上でdocker loginを実行してHarbor にログインする Step 2、`secret-harbor-dev` と命名された鍵を生成する Step 3、鍵の表示 Step 4、yamlファイルにおいて`imagePullSecrets`によりミラー操作をプルするために使用する鍵 を指定する.
前置き作業 Kubernatesクラスタ をインストール Harbor を取り付ける
主な考え方は、harbor倉庫pullからミラーリングできるが、k 8 s nodeのdockerを操作する.しかし、k 8 sがpodを作成した場合、harbor倉庫からpullすることはできません.この場合、harborログインユーザ情報に基づいて、k 8 sにおいてリソースタイプ yamlファイルに Harborプロジェクトとユーザー:デフォルトのプロジェクトは 詳細な手順は次のとおりです.
Step 1、nodeでdocker loginを実行してHarborにログインする
コマンドを実行してログインステータスを表示します.
Step 2、生成鍵(secret)、名前は
Step 3、鍵の表示
Step 4、yamlファイルでは、
注:1)
これにより、yamlファイルを実行する際にnodeノード上のdockerは
文書ディレクトリ
前置き作業
主な考え方
Secret
(秘密鍵)を作成する必要がある.imagePullSecrets
パラメータを追加し、リモートウェアハウスpullミラーリング時にユーザ情報を送信して認証するための1つ以上のSecret
を指定します.library
で、デフォルトはpublic
で公開されています.つまり、harborはすべてのユーザーがpullすることができます.もちろん、必要に応じて独自のプロジェクトを作成し、プロジェクトをprivate
プライベートに設定することを強くお勧めします.これにより、プロジェクトの下のメンバー(デフォルトはadminユーザーを含む)だけがアクセスできます.メンバーの役割には、- Master
:プロジェクト管理者、ミラーのアップロード、ダウンロード、削除、表示の権限の3つがあります.- Developer
:開発者は、ミラー権限の表示、アップロード、ダウンロードしかできません.- Guest
:訪問者は、ミラーを表示およびダウンロードする権限しかありません.- Limited Guest
制限された訪問者Step 1、nodeでdocker loginを実行してHarborにログインする
# admin - harbor
# Harbor12345 - harbor
# harbor.domain.com - harbor /IP
docker login -uadmin -pHarbor12345 harbor.domain.com
コマンドを実行してログインステータスを表示します.
[root@dev ~]# cat ~/.docker/config.json
{
"auths": {
"harbor.domain.com": {
"auth": "Y2N4...MjM="
}
}
}
Step 2、生成鍵(secret)、名前は
secret-harbor-dev
# :
# secret-harbor - ,
# --docker-server - docker
# --docker-username - docker
# --docker-password - docker
# -n - namespace, default
kubectl create secret docker-registry secret-harbor \
--docker-server=harbor.domain.com \
--docker-username=admin \
--docker-password=Harbor12345
Step 3、鍵の表示
[root@dev244 ~]# kubectl get secret
NAME TYPE DATA AGE
secret-harbor kubernetes.io/dockerconfigjson 1 22s
Step 4、yamlファイルでは、
imagePullSecrets
により、ミラーリング操作で使用する鍵を引くよう指定する# imagePullSecrets - ,
imagePullSecrets:
- name: secret-harbor
注:1)
Deployment
を定義するyamlファイルでは、パラメータレベルに注意してspec.template.spec.imagePullSecrets
に設定します.2)現在のリソースのnamespace
は、鍵と一致しなければならない.これにより、yamlファイルを実行する際にnodeノード上のdockerは
secret-harbor
を使用してHarbor認証を取得し、Harborからミラーを引き出すことができます.