1. 树莓派 k3s 安装后部署镜像,一直启动不成功
答:armv7l(树莓派系统架构)和镜像(arm64)架构不一致,无法启动
2. 获取客户端真实IP
答:
真实生产场景下,一般提供给用户的都是七层https服务
首先域名解析在外部负载设备绑定的公网ip上,负载周边可能还会有一些安全设备例如WAF等,这里不多介绍
流量经过负载后进入到k8s集群中,其中 Ingress Controller 以 DaemonSet 方式部署并使用 hostNetwork 模式接收并处理到达宿主机的80、443端口流量关于https证书的配置,一般有以下两种可选方式:
- 配置在负载设备(负载类型如果只考虑七层负载),由负载负责将数据包封包解包,并转> 发到后端,如果用户通过 https 形式访问,流量经过的流程是:
用户端
—>负载80端口
—>负载443端口
—>服务端(k8s node)的80端口
- 配置在后端,例如Ingress资源上,如果用户通过 https 形式访问,流量经过的流程是:
用户端
—>负载80端口
—>服务端(k8s node)的80端口
—>服务端(k8s node)的443端口
但是为了获取用户的真实ip,只能选择 方式1,因为如果证书配置在后端服务,流量经过负载时是加密的,负载一般在没有证书的情况下,是无法对数据包进行解包操作透传用户ip的