1. 概要MinIO は、GNU Affero General Public License v3.0 に基づいてリリースされた高性能オブジェクト ストレージです。 Amazon S3 クラウド ストレージ サービス API と互換性があります。 MinIO を使用して、機械学習、分析、アプリケーション データ ワークロード向けの高性能インフラストラクチャを構築します。 公式ドキュメント: https://docs.min.io/ 中国語ドキュメント: http://docs.minio.org.cn/docs/ GitHub アドレス: https://github.com/minio/minio/ 2. オーケストレーションとデプロイメントを開始するminio にはチャート パッケージがあるため、既存のチャート パッケージに基づいて変更します。 1) チャートパッケージをダウンロードする helmリポジトリにbitnamiを追加しますhttps://charts.bitnami.com/bitnami helm pull bitnami / minio --バージョン 11.10.16 tar - xf minio - 11.10 .16 .tgz 2) イメージを構築するここではイメージを再構築せず、リモート パッケージをローカル harbor リポジトリにプッシュするだけです。イメージの構築方法がわからない場合は、メッセージを残すか、プライベートメッセージを送信してください。 ドッカープル docker .io / bitnami / minio : 2022.11 .11 - debian - 11 - r0 docker タグ docker .io / bitnami / minio : 2022.11.11 - debian - 11 - r0 myharbor .com / bigdata / minio : 2022.11.11 - debian - 11 - r0 docker push myharbor .com / bigdata / minio : 2022.11 .11 - debian - 11 - r0
docker pull docker .io / bitnami / minio -クライアント: 2022.11.7 - debian - 11 - r0 docker タグ docker .io / bitnami / minio -クライアント: 2022.11.7 - debian - 11 - r0 myharbor .com / bigdata / minio -クライアント: 2022.11.7 - debian - 11 - r0 docker push myharbor .com / bigdata / minio -クライアント: 2022.11.7 - debian - 11 - r0 3) YAMLレイアウトを変更する画像: レジストリ: myharbor.com リポジトリ: bigdata / minio タグ: 2022.11.11 - debian - 11 - r0
クライアントイメージ: レジストリ: myharbor.com リポジトリ: bigdata / minio -クライアント タグ: 2022.11.7 - debian - 11 - r0
# `スタンドアロン`または`分散` モード:分散
# ログインアカウント、パスワード 認証: ルートユーザー:管理者 ルートパスワード: "admin12345"
ステートフルセット: ## @param statefulset .replicaCountゾーンあたりのポッドの数( MinIO & reg ;分散モードのみ) 。偶数かつ ` >= 4 `である必要があります ## レプリカ数: 4
サービス: ## @param service .type MinIO & reg ;サービスタイプ ## タイプ: NodePort ノードポート: API : "31900" コンソール: "31901"
持続性: 有効: true ストレージクラス: "local-minio-stroage" サイズ: 10Gi 地元: -名前:ミニオ- 0 ホスト: "local-168-182-110" パス: "/opt/bigdata/servers/minio/data/data1" -名前:ミニオ- 1 ホスト: "local-168-182-111" パス: "/opt/bigdata/servers/minio/data/data1" -名前:ミニオ- 2 ホスト: "local-168-182-112" パス: "/opt/bigdata/servers/minio/data/data1" -名前:ミニオ- 3 ホスト: "local-168-182-110" パス: "/opt/bigdata/servers/minio/data/data2" { { -範囲.Values .persistence .local } } --- APIバージョン: v1 種類:永続ボリューム メタデータ: 名前: { { .name } } ラベル: 名前: { { .name } } 仕様: ストレージクラス名: { { $ .Values .persistence .storageClass } } 容量: ストレージ: { { $ .Values .persistence .size } } アクセスモード: -一度だけ読み書き可能 地元: パス: { { .path } } ノードアフィニティ: 必須: ノードセレクタ用語: -一致する表現: -キー: kubernetes.io/ホスト名 演算子: 値: - { { 。ホスト} } --- { { -終わり} } 4) 展開を開始する ssh ローカル- 168 - 182 - 110 mkdir - p / opt / bigdata / servers / minio / data / data { 1 .. 2 } ssh ローカル- 168 - 182 - 111 mkdir - p / opt / bigdata / servers / minio / data / data { 1 .. 2 } ssh ローカル- 168 - 182 - 112 mkdir - p / opt / bigdata / servers / minio / data / data { 1 .. 2 }
# --dry-run インストールをシミュレートする # --debug デバッグを有効にする # helm インストール--dry-run --debug minio ./minio -n minio --create-namespace
helm をインストール--debug minio ./minio -n minio --create-namespace 注記 チャート名: minio チャートバージョン: 11.10 .16 アプリバージョン: 2022.11.11
**チャートが展開されるまでしばらくお待ちください**
MinIO & reg ;クラスター内から次の DNS 名のポート経由でアクセスできます。
ミニオ.minio .svc .cluster .local
資格情報を取得するには、次を実行します:
エクスポート ROOT_USER = $ ( kubectl get secret --namespace minio minio -o jsnotallow="{.data.root-user}" | base64 -d) エクスポート ROOT_PASSWORD = $ ( kubectl get secret --namespace minio minio -o jsnotallow="{.data.root-password}" | base64 -d)
MinIO & reg ;に接続するにはクライアントを使用するサーバー:
- MinIO & reg を実行します。クライアント ポッドに、必要なコマンド(例: 'admin info' )を追加します。
kubectl run --namespace minio minio-client \ --rm --tty -i --restart='しない' \ --env MINIO_SERVER_ROOT_USER=$ROOT_USER \ --env MINIO_SERVER_ROOT_PASSWORD=$ROOT_PASSWORD \ --env MINIO_SERVER_HOST=ミニオ \ --image myharbor.com/bigdata/minio-client:2022.11.7-debian-11-r0 -- 管理者情報 minio
MinIO & reg ;にアクセスするにはウェブUI :
- MinIO & reg を入手します。 URL :
NODE_PORT をエクスポートします。 $ ( kubectl get --namespace minio -o jsnotallow="{.spec.ports[0].nodePort}" services minio) NODE_IP をエクスポートします。 $ ( kubectl get nodes --namespace minio -o jsnotallow="{.items[0].status.addresses[0].address}") echo "MinIO® Web URL: http://$NODE_IP:$NODE_PORT/minio" チェック kubectl get pods 、 svc - n minio - wide を実行します。 5) テスト検証Web ログイン: リンクの説明を追加 http://local-168-182-110:31901/ アカウント/パスワード: admin/admin12345 バケットを作成してファイルをアップロードする MCクライアント # メモを表示 ヘルムはミニオのメモを取得します-ミニオ
# クライアントを起動する エクスポート ROOT_USER = $ ( kubectl get secret --namespace minio minio -o jsnotallow="{.data.root-user}" | base64 -d) エクスポート ROOT_PASSWORD = $ ( kubectl get secret --namespace minio minio -o jsnotallow="{.data.root-password}" | base64 -d)
kubectl run --namespace minio minio-client \ --rm --tty -i --restart='しない' \ --env MINIO_SERVER_ROOT_USER=$ROOT_USER \ --env MINIO_SERVER_ROOT_PASSWORD=$ROOT_PASSWORD \ --env MINIO_SERVER_HOST=ミニオ \ --image myharbor.com/bigdata/minio-client:2022.11.7-debian-11-r0 -- 管理者情報 minio 6) アンインストール helm アンインストール minio - n minio
ssh ローカル- 168 - 182 - 110 rm - fr / opt / bigdata / servers / minio / data / data { 1 .. 2 } /* ssh local-168-182-111 rm -fr /opt/bigdata/servers/minio/data/data{1..2}/* ssh local-168-182-112 rm -fr /opt/bigdata/servers/minio/data/data{1..2}/* Git アドレス: https://gitee.com/hadoop-bigdata/minio-on-k8s |