-
问题 在 TKE 中配置 Pod 直接绑定弹性公网 IP 使用 EIP 功能后, 可以通过绑定的 EIP 直接访问 Pod , 但是从 Pod 中访问节点外的网络时还是走的节点网络,而不是绑定的 EIP (网络)。 原因 这是因为从 Pod 访问节点外网络(以公网为例)时, Pod 网段出节点会被做 SNAT 策略导致, 相关说明参考:容器访问节点外服务时是否做 SNAT 配置。 解决办法 需要配置下访问不做SNAT 就行了,有两种配置策略: 配置不做 SNAT 要访问的目的网段, 参考配置:容器访问节点外服务时是否做 SNAT 配置。 配置不做 SNAT的 源 IP(同样是修改 ip-masq-agent 配置)。 配置条件:当前 …
阅读更多 -
前几天终于把拖了半年多的 CKA 考试预约了,平常由于忙于工作(借口),也没有专门针对复习过,但是实在拖的太久了,哈哈,想着无论如何都要去考,结果就很轻松的考过了,简单记录下考试需要注意的地方和方法。 考前准备 考试预约 根据官网文档指导进行预约考试即可,参考:考试预约文档。 重要:考试时需要有可以证明考生身份的含有拉丁字母的身份证件,一般是护照,鉴于当前的中国的护照办理收紧的现状,如果没有有效期内的护照,刚好可以以考 CKA 考试为由办理护照,本人办理护照的详细经历参考: 疫情政策下顺利办到护照经历。 考试环境准备 根据官网 tips 指引进行环境电脑考试环境检查,参考 考试预约文档 和 参加考试 文档。 重要: …
阅读更多 -
目前形势 “因应疫情形势动态调整出入境政策,坚持非紧急非必要不出境,严格审批签发普通护照和内地居民出入境通行证件,上半年全国签发护照量仅为前年同期2%”,我想这个消息肯定很多人有所耳闻,目前中国大陆地区以疫情严峻为由"一刀切"式的收紧普通民众办理护照的基本权利,目前仅受理以留学、移民、工作或探亲为目的的办理护照,且必须要提供各种相关证明文件才给办理,否则一律劝返。令很多在疫情爆发之前没有办理护照,但是现在需要使用的人后悔莫及,比如需要办理境外银行卡、提前申请外国签证等。 如何成功办理 鉴于以上的严苛的受理政策,如果满足不了政府规定的办理事由,我们普通人该如何成功的办理个人普通护照呢?目前最成功可行且低成本的的办法 …
阅读更多 -
系統架構師 -- 維基百科,自由的百科全書 系統架構師(System Architect,簡稱SA或SAr),是在信息系統研發中,負責依據需求來確定主要的技術選擇、設計系統的主體框架結構,並負責搭建實施的人。[1] 他們(與系統分析師共同)確立系統的主體架構和實現方向,並負責指導軟體工程師等開發人員的編碼開發工作。 由於硬體通用化,系統架構師多指軟體和通信網絡系統的架構師,但在IC晶片設計等硬體研發領域仍是不可或缺的角色。 系統架構師,也是中國工業和信息化部「計算機技術與軟體專業資格水平」認證中,對開發實施技術人員的最高一級認證(2003年從原系統分析員中分設出來),是一種高級職稱,由初級程式設計師、程式設計師、軟體設計師逐次上升而 …
阅读更多 -
适用的场景 TKE 中无论是GR模式还是VPC-CNI 模式都是基于路由的 underlay 网络,并非 overlay,所以理论上容器访问节点外可以做SNAT,也可以不用做SNAT。 但在 TKE 中无论是 Global Router 还是 VPC-CNI 网络模式,在容器内访问集群所在 VPC 网段和容器网段默认是不会做 SNAT 的,除此之外访问其他网段都是会做 SNAT 的,当某些业务场景下需要保留容器源 IP 时,我们就需要修改相关配置来避免访问某些 IP 或网段时做 SNAT,从而实现保留容器源 IP 的需求。 操作步骤 在可以使用 kubectl 连接到集群的环境中,执行下面命令在资源 …
阅读更多 -
操作背景 默认情况下,节点上的 Pod 默认共享节点 CPU 池中所有的 CPU核数, 当节点上运行了很多 CPU 密集的 Pod 时,工作负载可能会切换调度到不同的 CPU 核, 这样就导致有些工作负载的性能明显地受到 CPU 缓存亲和性以及调度延迟的影响。 对此,kubelet 提供了可选的 CPU 管理策略,可以实现某些关键 Pod 的静态绑核,避免 CPU 抢占和切换对业务带来的性能损耗。详情参考:控制节点上的 CPU 管理策略 。 TKE 如何开启配置 下面介绍在 TKE 中开启 CPU 静态管理策略的两种方式。 一、存量节点开启 1. 静态 CPU 策略配置 在 K8S 1.17 版本之前,可供 Pod 独占 CPU 资 …
阅读更多 -
使用场景 TKE 中的 Coredns 服务 IP 目前没有办法在创建集群的时候指定,默认是从客户配置的 Service CIDR 网段中分配一个随机的 IP,下面将介绍如何自定义修改 Coredns 服务 IP。 前提条件 在配置的 service CIDR 网段中选择一个目前集群中没有被使用的 IP 集群中存量的 Pods 可以接受被重建。 操作步骤 1.修改 kubelet 启动参数 先到存量节点上修改 kubelet 配置文件中 --cluster-dns 参数为新的 Cluster IP 并重启 kubelet,操作命令如下: 1DNS_CLUSTER_IP=xxx.xxx.xxx.xxx 2sed -i …
阅读更多 -
使用场景 在集群中以 Daemonset 的方式运行 NodeLocal DNS Cache 组件,能够大幅提升集群内 DNS 解析性能,以及有效避免 conntrack 冲突引发的 DNS 五秒延迟。 目前 TKE 已经将 NodeLocal DNS Cache 作为增强组件供用户在集群中安装使用,但是目前仅限 Kube-proxy 转发模式为 Iptables 的集群安装,下面将介绍下在转发模式为 IPVS 如何部署使用 NodeLocal DNS Cache 。 操作步骤 1. 存量节点安装 根据社区示例的 nodelocaldns.yaml 准备一个资源清单,把它保存为nodelocaldns.yaml。 …
阅读更多 -
使用场景 目前使用 StorageClass 自动创建 CFS 类型 PVC 和 PV,每个 PV 都需要对应一个文件系统(CFS 实例),如果想要多个 PV(不同子路径) 使用同一个文件系统,就需要手动创建 PV 时指定 CFS 文件系统的具体的路径然后绑定 PVC 使用,这是一种办法,但是当需要的 PV 数量多了就会非常繁琐, 对于此使用场景我们可以使用社区的 nfs-client-provisioner 项目来实现动态创建 CFS 文件系统中的子路径,接下来我们来介绍下如何在 TKE 中使用nfs-client-provisioner。 操作步骤 1.准备 CFS 文件系统实例 使用 CFS-CSI 插件 创建或通过 CFS …
阅读更多 -
使用场景 默认情况下,用户在 TKE 添加 GPU 节点时,会自动预装特定版本 GPU 驱动,但是目前默认安装 GPU 驱动版本是固定的,用户还不能选择要安装的 GPU 驱动版本,当用户有其他版本的 GPU 驱动使用需求时,就需要在节点上重新安装,下面将介绍在 TKE 节点中如何重新安装 GPU 驱动程序。 操作步骤 1.卸载原驱动 先卸载原驱动,在节点上执行卸载命令: 1nvidia-uninstall 原驱动卸载过程如下图所示: 提示卸载原驱动完成即表示成功卸载: 2.重启节点 由于驱动是被编译进内核加载的,卸载完原驱动需要重启下节点,不重启会因原驱动还在加载中导致安装新驱动失败。 3.下载新驱动程序并安装 登录 NVIDIA …
阅读更多