Невозможно использовать mysql в том же плане, который создает сервер MySQL

Я хочу создать экземпляр AWS RDS, а затем хочу управлять пользователями db с помощью terraform. Итак, сначала я создал экземпляр RDS, а затем инициализировал поставщик mysql с созданным экземпляром RDS, чтобы использовать его в дальнейшем для управления пользователями. Но провайдер mysql использует конечную точку по умолчанию (127.0.0.1) для подключения на этапе планирования. Ниже мой код

resource "aws_rds_cluster" "default" {
    name            = "${var.name}"
    master_username = "${var.master_username}"
    master_password = "${random_string.password.result}"
    .
    .
    .
}

provider "mysql" {
    endpoint = "${aws_rds_cluster.default.endpoint}"
    username = "${aws_rds_cluster.default.master_username}"
    password = "${random_string.password.result}"
}

person rkghost    schedule 21.11.2018    source источник


Ответы (1)


Согласно текущей реализации terraform, для инициализации поставщика MySQL сначала должен существовать MySQL. Вот почему это не удается, потому что на этапе планирования ваш экземпляр RDS не существует. Уже существует открытая проблема (https://github.com/hashicorp/terraform/issues/18720) для этого в репозитории Terraform GitHub. Итак, чтобы управлять им, вы должны сначала создать экземпляр RDS, а затем вы можете использовать его учетные данные для инициализации поставщика mysql.

person Ram    schedule 21.11.2018