借Kubernetes-Pod访问内部服务器组件
当我们在 Kubernetes 上工作时,有时会遇到这样的场景:我们需要从本地访问一个位于集群内部的 Redis 服务器,但出于安全考虑,这个 Redis 服务并没有直接暴露给外部。不过,集群里有一个 Pod 已经具备了访问这个 Redis 服务器的能力。 利用这个 Pod 作为跳板,我们可以安全地从本地连接到目标 Redis 服务器。由于这个 Pod 本身并不是 Redis 服务,我们不能直接使用 kubectl port-forward。相反,我们需要在 Pod 内部运行一个临时的代理进程。 下面是实现这个目标的详细步骤,可以作为你的操作笔记或博客文章。 借道 Kubernetes Pod 访问内部 Redis 服务器步骤零:先安装必要工具1apt install -y socat net-tools 步骤一:找到你的“跳板” Pod首先,你需要确定那个能够连接到 Redis 服务器的 Pod 的名称。你可以使用 kubectl 命令列出集群中的所有 Pod: 1kubectl get pods 从列表中找到你需要的 Pod,例如它的名字是 my-redis-client...
解决镜像下载失败的几种方法
前言 在学习、研究 K8S 的过程中,经常遇到镜像拉取不了的网络问题,这并不是镜像本身的问题,而是国内的“国情”导致无法正常访问墙外资源。 这些镜像有的是 K8S 团队自研的插件,也有一些是爱好者开发的第三方组件,正常来说,他们会存放于 gcr.io 或者 quay.io 中。 gcr.io 是 谷歌的镜像仓库,是禁止访问的,而 quay.io 是 RedHat 的镜像仓库,可以访问,但速度较慢。 那如何应对这种网络问题呢? 现成的镜像代理仓库k8s.gcr.io 源代理仓库ctr images tag k8s.m.daocloud.io/scheduler-plugins/kube-scheduler:v0.24.9 这是 gcr.io/google-containers 的仓库,使用阿里云镜像 123k8s.gcr.io/sig-storage/csi-node-driver-registrar:v2.3.0# 换成registry.aliyuncs.com/google_containers/csi-node-driver-registra...
ingress-k3s之traefik的使用
前言Ingress Service可能会有很多,如果每个资源都绑定一个 node port的话,主机则需要开放外围的端口进行服务调用,管理上会比较混乱。 比较优雅的方式是通过一个外部的负载均衡器,比如 nginx ,绑定固定的端口比如80,然后根据域名/服务名向后面的Service Ip转发,但是这里对问题在于:当有新服务加入的时候如何修改 Nginx 配置? 手动改或者 Rolling Update Nginx Pod 都是不现实的。 对于这个问题, k8s 给出的七层解决方案是:Ingress Traefik Træfik 是一个为了让部署微服务更加便捷而诞生的现代HTTP反向代理、负载均衡工具。 它支持多种后台 (Docker, Swarm, Kubernetes, Marathon, Mesos, Consul, Etcd, Zookeeper, BoltDB, Rest API, file…) 来自动化、动态的应用它的配置文件设置。Traefix是k3s里面的Ingress Controller。支持负载均衡和反向代理,类似于ngnix。 Traefik 的...
kubernetes 安装 ingress nginx controller
参考:https://www.cnsre.cn/posts/210902330007 前言Service可能会有很多,如果每个资源都绑定一个 node port的话,主机则需要开放外围的端口进行服务调用,管理上会比较混乱。 比较优雅的方式是通过一个外部的负载均衡器,比如 nginx ,绑定固定的端口比如80,然后根据域名/服务名向后面的Service Ip转发,但是这里对问题在于:当有新服务加入的时候如何修改 Nginx 配置? 手动改或者 Rolling Update Nginx Pod 都是不现实的。 对于这个问题, k8s 给出的七层解决方案是:Ingress ingress-nginxingress nginx 官方网站 ingress nginx 仓库地址 ingress-nginx v1.0 最新版本 v1.0 适用于 Kubernetes 版本 v1.19+ (包括 v1.19 ) Kubernetes-v1.22+ 需要使用 ingress-nginx>=1.0,因为 networking.k8s.io/v1beta 已经移除 直接部署 ingre...
