在亚马逊ECS实例上安装安全更新的最佳方法

Modified on: Mon, 04 Nov 2019 13:40:02 +0800

我们正在使用Ansible在所有正在运行有状态服务的EC2实例上推出安全更新作为数据库,搜索引擎等。这很好。

我想知道在ECS实例(在Docker容器中运行无状态Web应用程序)上进行安全更新的最佳方法是什么。由于自动扩展,实例数量和IP地址有很多动态。 Ansible使用硬编码的IP地址列表(hosts文件),因此它似乎不适合此目的。

更新这些实例是否是一个好主意,还是我们应该每隔一段时间拆掉它们并产生新的实例?

DevOps人员的最佳做法是什么?

更新强>

我发现Ansible支持动态库存。 脚本可获取有关主机的信息来自AWS并为Ansible生成动态库存,这很好。

然而,仍有一个问题。每当我以前没有连接过的新主机时,都会显示以下消息,必须手动确认。

The authenticity of host '10.0.1.247 (10.0.1.247)' can't be established.
ECDSA key fingerprint is SHA256:GSogs6P6CzbOzLm9ByWsXkfz7/2A4qwj4PDvczApS/I.
Are you sure you want to continue connecting (yes/no)? yes

这非常烦人,因为我想实现一个完全自动化的更新机制。这个问题有解决方案吗?

最佳答案

  

每当我之前没有连接过的新主机时,都会显示以下消息,必须手动确认。 []这个问题有解决方案吗?

修改 ssh_connection ansible.cfg ,因此它包含-o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null参数。

例如:

[ssh_connection] ssh_args = -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o IdentitiesOnly=yes -o ControlMaster=auto -o ControlPersist=60s

作者:techraf

相关问答

添加新评论