使用 kubectl
Kubectl 内置了对管理上下文的支持。在~/.kube/config
文件中添加上下文后,手动或通过aws eks update-kubeconfig
,您可以使用config
子命令在上下文之间切换。
要查看所有已保存的上下文并突出显示当前上下文:
kubectl config get-contexts
仅查看当前上下文:
kubectl config current-context
切换到另一个上下文
kubectl config use-context <context-name>
要删除上下文:
kubectl config delete-context <context-name>
具体配置文件
有时可能会出现所有集群连接不能在同一个 kube 配置文件中的情况,而是用户在每个集群中都有单独的 kube 配置文件。
要kubectl
使用特定配置运行,可以使用--kubeconfig
参数:
kubectl --kubeconfig ./someConfig -n someNs get pods
壳牌别名
当从 Linux shell 或 windows powershell 运行时,也可以使用“别名”。
Linux Bash 示例:
使用 bashalias
将命令定义为别名:
# Define a kubectl alias for specific cluster
alias myCluster="kubectl --kubeconfig ./myClusterConfig"
# Define a kubectl alias for specific cluster and specific namespace
alias myClusterNs="kubectl --kubeconfig ./myClusterConfig -n myNamespace"
用法:
# Using cluster kubectl alias
myCluster -n myNamespace get pods
# Using cluster kubectl alias with namespace
myClusterNs get pods
可以保存别名定义以~/.profile
供永久使用。
Windows Powershell 示例:
在 Windows Powershell 中,函数可以定义如下:
function myCluster { kubectl --kubeconfig .\myClusterConfig $args }
并用作:
myCluster -n myNamespace get pods
-n <namespace>
也可以在函数定义之前指定更多参数,例如$args
。确保在 Windows 上正确引用 (") 带有特殊字符的参数。