|
Kubernetesは、業界で広く普及しているクラウドネイティブのコンテナオーケストレーションおよび管理ツールであり、数多くのプロジェクトで広く利用されています。現在、OpenMLDBのオフラインエンジンとオンラインエンジンの両方がKubernetesベースのデプロイメントを完全にサポートしており、より便利な管理を実現しています。この記事では、Kubernetesベースのオフラインエンジンとオンラインエンジンのデプロイメント戦略を紹介します。 Kubernetes ベースのオフラインエンジンとオンラインエンジンのデプロイメントは、完全に分離された2つのデプロイメント戦略です。ユーザーは、特定のニーズに応じて、Kubernetes ベースのデプロイメントをオフラインエンジンとオンラインエンジンのどちらにも使用できます。オフラインエンジンは Kubernetes ベースのデプロイメントに加えて、 オフライン エンジンは Kubernetes バックエンドを使用します。Sparkタスクをデプロイおよび管理するためのオペレーター を参照してください。以下は、 helm で my-release の spark-operator/spark-operator をインストールします --namespaceデフォルト --名前空間を作成する --ウェブフックを設定する 。有効にする = 真実 デプロイが成功したら、spark-operator によって提供されるコード例を使用して、Spark タスクを正常に送信できるかどうかをテストできます。 HDFSサポートHDFSデータの読み書きを行うKubernetesタスクを設定する場合は、Hadoop設定ファイルを準備し、事前にConfigMapを作成する必要があります。ConfigMapの名前とファイルパスは必要に応じて変更できます。ConfigMapを作成するコマンドの例は次のとおりです。 kubectl で設定マップ hadoop-config を作成します --from-file=/tmp/hadoop/etc/ オフラインエンジンのTaskManager設定ファイルでは、Kubernetes関連の設定を指定できます。関連する設定項目は次のとおりです。
Kubernetesを使用してオフラインエンジンを実行する場合、計算タスクはクラスター上で実行されます。そのため、オフラインストレージのパスをHDFSパスに設定することをお勧めします。そうしないと、タスクのデータの読み取り/書き込みに失敗する可能性があります。TaskManager設定ファイル内の関連項目の設定例を以下に示します。 オフラインデータプレフィックス=hdfs:///foo/bar/ 注: OpenMLDB オフライン エンジンの TaskManager の完全な構成ファイルは、次の場所にあります: https://openmldb.ai/docs/zh/main/deploy/conf.html#taskmanager-conf-taskmanager-properties タスクの提出と管理TaskManagerとKubernetesを設定すると、ローカルモードやYarnモードと同様に、コマンドラインからオフラインタスクを送信できるようになります。これは、SQLコマンドラインクライアントだけでなく、様々な言語のSDKからも利用できます。 たとえば、データのインポート タスクを送信する場合: データを INFILE 'hdfs:///hosts' にロードし、テーブル db1.t1 OPTIONS(delimiter = ','、mode = 'overwrite'); Hadoop ConfigMap の内容を確認します。 kubectl get configmap hdfs-config -o yaml Spark タスク、Pod の内容、ログを表示します。 kubectl SparkApplication を取得kubectl ポッドを取得 オンライン エンジンはKubernetes 上にデプロイされます。プロジェクト倉庫オンライン エンジンの Kubernetes ベースのデプロイメント ソリューションは、スタンドアロンのデプロイメント ツールとして OpenMLDB をサポートしており、そのソース コード リポジトリは次の場所にあります: https://github.com/4paradigm/openmldb-k8s 必要とするこのデプロイメントツールは、Helm Chartsを使用して実装された、OpenMLDBオンラインエンジン用のKubernetesベースのデプロイメントソリューションを提供します。以下のバージョンでテスト済みです(それより低いバージョンは未検証です)。
また、Docker HubからプリコンパイルされたOpenMLDBイメージを使用する場合、現在サポートされているのはOpenMLDBバージョン0.8.2以降のみです。ユーザーは、当社のツールを使用して、他のバージョンのOpenMLDBイメージを独自に作成することもできます(「イメージ作成ツール」セクションを参照)。 準備: ZooKeeper のデプロイすでにZooKeeperをご利用の場合は、この手順をスキップしてください。そうでない場合は、インストールに進んでください。 helm で zookeeper をインストールします。oci://registry-1.docker.io/bitnamicharts/zookeeper --set persistence.enabled=false データを永続化するには、すでに作成されたストレージ クラスを指定できます。 helm で zookeeper をインストールします。oci://registry-1.docker.io/bitnamicharts/zookeeper --set persistence.storageClass=local-storage ZooKeeper パラメータ設定の詳細については、 OpenMLDBの導入リポジトリのソースコードをダウンロードするこのリポジトリのソース コードをダウンロードし、作業ディレクトリをこのリポジトリのルート ディレクトリに設定します。 git クローン https : //github .com /4paradigm/openmldb - k8s .git ZooKeeperアドレスを設定する charts/openmldb/conf/tablet.flags および charts/openmldb/conf/nameserver.flags ファイル内の OpenMLDBの導入Helm では、次のコマンドを使用してワンクリックでデプロイできます。 helm で openmldb をインストールします。/charts/openmldb いくつかの重要な構成項目には注意が必要です。
helm で openmldb をインストールします。/charts/openmldb --set persistence.dataDir.enabled=true --set persistence.dataDir.storageClass=local-storage
helm で openmldb をインストールします。/charts/openmldb --set image.openmldbImage=openmldb-online:0.8.2 予防
ミラー作成ツールデプロイではデフォルトでDocker Hub上のOpenMLDBイメージが使用されますが、ユーザーは独自のローカルイメージを作成することもできます。イメージ作成ツールは、コードリポジトリ( https://github.com/4paradigm/openmldb-k8s )にあるスクリプト このスクリプトは次の 2 つのパラメータをサポートしています。
例えば: cd ドッカー 関連資料
|