Обычно для аутентификации нужно сгенерировать на своем компьютере пару SSH-ключей: открытый и секретный. Первый следует загрузить в AWS, а второй сохранить в надежном месте, откуда к нему сможет обратиться Terraform. Но, чтобы вам проще было попробовать этот пример, можете использовать ресурс tls_private_key, который сгенерирует секретный ключ автоматически:
# Чтобы этот пример можно было легко попробовать, мы генерируем секретный ключ
# в Terraform.
# В реальных условиях управление SSH-ключами следует вынести за пределы Terraform.
resource "tls_private_key" "example" {
algorithm = "RSA"
rsa_bits = 4096
}
Этот секретный ключ хранится в состоянии Terraform, что не очень хорошо для промышленного использования, но подойдет для этого примера. Теперь загрузим открытый ключ в AWS с помощью ресурса aws_key_pair:
resource "aws_key_pair" "generated_key" {
public_key = tls_private_key.example.public_key_openssh
}
Terraform: инфраструктура на уровне кода
·
Евгений Брикман