1

ローカルの microk8s インストールを制御するために kubectl を使用しています。GKE ダッシュボードから利用できるマシンのばかげたプロビジョニングを避けるために、ローカルの Google クラウド シェル接続を構成しました。

現在、kubectlmicrok8s と GKE でコマンドがランダムに実行されているようです。これを修正するだけでなく、将来このシナリオを禁止したいと考えています。

別の環境を参照できる可能性は、リモート クラスターを指定する方法を提供しない CLIkubectlの概念に明らかに基づいている恐ろしい考えです。kubectl本番システムで偶発的な変更が発生する可能性があります。筋金入りの 12 要素エバンジェリストでさえ、開発用にローカル クラスターをインストールします。

4

2 に答える 2

0

--contextおよび--namespaceオプションをkubectlコマンドに指定/追加してkubectl、任意のクラスターに対して実行できます。これは、複数のクラスターを同時に前後に操作する場合に便利です。

kubectl --cluster=my_cluster --namespace=my_namespace get pods

注: 環境に合わせてクラスターと名前空間の名前を変更してください。

kubectl のその他のオプションは次のとおりです。

~/git/kubernetes (master) $ kubectl options
The following options can be passed to any command:

  --alsologtostderr=false: log to standard error as well as files
  --as='': Username to impersonate for the operation
  --as-group=[]: Group to impersonate for the operation, this flag can be repeated to specify multiple groups.
  --cache-dir='/Users/robertrt/.kube/http-cache': Default HTTP cache directory
  --certificate-authority='': Path to a cert file for the certificate authority
  --client-certificate='': Path to a client certificate file for TLS
  --client-key='': Path to a client key file for TLS
  --cluster='': The name of the kubeconfig cluster to use
  --context='': The name of the kubeconfig context to use
  --insecure-skip-tls-verify=false: If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure
  --kubeconfig='': Path to the kubeconfig file to use for CLI requests.
  --log-backtrace-at=:0: when logging hits line file:N, emit a stack trace
  --log-dir='': If non-empty, write log files in this directory
  --log-flush-frequency=5s: Maximum number of seconds between log flushes
  --logtostderr=true: log to standard error instead of files
  --match-server-version=false: Require server version to match client version
-n, --namespace='': If present, the namespace scope for this CLI request
  --request-timeout='0': The length of time to wait before giving up on a single server request. Non-zero values should contain a corresponding time unit (e.g. 1s, 2m, 3h). A value of zero means don't timeout requests.
-s, --server='': The address and port of the Kubernetes API server
  --stderrthreshold=2: logs at or above this threshold go to stderr
  --token='': Bearer token for authentication to the API server
  --user='': The name of the kubeconfig user to use
-v, --v=0: log level for V logs
  --vmodule=: comma-separated list of pattern=N settings for file-filtered logging
于 2019-06-16T21:01:00.703 に答える