📜  配置 RDS 和 REDIS - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:12:27.869000             🧑  作者: Mango

配置 RDS 和 REDIS - Shell-Bash

本文主要介绍如何使用 Shell-Bash 脚本来配置 RDS 和 REDIS,包括创建数据库实例、添加 IP 白名单、查看数据库实例状态等操作。

创建 RDS 实例
手动创建 RDS 实例

可以通过阿里云 RDS 控制台来创建 RDS 实例,但是本文主要介绍如何通过 Shell-Bash 脚本来创建 RDS 实例。示例代码如下:

#!/bin/bash

access_key_id='your_access_key_id'
access_key_secret='your_access_key_secret'
region_id='your_region_id'
engine='mysql'
engine_version='5.7'
db_instance_class='rds.mysql.m.large'
db_instance_storage='100'
db_instance_net_type='Intranet'
db_instance_name='mysql-test'
db_instance_description='test'

aliyuncli rds CreateDBInstance \
--AccessKeyId $access_key_id \
--AccessKeySecret $access_key_secret \
--RegionId $region_id \
--Engine $engine \
--EngineVersion $engine_version \
--DBInstanceClass $db_instance_class \
--DBInstanceStorage $db_instance_storage \
--DBInstanceNetType $db_instance_net_type \
--DBInstanceName $db_instance_name \
--DBInstanceDescription "${db_instance_description}"
通过 Terraform 创建 RDS 实例

Terraform 是一种用来定义、预览和部署基础设施的工具,可以通过 Terraform 脚本来创建 RDS 实例。示例代码如下:

provider "alicloud" {
  access_key = "your_access_key_id"
  secret_key = "your_access_key_secret"
  region     = "your_region_id"
}

resource "alicloud_db_instance" "mysql-test" {
  engine               = "mysql"
  engine_version       = "5.7"
  instance_class       = "rds.mysql.m.large"
  instance_storage     = "100"
  instance_network_type= "VPC"
  instance_name        = "mysql-test"
  vswitch_id           = "your_vswitch_id"
  security_ips         = ["0.0.0.0/0"]
  description          = "test"
}
添加 IP 白名单
手动添加 IP 白名单

可以通过阿里云 RDS 控制台来添加 IP 白名单,但是本文主要介绍如何通过 Shell-Bash 脚本来添加 IP 白名单。示例代码如下:

#!/bin/bash

access_key_id='your_access_key_id'
access_key_secret='your_access_key_secret'
region_id='your_region_id'
db_instance_id='your_db_instance_id'
security_ip='your_security_ip'

aliyuncli rds ModifySecurityIps \
--AccessKeyId $access_key_id \
--AccessKeySecret $access_key_secret \
--RegionId $region_id \
--DBInstanceId $db_instance_id \
--SecurityIps "${security_ip}"
通过 Terraform 添加 IP 白名单

可以通过 Terraform 脚本来添加 IP 白名单。示例代码如下:

resource "alicloud_db_instance_security_ips" "mysql-test" {
  db_instance_id = "your_db_instance_id"
  security_ips   = ["your_security_ip"]
}
查看数据库实例状态

可以通过阿里云 RDS 控制台来查看数据库实例状态,但是本文主要介绍如何通过 Shell-Bash 脚本来查看数据库实例状态。示例代码如下:

#!/bin/bash

access_key_id='your_access_key_id'
access_key_secret='your_access_key_secret'
region_id='your_region_id'
db_instance_id='your_db_instance_id'

aliyuncli rds DescribeDBInstanceAttribute \
--AccessKeyId $access_key_id \
--AccessKeySecret $access_key_secret \
--RegionId $region_id \
--DBInstanceId $db_instance_id

示例输出如下:

{
    "DBInstanceDescription": "test",
    "DBInstanceId": "your_db_instance_id",
    "Engine": "mysql",
    "EngineVersion": "5.7",
    "DBInstanceClass": "rds.mysql.m.large",
    "DBInstanceStorage": 100,
    "DBInstanceStatus": "Running",
    "SecurityIPList": [
        {
            "SecurityIP": "your_security_ip"
        }
    ]
}

以上就是配置 RDS 和 REDIS 的 Shell-Bash 实现方式,希望对大家有所帮助。