利用Terraform+堆栈自动刷服务器

安装oci-cli工具

bash -c "$(curl –L https://raw.githubusercontent.com/oracle/oci-cli/master/scripts/install/install.sh)"

输入y回车,会自动帮你添加环境变量。之后又是一路回车
oci -v 查询版本
如果centos安装错误,注意pip源,如阿里云腾讯云默认pip为内网源
pip源在/root/.pip里面

复制ocid信息

甲骨文后台复制租户和用户的ocid

配置cli

oci setup config

配置

Enter a user OCID: #输入你的用户ocid
Enter a tenancy OCID: #输入你租户的用户id

选择区域代码,其他Y

复制生成的公钥,获取命令如下。

cat /root/.oci/oci_api_key_public.pem

把展示出来的内容复制下来。并且添加到,甲骨文后台=>用户设置>>资源>>API秘钥>>添加API秘钥
检查oci配置是否正确

oci iam availability-domain list

正确返回:

{
"data": [
{
"compartment-id": "ocid1.tenancy.oc1..aaaaaaaauoxxxxxxxxxxxxx",
"id": "ocid1.availabilitydomain.oc1..aaaaaaaaaixxxxxxxxxxxxx",
"name": "uffff:AP-TOKYO-1-AD-1"
}
]
}

创建堆栈

创建实例,选好配置,另存为堆栈,并下载main.tf文件

自动脚本

Terraform

wget https://releases.hashicorp.com/terraform/0.15.4/terraform_0.15.4_linux_amd64.zip
unzip terraform_0.15.4_linux_amd64.zip
mv terraform /usr/bin

检查版本的

terraform version

创建文件夹

mkdir terraform && cd terraform

上传前面生成的堆栈文件main.tf到terraform文件夹

terraform init
terraform apply 

vi opc.sh

#!/bin/bash
 
path='/root/terraform/'
 
cd $path &&
while true
do
    echo 'yes' | terraform apply
    sleep 3s
done

赋予权限

chmod +x opc.sh

screen运行

screen -S opc
bash /root/terraform/opc.sh

恢复screen

screen -r opc

来源大鸟博客

最后修改:2023 年 04 月 20 日 12 : 23 AM