我有一个Node部署到谷歌CloudRun,它负责管理外部服务器(干净的,新的Amazon ),包括通过SSH和SFTP。SSH和SFTP最终可以正常工作,但是连接需要2-5分钟才能启动。有时,它们会出现握手超时错误。
在我的笔记本上运行的同一服务,连接到相同的外部服务器,没有问题,连接速度与任何正常的SSH连接一样快。
CloudRun上的部署是相当标准的。我正在使用一个服务帐户运行它,它允许访问机密,等等,分配了大量内存。
我已经设置了VPC连接器,并按照这里的说明:https://cloud.google.com/run/docs/configuring/static-outbound-ip将所有流量路由到VPC连接器。
我还尝试将UseDNS no设置在EC2上的/etc/ SSH /sshd_config文件中,这是根据一些在线建议re:缓慢的SSH登录,但这并没有什么区别。
我重建和重新部署了这个项目几十次,所有的测试都是在全新的EC2实例上进行的。
我正在使用Node ssh2库、节点-ssh和ssh2-sftp客户机上的开源包装程序尝试这些连接。
想法?
发布于 2020-12-12 21:23:26
云运行只在HTTP请求处于活动状态之前才能运行。
在云运行期间,您显然没有活动请求,因为在活动请求之外,CPU处于节流状态。
这条管道的最佳选择是云工作流和常规计算引擎实例。
您可以设置一个工作流来启动此任务的Compute引擎,并在它完成这些步骤后停止。
我是文章的作者:运行shell命令并使用云工作流编排Compute Engine VM,它将指导你如何设置。
执行工作流可以由或HTTP触发。
https://stackoverflow.com/questions/65209703
复制相似问题