本方案的起因是,一个源代码托管在Github上的项目fix一个重要的bug后,在AWS上的持续部署流水线一直失败。分析日志后,发现流水线中的数个步骤需要克隆源代码,但是访问Github的网络非常不稳定,这数个流水线任务持续因连接超时,连接拒绝等网络错误而失败。而流水线任务大量使用了CodeBuild, Lambda等AWS托管服务,无法为执行环境配置可靠的网络连接。 本方案思路如下, 在 VPC public subnets 中创建 NAT instance 即 EC2 虚拟机, 配置 NAT instance,使用 tunnel 网络访问 github, 修改 private subnets 的路由表,添加 github …
Read More