测试EKS服务上Pod使用VPC CNI对网络吞吐性能的影响

EKS动手实验合集请参考这里

一、背景

在EC2的网络优化机型上,例如c6in.8xlarge(32vCPU/64GB),其网络带宽达到50Gbps。在没有容器环境下,使用iperf2测试,其带宽可以49.7Gbps的吞吐,相当于标称值的99.4%,考虑统计差异,这个速度可认为几乎没有损耗。测试过程和方法参考这篇博客。

那么当场景来到EKS上,Pod的所有流量都是通过Node节点上的VPC CNI进行转发,此时压力测试的其中一端是非容器化的EC2,另一端是Pod容器,会发生什么情况?

Continue reading “测试EKS服务上Pod使用VPC CNI对网络吞吐性能的影响”

在高度安全的纯内网使用Session Manager登录EC2

Session Manager基础知识请参考这篇文章。本文只针对严格受限的纯内网场景编写,一些操作细节略过。

一、背景

Session Manager是非常好用的EC2远程连接和管理工具,之前在这篇博客中有过系统讲解。Session Manager的使用前提是本VPC的EC2能够具备出向互联网访问,连接到本Region的Session Manager位于互联网的Endpoint。

那么对于一个完全内网的环境,没有默认路由0.0.0.0/0去往互联网或NAT Gateway,甚至没有Internet Gateway(IGW),完全是封闭的内网。此时,如何使用Session Manager?此时可通过Endpoint实现。此外,由于各种依赖条件比较多,因此编写本篇文章。

Continue reading “在高度安全的纯内网使用Session Manager登录EC2”

生成VPC Flowlog并输出到CloudWatch用于分析VPC流量

一、背景

VPC Flowlog是用于采集VPC内四层网络流量的工具。其采集对象包括EC2、NLB、RDS等之间和外部网络之间的流量。VPC Flowlog是OSI模型第四层采集工具,会记录源地址、源端口、目标地址、目标端口、协议、传输数据量等信息,但不会记录OSI模型第七层定义的域名、网址等属于应用层定义的日志,也不会记录发送的数据本体。VPC Flowlog常用于排查EC2相关网络错误。

本文介绍如何开启VPC Flowlog并输出到CloudWatch用于查看VPC内流量。

Continue reading “生成VPC Flowlog并输出到CloudWatch用于分析VPC流量”

使用Session Manager Plugin插件在开发者本机创建本地转发功能用于登录位于私有子网的EC2 Windows RDP远程桌面

摘要:本文介绍了如何不需要将EC2 Windows的3389端口暴露在互联网上,而是通过System Manager转发3389端口到开发者本机的方法。EC2 Windows可以一直位于内网,其安全组也无须放行任何端口,即可实现安全管理。

Continue reading “使用Session Manager Plugin插件在开发者本机创建本地转发功能用于登录位于私有子网的EC2 Windows RDP远程桌面”

使用Athena分析在S3上的WAF Log

一、背景

在使用WAF保护业务系统的过程中,经常需要查询历史日志,分析特定防护对象的防护效果,查看拦截的请求,或查看访问特定URL的防护效果。这时候就需要用到WAF日志功能。

AWS WAF支持将日志输出到CloudWatch Log Groups,Kinesis,以及S3。将日志输出到CloudWatch Log Groups使用方便,但是存储成本高;将日志输出到Kinesis后可连接多种投递方式,灵活且延迟低,但技术架构稍微复杂。将WAF日志存储到S3数据湖,可实现最低低成本储存日志,通过Athena可快速方便查询。

Continue reading “使用Athena分析在S3上的WAF Log”

Direct Connect 101 & 配置说明

一、背景

Direct Connect是AWS的专线接入服务,主要场景:

  • 连接客户IDC与AWS云
  • 连接其他云厂家与AWS云
  • 连接AWS中国和AWS海外区域

Direct Connect涉及网络知识较多,名词和术语多,配置步骤复杂。其中一个相对很难学习的地方在于Direct Connect无法自助学习配置,当没有真实专线连接的时候,Direct Connect云端界面无法完全模拟所有操作,因此给动手实验带来很大的困难。针对这个问题,本文将Direct Connect主要配置流程和方法进行梳理,并辅以截图进行讲解。

Continue reading “Direct Connect 101 & 配置说明”

实验十、在EKS上的ELB获取最终用户的真实IP地址

EKS动手实验合集请参考这里

EKS 1.27版本 @2023-06 AWS Global区域测试通过

一、背景

1、没有EKS而是使用EC2场景下获取客户端真实IP地址

在之前的文章主要是介绍ELB+EC2模式下,获取客户端真实IP,可参考AWS官方知识库这篇文章。也可参考过往的blog文章的这篇文章。

在这两篇中,主要讲解是ELB+EC2场景获取真实IP地址。如果用一个表格快速概括的话,汇总如下:

Continue reading “实验十、在EKS上的ELB获取最终用户的真实IP地址”

AWS Gateway Load Balancer (GWLB) in single VPC Quickstart

GWLB in single VPC Quickstart CloudFormation Template

一、架构说明

1、GWLB简介

关于AWS GWLB,之前构建过一个结合Transit Gateway的多VPC的GWLB方案,也就是所谓的集中式。集中式是指应用系统所在的VPC是没有GWLB Endpoint的,流量是通过Transit Gateway汇集到一个统一的VPC做流量检查。

本次构建的quickstart则是一个分布式检测架构。所谓分布式,是指整个架构不包含Transit Gateway,而应用系统VPC本身是包含GWLB Endpoint。未来增加第二个、第三个VPC时候,每个VPC都带有自己的GWLB Endpoint。所以这个架构,在只有一个VPC时候,看起来是Single VPC。如果有多个VPC,就是分布式流量检查架构。

本模版是针对是特定场景下的需求,如果是全新设计,建议按照GWLB最佳实践的架构进行组网。

本方案构建一个单VPC的网络检测方案。本文代码参考Github这里

Continue reading “AWS Gateway Load Balancer (GWLB) in single VPC Quickstart”