Ansible EC2 创建实例

2024年9月19日 | 阅读需 4 分钟

什么是 EC2

EC2 是一种 Web 服务,可在云中提供根据需要定制的服务器。它具有高度的可扩展性,并且采用按需付费模式。

EC2 是一种 Web 服务,旨在通过在云中提供安全且可调整大小的计算容量来简化开发人员的生活。借助 EC2,我们可以根据需求轻松地向上或向下扩展基础设施。它可以与亚马逊上的几乎所有服务集成,最棒的是,我们只需为使用的资源付费。

EC2 的优点

  1. 弹性 Web 规模计算
  2. 灵活
  3. 可扩展
  4. 可靠
  5. 安全
  6. 低成本

什么是 AMI

AMI 代表 Amazon Machine Images(亚马逊机器映像),AMI 提供启动 EC2 实例所需的信息。它包括在 AWS 上运行的操作系统预配置模板。客户端可以使用来自单个 AMI 的相同配置启动多个实例。

AWS 中的安全组

  1. 安全组充当虚拟防火墙,控制至少一个实例的流量。
  2. 流量可以是来自实例的入站或出站流量。
  3. 它通过 IP 协议、端口访问和源地址或目标地址来保护实例。
  4. 如果没有任何显式规则允许,则与安全组关联的实例无法相互通信。
  5. 它可以附加到弹性网络接口 (ENI)。

什么是实例?

实例是在 Amazon EC2 上运行应用程序的虚拟服务器。 它也可以被认为是较大计算机的一小部分,一个微小的部分,拥有自己的硬盘驱动器、网络连接、操作系统等等。 但这一切都是虚拟的。

使用 EC2 的步骤

  1. 首先要做的是创建 AMI,即 Amazon Machine Images(亚马逊机器映像),运行我们的应用程序所需的软件和应用程序包。
  2. 第二步是选择硬件;这里是实例类型;根据工作负载和工作负载的意图,我们将选择硬件的大小。
  3. 最后,我们将配置实例以及我们想要多少个实例,我们想知道它们位于哪个子网中,实例的停止或终止行为是什么,以及我们是否希望在实例开始运行时更新补丁。所有这些信息都会在我们配置实例时放到这里。
  4. 在第四步中,我们将额外的存储添加到 EC2 实例。
  5. 然后在第五步中,我们添加标签,使用标签,或者我们将配置标签以便以后轻松识别 EC2 实例。
  6. 在第六步中,我们将配置防火墙,也称为 EC2 实例的安全组。在这里,我们将允许或拒绝来自外部世界到此特定 EC2 实例的连接。它在内部和外部工作,此防火墙基于端口号和 IP 地址阻止连接。
  7. 在第七步中,我们查看我们完成的所有配置,并确保配置是我们想要的,最后,单击“提交”,它将启动一个 EC2 实例。

为了在 Ansible 上工作,我们首先需要设置一些东西,

  1. AWS 用户帐户
  2. Ansible
  3. Python
  4. Boto

只需转到 Amazon AWS 服务器即可创建 AWS 帐户,然后按照注册过程进行操作。创建 AWS 帐户后,我们必须创建 IAM 用户(因为我们需要一个密钥和密钥 ID)。

打开 AWS 控制台,搜索 IAM(身份和访问管理),然后按照步骤创建用户,并记下 Ansible 将用于设置实例的访问密钥和密钥。

现在,如果我们转到 Amazon 控制台,我们将看到服务器已成功启动。

完成 AWS 帐户和用户创建后,我们可以继续并安装所需的内容。

Ansible

在基于 RHEL/CentOS Linux 的系统上安装 Ansible

  1. $ sudo yum install Ansible

在基于 Debian/Ubuntu Linux 的系统上安装 Ansible

  1. $ sudo apt-get install software-properties-common
  2. $ sudo apt-add-repository ppa:Ansible/Ansible
  3. $ sudo apt-get update
  4. $ sudo apt-get install Ansible

使用 pip 安装 Ansible

  1. $ sudo pip install Ansible
  2. $ 安装完成后,我们可以通过 Ansible -version 命令进行验证。

Python

  1. $ sudo apt-get update
  2. $ sudo apt-get install python3.6

Boto

Boto 是一个 Python 捆绑包,它提供了与 AWS 的接口。

首先,安装 pip

  1. $ sudo apt install python3-pip 或
  2. $ yum install python-pip

现在安装 boto

  1. $ pip install boto

下一个主题Ansible 处理程序