web-dev-qa-db-ja.com

kubectl-コマンドラインを介してサービス仕様タイプをLoadBalancerに編集する方法

タイプclusterIPのk8sサービスがあります。CLIを使用して以下の構成を変更する必要があります。

  1. httpポートからhttpsポート
  2. ポート番号
  3. ロードバランサーへのタイプ

それを行う方法はありますか?

既存のポートを削除することはできませんが、canHTTPポートを追加し、 kubectl patch を使用してタイプを変更することもできます

例:

kubectl patch svc <my_service> -p '{"spec": {"ports": [{"port": 443,"targetPort": 443,"name": "https"},{"port": 80,"targetPort": 80,"name": "http"}],"type": "LoadBalancer"}}'

コマンドラインでJSONを作成したくない場合は、次のようなyamlファイルを作成します。

ports:
  - port: 443
    targetPort: 443
    name: "https"
  - port: 80
    targetPort: 80
    name: "http"
  type: LoadBalancer

それから:

kubectl patch svc <my_service> --patch "$(cat patch.yaml)"
8
jaxxstorm

kubectl edit svc <service_name> -n <namespace>

i-サービスを編集します

ESC、:wq-サービスを更新する

使用する kubectl patchプロンプトが必要ない場合。

3
AvnishSingh