如何通过 VPN 或 HTTP/HTTPS 代理使用 minikube

minikube 需要通过 HTTP、HTTPS 和 DNS 协议访问互联网。

代理

如果需要使用 HTTP 代理访问 Internet,则可能需要使用环境变量将代理连接信息传递给 minikube 和 Docker:

  • HTTP_PROXY - 您的 HTTP 代理的 URL
  • HTTPS_PROXY - HTTPS 代理的 URL
  • NO_PROXY - 不应通过代理的主机的逗号分隔列表。

这里的 NO_PROXY 变量很重要:如果不设置它,minikube 可能无法访问 VM 内的资源。minikube 使用两个 IP 范围,不应通过代理:

  • 192.168.59.0/24:由 minikube VM 使用。可通过以下方式为某些管理程序配置--host-only-cidr
  • 192.168.39.0/24:由 minikube kvm2 驱动程序使用。
  • 192.168.49.0/24:由 minikube docker 驱动程序的第一个集群使用。
  • 10.96.0.0/12:由服务集群 IP 使用。可配置通过 --service-cluster-ip-range

一个重要的注意事项:如果非 Kubernetes 应用程序(例如 Firefox 或 Chrome)需要 NO_PROXY,您可能需要专门将 minikube IP 添加到逗号分隔的列表中,因为它们可能不理解 IP 范围(#3827)。

示例用法

macOS 和 Linux

export HTTP_PROXY=http://<proxy hostname:port>
export HTTPS_PROXY=https://<proxy hostname:port>
export NO_PROXY=localhost,127.0.0.1,10.96.0.0/12,192.168.59.0/24,192.168.39.0/24minikube start

复制

要使导出的变量永久化,请考虑将声明添加到 ~/.bashrc 或存储用户设置的环境变量的任何位置。

视窗

set HTTP_PROXY=http://<proxy hostname:port>
set HTTPS_PROXY=https://<proxy hostname:port>
set NO_PROXY=localhost,127.0.0.1,10.96.0.0/12,192.168.59.0/24,192.168.39.0/24minikube start

复制

要永久设置这些环境变量,请考虑将它们添加到您的系统设置中或使用setx

故障排除

无法缓存 ISO… 连接被拒绝

Unable to start VM: unable to cache ISO: https://storage.googleapis.com/minikube/iso/minikube.iso:
failed to download: failed to download to temp file: download failed: 5 error(s) occurred:* Temporary download error: Get https://storage.googleapis.com/minikube/iso/minikube.iso:
proxyconnect tcp: dial tcp <host>:<port>: connect: connection refused

复制

此错误表示HTTPS_PROXY 或HTTP_PROXY 定义的host:port 组合不正确,或者代理不可用。

无法拉图像…Client.Timeout 在等待标题时超出

Unable to pull images, which may be OK:failed to pull image "k8s.gcr.io/kube-apiserver:v1.13.3": output: Error response from daemon:
Get https://k8s.gcr.io/v2/: net/http: request canceled while waiting for connection
(Client.Timeout exceeded while awaiting headers)

复制

此错误表示在 VM 中运行的容器运行时无法访问 Internet。验证您是否将适当的值传递给--docker-env HTTPS_PROXY

x509:由未知机构签署的证书

[ERROR ImagePull]: failed to pull image k8s.gcr.io/kube-apiserver:v1.13.3:
output: Error response from daemon:
Get https://k8s.gcr.io/v2/: x509: certificate signed by unknown authority

复制

这是因为 minikube VM 卡在一个代理之后,该代理重写 HTTPS 响应以包含其自己的 TLS 证书。该解决方案是将代理证书安装到被复制到虚拟机在启动时的位置,以便可以进行验证。

向您的 IT 部门索取相应的 PEM 文件,并将其添加到:

~/.minikube/files/etc/ssl/certs

或者

~/.minikube/certs

然后运行minikube deleteminikube start

下载二进制文件:proxyconnect tcp:tls:收到长度为 20527 的超大记录

提供的值HTTPS_PROXY可能不正确。验证此值是否指向 HTTP 代理而不是 HTTPS 代理。

虚拟专用网

minikube 需要从主机访问以下 IP 范围:

  • 192.168.59.0/24:由 minikube VM 使用。可通过以下方式为某些管理程序配置--host-only-cidr
  • 192.168.39.0/24:由 minikube kvm2 驱动程序使用。
  • 10.96.0.0/12:由服务集群 IP 使用。可配置通过 --service-cluster-ip-range

不幸的是,许多 VPN 配置通过加密隧道将数据包路由到这些目的地,而不是允许数据包进入 minikube 虚拟机。

可能的解决方法

  1. 如果您有访问权限,请在您的 VPN 软件中将上述 IP 范围列入白名单
  2. 在您的 VPN 软件中,选择类似于“使用 VPN 时允许本地 (LAN) 访问” (Cisco VPN 示例)的选项
  3. 您可能很幸运地为--host-only-cidr--service-cluster-ip-range标志选择了替代值。
  4. 关闭 VPN

参考链接:https://minikube.sigs.k8s.io/docs/handbook/vpn_and_proxy/

minikube配置使用代理相关推荐

  1. vue脚手架解决跨域问题-------配置反向代理

    vue脚手架解决跨域问题-------配置反向代理 参考文章: (1)vue脚手架解决跨域问题-------配置反向代理 (2)https://www.cnblogs.com/zbx-boke/p/9 ...

  2. deepin配置反向代理映射本地到公网

    这里我是用的小米球的免费ngrok  相信deepin的新用户在配置反向代理时,会感觉到一脸茫然,因为一开始我也是这样,但经过短暂的了解了deepin后,发现,其实与在Debian上配置并没有什么区别 ...

  3. 使用squid配置透明代理并对上网行为进行控制

    使用Squid配置透明代理 环境:CentOS 6.4 + squid-3.1.10-20.el6_5.3.x86_641.检查squid是否默认安装,没有安装先安装 rpm -qa squid 假如 ...

  4. Apache httpd Server 配置正向代理

    背景 代理(Proxy),位于客户端与实际服务端之间,当客户端需要请求服务端内容时,先向代理发起请求,代理将请求转发到实际的服务器,再原路返回.也可以在代理服务器设置缓存,将实际服务器上不常变化的内容 ...

  5. 在IIS7中应用Application Request Routing配置反向代理

    配置反向代理软件.zip 开启Proxy项: 该设置表面只有HTTP_HOST为phpweb.leven.com.cn的URL才能通过该规则,如果您绑定了多个域名,可以根据多次增加或者通过正则表达式的 ...

  6. python ip动态代理_Scrapy 配置动态代理IP的实现

    应用 Scrapy框架 ,配置动态IP处理反爬. # settings 配置中间件 DOWNLOADER_MIDDLEWARES = { 'text.middlewares.TextDownloade ...

  7. Charles学习(三)之使用Map local代理本地静态资源以及配置网页代理在Mac模拟器调试iOS客户端...

    前言 问题一:我们在App内嵌H5开发的过程中,肯定会遇到一个问题就是我不想在chrome的控制台中调试,我想要在手机上调试,那么如何解决这个问题呢? 问题二:我们期待调试时达到的效果就是和Charl ...

  8. reactjs脚手架配置http-proxy-middleware代理解决跨域问题

    reactjs脚手架配置http-proxy-middleware代理解决跨域问题

  9. react和vue配置本地代理

    React 在react中配置开发环境下的本地代理相对比较简单,直接在package.json文件中修改即可. 但是这样做有其局限性,如果开发中代理多个接口的时候将无法满足需求,我们需要的是下面这种的 ...

最新文章

  1. 说实话你现在有多少存款?清华北大毕业生晒出了自己的收入
  2. 蚂蚁金服安全应急响应中心上线 用户可提交漏洞
  3. matlab graphminspantree
  4. 变形金刚2_变形金刚(
  5. 第 三 十 八 天:Linux 的 LVM 逻 辑 卷 管 理
  6. java支付宝第三方支付详解
  7. android获取根视图
  8. 逐像元地表反射率计算(GF4)
  9. 计算机控制系统的典型结构形式框图,计算机控制技术课后习题
  10. Linux(Ubuntu)菜单栏(工具栏)隐藏了,怎么显示出来
  11. java socket连接池_Java - Socket连接池
  12. WE出海增长图书馆 | 世界杯豪门面纱下,不容忽视的【增长】沃土
  13. 清华姚班和100个“张小龙”| 中国AI天才养成计划
  14. Win10怎么永久关闭自动更新?有效的Win10强制更新关闭方法
  15. 详解SQL中Groupings Sets 语句的功能和底层实现逻辑
  16. C语言的起源、特点与应用
  17. 中兴程序员跳楼事件始末解读
  18. Tensorflow2-卷积神经网络实现图片分类
  19. Thumbnailator
  20. NETSCOUT宣布推出Omnis Cyber Intelligence解决方案

热门文章

  1. 家用笔记本电脑什么牌子好_南阳家用小型电梯什么牌子好
  2. tgz文件linux打开,tgz文件扩展名,tgz文件怎么打开?
  3. php函数表达式,正规表达式函数_php
  4. 速学c++(2)-helloworld工程
  5. C指针原理(14)-C指针基础
  6. 【深度学习】揭秘2021抖音和快手APP图像修复背后的核心技术,毫无ps痕迹
  7. 【面试招聘】聊聊读研究生应该怎么权衡offer的选择:适合选择恐惧症
  8. 【职场】聊聊P5晋升P6之后
  9. 如何应对“吴恩达:人工智能落地最重要的挑战之一是小数据”的困境?
  10. 2周年福利 | 20万字《网易智企技术合辑》重磅发布!