使用 px 代理 Windows 10、powershell、cmd、kubectl

使用 px 代理 Windows 10、powershell、cmd、kubectl

背景:我在使用 win10 的企业网络中,我被指示使用 px 代理,并且必须使用 kubectl 连接到在云提供商中运行的集群。我有 kubeconfig,位于 .kube 目录中。当我使用

kubectl get no

我收到错误。另一方面,如果我使用 Lens 并在设置中添加代理 localhost:port,它及其终端就可以正常工作,我可以按预期使用 kubectl。我可以使用 describe、apply、top 以及我习惯的任何其他命令

如果我使用 powershell、cmd、git bash kubectl,则会失败并出现错误,提示无法访问集群,使用 curl 访问 api 服务器也是如此。

kubectl 在我的路径中,我没有 Windows 设置的管理员权限。我老板的回复是“它在我的计算机上运行正常”和“每个新加入的人都会遇到问题”,这更奇怪,因为我们是一个 2 人团队,我 4 周前加入,其中两周他都在度假,而且在不同的时区。

问题:将 http_proxy 环境变量设置为 px 代理地址是否会使 kubectl、curl 和其他 cli 工具能够使用 px 代理?

答案1

注意:我没有 K8 甚至 docker。我提供的信息是我在最近一次会议上提出的。

正如我的评论。

您是说,您已经设置了环境变量,也就是说,设置了 kubeconfig、文件或类似的东西......

apiVersion: v1
clusters:
- cluster:
    proxy: http://proxy-address:port

...也:

$env:http_proxy = "http://px-proxy-address:port"

...在 CLI 或您的代码中,或者只是将其添加到您的 PS 配置文件中。

Set-Item Env:http_proxy "http://px-proxy-address:port"
Set-Item Env:https_proxy "http://px-proxy-address:port"
Set-Item Env:ftp_proxy "http://px-proxy-address:port"

此外,访问几乎任何 https 站点都要求您在代码中设置适当的安全设置。

意思是这个...

# Required for use with web SSL sites
[Net.ServicePointManager]::
SecurityProtocol = [Net.ServicePointManager]::
SecurityProtocol -bor [Net.SecurityProtocolType]::
Tls12

... 或这个:

$AllProtocols = [System.Net.SecurityProtocolType]'Ssl3,Tls,Tls11,Tls12'
[System.Net.ServicePointManager]::SecurityProtocol = $AllProtocols

相关内容