## ansible 与terraform 一起使用 ##
1. windows下不支持ansible
2. 我们会在linux下面使用terraform,并且在linux下面使用terraform+ansible
3. 以centos 7.7 为例
```
1. 安装 ansible yum install ansible -y
2. 使用ssh-kegen 生成key ~/.ssh/id_rsa和id_rsa.pub
3. 创建ecs使用上面生成的key,
resource "alicloud_key_pair" "alicloud_key_pair" {
key_pair_name = "mykey"
public_key = "${file(var.ssh_key_public)}"
}
variable "ssh_key_public" {
default = "~/.ssh/id_rsa.pub"
description = "Path to the SSH public key for accessing cloud instances. Used for creating AWS keypair."
}
key_name = alicloud_key_pair.alicloud_key_pair.key_name
4. 使用ansible 来拷贝本地的文件到ecs服务器
resource "local_file" "inventory" {
filename = "myinventory"
content = "[nginx]\n${alicloud_instance.web.*.public_ip[0]}"
}
resource "null_resource" "run-ansible" {
depends_on = [alicloud_instance.web,local_file.inventory]
triggers = {
key = "${uuid()}"
}
provisioner "local-exec" {
command = "ansible-playbook -u root -i myinventory --private-key ${var.ssh_key_private} -T 3000 provision.yml"
}
}
---
- hosts: nginx
remote_user: root
become: yes
become_method: sudo
vars:
tasks:
- name: copy file to remote
copy:
src: ./html/
dest: /usr/share/nginx/html/
- name: restart nginx
shell: |
systemctl start nginx
```
- 【概要简介】1.001-简介-本课程体系简介
- 【概要简介】1.002-简介-云的发展趋势
- 【概要简介】1.003-简介-国内主流的云服务平台
- 【概要简介】1.004-简介-Terraform云平台devops的瑞士军刀
- 【快速入门】2.000-快速入门-云后台创建主机
- 【快速入门】2.001-快速入门-创建主机-先查询资源
- 【快速入门】2.002-快速入门-创建主机-阿里云
- 【快速入门】2.003-快速入门-创建主机-亚马逊aws
- 【快速入门】2.100-快速入门-官方网站学习资料
- 【快速入门】2.101-快速入门-Terraform主要的文件.
- 【快速入门】2.102-快速入门-创建虚拟网络
- 【快速入门】1.103-快速入门-创建安全和规则
- 【快速入门】2.104-快速入门-创建云盘
- 【快速入门】2.105-快速入门-创建Ecs主机服务
- 【快速入门】2.200-快速入门-搭建Nginx
- 【快速入门】2.201-快速入门-搭建Nginx-分拆main文件
- 【快速入门】2.203-快速入门-购买固定IP并绑定到主机
- 【快速入门】2.204-快速入门-绑定域名到自己的主页
- 【快速入门】2.205-快速入门-申请免费的https证书并绑定TODO
- 【快速入门】2.300-快速入门-创建Oss存储并搭建静态网站
- 【快速入门】2.300-快速入门-Cdn-TODO
- 【中级进阶】3.101-中级进阶-用Packer创建Wordpress的主机镜像
- 【中级进阶】3.102-中级进阶-利用自己的镜像创建Ecs主机
- 【中级进阶】3.104-中级进阶-用自己镜像搭建负载均衡的Wordpress网站
- 【中级进阶】3.105-中级进阶-利用弹性伸缩ESS创建SLB对应的动态数量的ECS服务器
- 【中级进阶】3.106-中级进阶-自定义Module搭建多个负载均衡的Wordpress网站
- 【中级进阶】3.200-中级进阶-备份多个Wordpress服务器的日志到ossTODO
- 【中级进阶】3.300-中级进阶-创建Ecs快照服务
- 【中级进阶】3.400-中级进阶-Datasource查询
- 【中级进阶】3.500-中级进阶-保存Terraform的state文件
- 【中级进阶】3.600-中级进阶-Variables and environment variables
- 【中级进阶】3.700-中级进阶-Terraform命令解析
- 【高级深入】4.000-高级深入-创建容器镜像服务
- 【高级深入】4.001-高级深入-编译自己的docker镜像并上传到Aliyun cr
- 【高级深入】4.002-高级深入-Terraform创建Kubernetes集群
- 【高级深入】4.003-高级深入-Terraform在Kubernetes集群中部署Wordpress应用
- 【高级深入】4.100-高级深入-使用云服务平台提供的module来创建服务资源
- 【高级深入】4.200-高级深入-同步Terraform的状态.到terraform cloud
- 【高级深入】4.300-高级深入-Terraform的语法
- 【高级深入】4.400-高级深入-Terraform与其Ansible一起使用
- 【高级深入】4.500-高级深入-Terraform的provisioner
- 【高级深入】4.600-高级深入-Snat
- 【高级深入】4.601-高级深入-Dnat
- 4.602-高级深入-Vpc-vpc通信
- 【高级深入】4.603-高级深入-Switch与switch-通信