サーバー上でホストするオブジェクト ストレージ ソフトウェアをお探しですか?
そうですか。
AWS S3 など、ここで言及したクラウドベースのオブジェクト ストレージはたくさんあります。 ただし、サーバーでデータをホストする必要がある場合は、MinIO がデータ センター内で役立ちます。
ミニIO は、オープンソースで人気のある分散オブジェクト ストレージ ソフトウェアであり、S3 と互換性があります。 エンタープライズ対応で、高いパフォーマンスで知られています。
MinIO は、単純な Web アプリケーションから、分析および機械学習アプリケーション用の大規模なデータ分散ワークロードまで使用できます。 多くのユースケースで役立ちます。
- 標準のフラット ファイル ストレージ
- マルチクラウドのデータ配信
- 災害からの回復
- データ分析
かさばるソフトウェアですか?
いいえ、約 50MB 程度で、Kubernetes に適しています。 データとメタデータをオブジェクトとして書き込みます。 これにより、追加のデータベースやソフトウェアを使用してメタデータを保存し、パフォーマンスを向上させる必要がなくなります。
以下のアーキテクチャは公式サイトから。
注目に値する機能のいくつかを見てみましょう。
- 高性能 – タイトルは言う。 〜170GB /秒の速度で読み取り/書き込みが可能です。 それは沢山!
- スケーラブル – 必要に応じてクラスタリングとスケーリングを行います
- クラウドネイティブ
- 消去コード方式によるデータ保護
- AES-CBC、AES-256-GCM、ChaCha20 などの複数の暗号化をサポート
- 一般的な KMS との互換性
- アプリケーションとユーザー ID
- イベント通知
- etcd と CoreDNS を使用したフェデレーション
MinIO は、ソフトウェア定義ストレージに適しています。 設定方法を見てみましょう。
MinIO サーバーのインストール
あなたはできる インストール Linux、Windows、macOS、および Kubernetes を介して。 ソースからビルドしたいですか? もちろん、Golang がインストールされていれば実行できます。
このデモンストレーションでは、ホストされている CentOS にインストールします。 鎌寺.
- サーバーにログインする
- 目的のファイル システムの下にフォルダーを作成します。 多分ミニオサーバー
- 新しく作成されたフォルダーに移動し、以下の wget コマンドを実行します
wget https://dl.min.io/server/minio/release/linux-amd64/minio
バイナリ ファイルがダウンロードされ、次のようになります。
-rw-r--r-- 1 root root 48271360 Oct 18 21:57 minio
chmod コマンドでファイルを実行可能にする
chmod 755 minio
MinIO をサーバーとして起動しましょう。
./minio server /data &
上記の /data は、MinIO がオブジェクトを格納するファイル システムです。
起動は速く、以下のように起動情報が表示されます。
Endpoint: http://xx.71.141.xx:9000 http://127.0.0.1:9000 AccessKey: minioadmin SecretKey: minioadmin Browser Access: http://xx.71.141.xx:9000 http://127.0.0.1:9000 Command-line Access: https://docs.min.io/docs/minio-client-quickstart-guide $ mc alias set myminio http://xx.71.141.xx:9000 minioadmin minioadmin Object API (Amazon S3 compatible): Go: https://docs.min.io/docs/golang-client-quickstart-guide Java: https://docs.min.io/docs/java-client-quickstart-guide Python: https://docs.min.io/docs/python-client-quickstart-guide JavaScript: https://docs.min.io/docs/javascript-client-quickstart-guide .NET: https://docs.min.io/docs/dotnet-client-quickstart-guide Detected default credentials 'minioadmin:minioadmin', please change the credentials immediately using 'MINIO_ACCESS_KEY' and 'MINIO_SECRET_KEY'
デフォルトの資格情報を使用してブラウザーで MinIO にアクセスしましょう – minioadmin:minioadmin
インターフェースは非常にすっきりしていますが、何よりもまず、デフォルトの資格情報を変更してリスクを明らかにしましょう。 ブラウザを介して管理者の資格情報を変更するオプションはありませんが、環境変数があります。
MinIO の既定の資格情報を変更するには、以下のようにアクセスと秘密鍵をエクスポートし、MinIO を開始します。
export MINIO_ACCESS_KEY=etechjp.com export MINIO_SECRET_KEY=geekpassword ./minio server /data &
これで、デフォルトの資格情報検出の警告について不平を言うべきではなくなりました。
いくつかのファイルをアップロードしてみましょう。
- 右下の+アイコンをクリックしてバケットを作成
- テストファイルをアップロードし、ブラウザですぐに表示
そして、サーバー上で
[[email protected] geekflare]# ls -ltr total 4 -rw-r--r-- 1 root root 11 Oct 19 11:09 MinIO-Test.txt [[email protected] geekflare]#
ブラウザのファイル共有ボタンをクリックすると、共有可能なリンクと有効期限を設定するオプションが表示されます。
MinIO クライアント
MinIO クライアントは、ストレージを管理できる aws-cli 以上のものです。 クライアントは、Windows、macOS、および Linux で利用できます。
Linux にインストールするには、次のコマンドを実行します。
wget https://dl.min.io/client/mc/release/linux-amd64/mc chmod 755 mc
mc コマンドを実行して、コマンド ヘルプを表示します。
[[email protected] ~]# ./mc NAME: mc - MinIO Client for cloud storage and filesystems. USAGE: mc [FLAGS] COMMAND [COMMAND FLAGS | -h] [ARGUMENTS...] COMMANDS: alias set, remove and list aliases in configuration file ls list buckets and objects mb make a bucket rb remove a bucket cp copy objects mirror synchronize object(s) to a remote site cat display object contents head display first 'n' lines of an object pipe stream STDIN to an object share generate URL for temporary access to an object find search for objects sql run sql queries on objects stat show object metadata mv move objects tree list buckets and objects in a tree format du summarize disk usage recursively retention set retention for object(s) legalhold manage legal hold for object(s) diff list differences in object name, size, and date between two buckets rm remove objects version manage bucket versioning ilm manage bucket lifecycle encrypt manage bucket encryption config event manage object notifications watch listen for object notification events undo undo PUT/DELETE operations policy manage anonymous access to buckets and objects tag manage tags for bucket and object(s) replicate configure server side bucket replication admin manage MinIO servers update update mc to latest release GLOBAL FLAGS: --autocompletion install auto-completion for your shell --config-dir value, -C value path to configuration folder (default: "/root/.mc") --quiet, -q disable progress bar display --no-color disable color theme --json enable JSON lines formatted output --debug enable debug output --insecure disable SSL certificate verification --help, -h show help --version, -v print the version TIP: Use 'mc --autocompletion' to enable shell autocompletion VERSION: RELEASE.2020-10-03T02-54-56Z [[email protected] ~]#
mc コマンドでアップロードしたファイルを一覧表示してみましょう。
まず、管理したいストレージにエイリアスを設定する必要があります。
[[email protected] ~]# ./mc alias set minio http://xx.71.141.xx:9000/ etechjp.com geekpassword Added `minio` successfully. [[email protected] ~]#
- minio は別名です。 これは好きなように変更できます。
- HTTP エンドポイントを実際のものに変更します
- アクセス権と秘密鍵を自分のものに変更する
リストするには、次のように ls コマンドを使用します。
[[email protected] ~]# ./mc ls --recursive minio [2020-10-19 11:09:06 UTC] 11B etechjp.com/MinIO-Test.txt [[email protected] ~]#
偉大な。 できます!
クライアントを通じて文字通りすべてのことを行うことができます。 MinIO クラウド ストレージだけでなく、GCS、AWS S3、Azure も管理できます。
これをチェックしてください クライアント クイック スタート ガイド 詳細については。
MinIO SDK
アプリケーション スタックによっては、SDK を使用してプログラムでオブジェクト ストレージを操作できます。 Go、Python、Node.js、.NET、Haskell、Java をサポートしています。
MinIO ゲートウェイ
MiniIO ゲートウェイを S3、Azure、NAS、HDFS に追加して、MinIO ブラウザーとディスク キャッシュを利用します。
結論
プライベート、ハイブリッド、またはマルチクラウドのオブジェクト ストレージを探している場合は、MinIO が有望です。 試してみると、きっと気に入るはずです。 物事をテストするために、あなたは得ることができます カマテラのMinIO VM または任意のクラウド サーバーに自分自身をインストールします。