教你解决CCE集群中容器出网
本文分享自华为云社区《CCE集群中容器出网总结》,作者:可以交个朋友。
一 背景
针对CCE集群和CCE turbo集群中的容器访问外部网络进行总结
二 容器出网简介
使用EIP服务绑定特定节点、容器IP地址 或者使用SNAT网关对特定子网进行NAT源地址进行转换从而实现容器出网。
2.1 CCE 标准集群
集群工作节点绑定EIP,位于节点上的POD就可以通过宿主机的网卡进行出网。
集群工作节点对应的Subnet关联SNAT网关,节点通过SNAT网关出网。(建议选择此种方式)
2.2 CCE turbo 集群
POD绑定EIP(节点绑没有用),容器直接出网
POD对应的Subnet关联SNAT网关,pod通过SNAT网关出网。(建议选择此种方式)
三 实践
以CCE turbo集群为例,如果集群中POD需要访问公网,则需要绑定EIP或者配置SNAT。大规模场景下,每个POD配置EIP,会造成资源的大量浪费,已经管理成本的上升。所以大部分情况下都是配置SNAT规则进行容器的出网。
确认POD网段
如下图所示,正在运行的pod使用的是subnet-container01
这个子网
未添加SNAT时访问公网
登录容器,执行命令curl -I -m 10 www.baidu.com
可以发现此时POD没有出网能力,访问公网失败。
给对应容器子网添加SNAT出网规则
容器访问公网
登录容器,执行命令curl -I -m 10 www.baidu.com
访问成功。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Python中两种网络编程方式:Socket和HTTP协议
本文分享自华为云社区《Python网络编程实践从Socket到HTTP协议的探索与实现》,作者:柠檬味拥抱。 在当今互联网时代,网络编程是程序员不可或缺的一项技能。Python作为一种高级编程语言,提供了丰富的网络编程库,使得开发者能够轻松地实现各种网络应用。本文将介绍Python中两种主要的网络编程方式:Socket编程和基于HTTP协议的网络编程,并通过实际案例来演示它们的应用。 1. Socket编程 Socket是实现网络通信的基础。通过Socket,程序可以在网络中传输数据,实现客户端与服务器之间的通信。Python提供了socket模块,使得Socket编程变得简单而直观。 下面是一个简单的Socket服务器和客户端的实现: # 服务器端 import socket # 创建socket对象 server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 获取本地主机名 host = socket.gethostname() port = 9999 # 绑定端口 server...
- 下一篇
什么是 gRPC?
原文作者:NGINX 原文链接:什么是 gRPC? 转载来源:NGINX 开源社区 NGINX 唯一中文官方社区 ,尽在nginx.org.cn gRPC(Google Remote Procedure Call,Google 远程过程调用)是一个高性能的开源框架。它通过 HTTP/2 实现 API,旨在帮助开发人员更轻松地构建分布式应用,特别是当代码可能在不同地方运行的时候。 gRPC最初由 Google 开发,用于实现远程过程调用(RPC)。如今,gRPC 是云原生计算基金会(CNCF)的一个孵化项目,这意味着它已被用于生产环境,并得到了大量贡献者的支持。 为何创建 gRPC? 为了解 Google 开发 gRPC 的原因,我们来大致看一下API这一设计的发展过程。 RPC 是设计和构建 API 的最早方法之一,允许您编写代码,就好像它将在本地计算机上运行一样,即使您实际上可能需要调用在其他机器(通常在您的本地网络)上运行的服务。 在实践中,这支持开发人员使用直接操作命令(例如SendUserMessages、addEntry等),而不必考虑网络细节。RPC 消息具有轻量化、高效等...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Red5直播服务器,属于Java语言的直播服务器
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS8编译安装MySQL8.0.19
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装