Helm を使用して StarRocks をデプロイする
Helm は Kubernetes のパッケージマネージャーです。Helm Chart は Helm パッケージであり、Kubernetes クラスタ上でアプリケーションを実行するために必要なすべてのリソース定義を含んでいます。このトピックでは、Helm を使用して Kubernetes クラスタ上に StarRocks クラスタを自動的にデプロイする方法について説明します。
始める前に
手順
- 
StarRocks 用の Helm Chart リポジトリを追加します。Helm Chart には StarRocks Operator とカスタムリソース StarRocksCluster の定義が含まれています。 - 
Helm Chart リポジトリを追加します。 helm repo add starrocks https://starrocks.github.io/starrocks-kubernetes-operator
- 
Helm Chart リポジトリを最新バージョンに更新します。 helm repo update
- 
追加した Helm Chart リポジトリを表示します。 $ helm search repo starrocks
 NAME CHART VERSION APP VERSION DESCRIPTION
 starrocks/kube-starrocks 1.8.0 3.1-latest kube-starrocks includes two subcharts, starrock...
 starrocks/operator 1.8.0 1.8.0 A Helm chart for StarRocks operator
 starrocks/starrocks 1.8.0 3.1-latest A Helm chart for StarRocks cluster
 
- 
- 
Helm Chart のデフォルト values.yaml を使用して StarRocks Operator と StarRocks クラスタをデプロイするか、YAML ファイルを作成してデプロイメント設定をカスタマイズします。 - 
デフォルト設定でのデプロイメント 次のコマンドを実行して、1 つの FE と 1 つの BE からなる StarRocks Operator と StarRocks クラスタをデプロイします。 
 ヒント デフォルトの values.yamlは次のように設定されています:- オペレーターポッドは 1/2CPU と 0.8GB RAM
- 1 つの FE は 4GB RAM、4 コア、15Gi ディスク
- 1 つの BE は 4GB RAM、4 コア、1Ti ディスク
 これらのリソースが Kubernetes クラスタで利用できない場合は、カスタム設定でのデプロイメント セクションに進み、リソースを調整してください。 $ helm install starrocks starrocks/kube-starrocks
 # 次の結果が返された場合、StarRocks Operator と StarRocks クラスタがデプロイされています。
 NAME: starrocks
 LAST DEPLOYED: Tue Aug 15 15:12:00 2023
 NAMESPACE: starrocks
 STATUS: deployed
 REVISION: 1
 TEST SUITE: None
- 
- 
カスタム設定でのデプロイメント - 
例えば my-values.yaml という YAML ファイルを作成し、その中で StarRocks Operator と StarRocks クラスタの設定をカスタマイズします。サポートされているパラメータと説明については、Helm Chart のデフォルト values.yaml のコメントを参照してください。 
- 
次のコマンドを実行して、my-values.yaml のカスタム設定で StarRocks Operator と StarRocks クラスタをデプロイします。 helm install -f my-values.yaml starrocks starrocks/kube-starrocks
 デプロイメントには時間がかかります。この間、次のコマンドでデプロイメントのステータスを確認できます。 kubectl --namespace default get starrockscluster -l "cluster=kube-starrocks"次の結果が返された場合、デプロイメントは正常に完了しています。 NAME PHASE FESTATUS BESTATUS CNSTATUS FEPROXYSTATUS
 kube-starrocks running running runningまた、 kubectl get podsを実行してデプロイメントのステータスを確認することもできます。すべての Pod がRunning状態で、Pod 内のすべてのコンテナがREADYであれば、デプロイメントは正常に完了しています。kubectl get podsNAME READY STATUS RESTARTS AGE
 kube-starrocks-be-0 1/1 Running 0 2m50s
 kube-starrocks-fe-0 1/1 Running 0 4m31s
 kube-starrocks-operator-69c5c64595-pc7fv 1/1 Running 0 4m50s
- 
次のステップ
- 
StarRocks クラスタにアクセスする Kubernetes クラスタの内外から StarRocks クラスタにアクセスできます。詳細な手順については、Access StarRocks Cluster を参照してください。 
- 
StarRocks operator と StarRocks クラスタを管理する - 
StarRocks operator と StarRocks クラスタの設定を更新する必要がある場合は、Helm Upgrade を参照してください。 
- 
StarRocks Operator と StarRocks クラスタをアンインストールする必要がある場合は、次のコマンドを実行してください。 helm uninstall starrocks
 
- 
詳細情報
- 
GitHub リポジトリのアドレス: starrocks-kubernetes-operator and kube-starrocks Helm Chart。 
- 
GitHub リポジトリのドキュメントには、さらに詳しい情報が提供されています。例えば: - 
Kubernetes API を介して StarRocks クラスタのようなオブジェクトを管理する必要がある場合は、API reference を参照してください。 
- 
FE と BE ポッドに永続ボリュームをマウントして、FE のメタデータとログ、および BE のデータとログを保存する必要がある場合は、Mount Persistent Volumes by Helm Chart を参照してください。 危険永続ボリュームがマウントされていない場合、StarRocks Operator は emptyDir を使用して FE のメタデータとログ、および BE のデータとログを保存します。コンテナが再起動すると、データは失われます。 
- 
ルートユーザーのパスワードを設定する必要がある場合: - 
StarRocks クラスタをデプロイした後に手動でルートユーザーのパスワードを設定するには、Change root user password HOWTO を参照してください。 
- 
StarRocks クラスタをデプロイする際にルートユーザーのパスワードを自動的に設定するには、Initialize root user password を参照してください。 
 
- 
 
- 
- 
StarRocks 共有データクラスタで CREATE TABLE ステートメントを実行した後に発生する次のエラーを解決する方法。 - 
エラーメッセージ ERROR 1064 (HY000): Table replication num should be less than or equal to the number of available BE nodes. You can change this default by setting the replication_num table properties. Current alive backend is [10001]. , table=orders1, default_replication_num=3
- 
解決策 これは、StarRocks 共有データクラスタに 1 つの BE しか存在せず、1 つのレプリカのみをサポートしているためかもしれません。しかし、デフォルトのレプリカ数は 3 です。PROPERTIES でレプリカ数を 1 に変更することができます。例えば、 PROPERTIES( "replication_num" = "1" )のようにします。
 
- 
- 
Artifact Hub 上で StarRocks によって維持されている Helm Chart のアドレス: kube-starrocks。