Tag: terraform

Terraform,Docker,Debian 8

我是Terraform的初学者,我正在寻求帮助。 我试过使用谷歌,但我找不到解决scheme。 我有Debian 8服务器。 我成功安装了docker和terraform。 现在我需要创build与Ubuntu的docker容器,并设置与Terraform的这个容器的SSH访问。 我terraformconfiguration是创builddocker容器,设置图像和提供商docker,但我找不到如何设置ssh访问它或configuration一些额外的SW。 Terraformconfiguration: # Configure the Docker provider provider "docker" { host = "tcp://127.0.0.1:2376/" } # Definition of ubuntu image resource "docker_image" "ubuntu" { name = "ubuntu:latest" } # Create a container resource "docker_container" "Ubn_Con" { image = "${docker_image.ubuntu.latest}" name = "Ubn_Con" } 感谢您的任何帮助。

通过terraform在谷歌云中引导的泊坞窗图像

我正在尝试使用terraform来构build一个使用我的docker容器的实例组。 是否有可能使用docker图像作为源? resource "google_compute_image" "bootable-image" { name = "my-custom-image" project = "my-test-compute-4803e3ad" source_disk = "gcr.io/my-test-compute-4803e3ad/hello" } 其他原因我不能使用kubernetes。

Docker群集模式W / Terraform数字海洋负载平衡。 如何自动缩放?

所以我已经能够通过这里的这篇文章回答我的大部分问题 https://knpw.rs/blog/docker-swarm-terraform/ 我的问题是从本文结束的时候开始,我该如何根据CPU使用率和networking使用等指标进行自动扩展? 例如,如果我的CPU使用率在所有节点上高于70%,则创build一个新实例,如果CPU使用率低于30%,则销毁一个实例。 当然,这些必须是持续使用的,就像所有使用超过70%的CPU使用超过5分钟的节点一样。 我做了一些研究,但不是很清楚。 例如, Digital Ocean有一个监控服务,如果CPU使用率exception高 (或networking负载),您可以根据您设置的阈值向您发送电子邮件 。 问题是 他们没有WebHook的支持 ,所以我不能发送这些信号到我的应用程序。 我的一个想法是为这些通知设置一个特殊的电子邮件,并检查电子邮件。 基于电子邮件的回应,我然后创build一个修改的terraform文件和'terraform apply'它来修改基础设施? 我不确定这是否是好的forms, 因为terraform的angular度是代码作为基础设施,但是如果基础设施被devise为创build新的实例并基于CPU使用情况或networking使用情况一直销毁实例,我不知道如何你在terraform中正确传达了这个概念? 任何指向正确的方向的赞赏,我很坚持在这一点上转向。 也许terraform不适合这种types的设置?

通过Terraform发送Docker日志到AWS CloudWatch

我的目标是通过terraform将Docker容器日志发送到CloudWatch。 这是我用于IAM的ECSangular色: { "Version": "2008-10-17", "Statement": [ { "Action": "sts:AssumeRole", "Principal": { "Service": ["ecs.amazonaws.com", "ec2.amazonaws.com"] }, "Effect": "Allow" } ] } 这里是ECS服务angular色策略: { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "elasticloadbalancing:Describe*", "elasticloadbalancing:DeregisterInstancesFromLoadBalancer", "elasticloadbalancing:RegisterInstancesWithLoadBalancer", "ec2:Describe*", "ec2:AuthorizeSecurityGroupIngress", "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": [ "*" ] } ] } 在我的docker集装箱的任务定义,除了其他事情我有这个为cloudwatch日志logging: "logConfiguration": { "logDriver": "awslogs", "options": { "awslogs-group": […]

terraform provider + docker registry v2 = 404

我试图启动一些容器使用terraform,从我自己的registry中拉动那些,但是不能通过ping pingdocker服务器validation,在那里我得到一个fugly: * Error pinging Docker server: API error (404): 404 page not found错误。 为了更好地解释这一点,我开始了docker文档指出的registry; 之后推了一个图像,并尝试使用terraform来应用非常基本的.tfconfiguration: docker.tf # set provider to local registry provider "docker" { host = "http://docker.localhost.com:5000/v2/ubuntu" } # create container resource "docker_container" "test" { image = "latest" name = "test" } 我可以使用像http://docker.localhost.com:5000/v2/ubuntu/_manifests/latest这样的URL来抽取清单和图像,但没有太多的问题,但是当运行terraform的东西南下,我得到的只是一个错误。 检查registry日志我运行terraform时看到这个: `172.*.*.1 – – [04/Apr/2016:18:30:28 +0000] "GET /v2/ubuntu/_ping HTTP/1.1" 404 […]

如何通过Terraform设置Nomad

我是初学者,我有问题找Terraform和Nomad的解决scheme。 我需要运行Nomad和hashi-ui来pipe理Nomad的网页。 我尝试通过terrafom设置并运行Nomad服务器。 Hashi-ui我喜欢游牧的工作。 Nomad服务器和Hashi-ui运行良好。 哈西我在docker上跑。 现在我需要创buildterraform文件进行自动化初始设置和编排游牧人。 我的服务器在Debian 8上运行。 我的terraform文件nomad.tf: # Configure the Nomad provider provider "nomad" { address = "http://localhost:4646" region = "global" # group = "server" } variable "version" { default = "latest" } data "template_file" "job" { template = "${file("./hashi-ui.nomad")}" vars { version = "${var.version}" } } # Register a job resource […]

使用Terraform for RDSconfigurationPostgres应用程序用户

Terraform允许您使用username和password来定义Postgres主用户和password 。 但是,没有select设置一个应用程序postgres用户,你会怎么做?

docker群连接令牌是私人的吗?

公开(git / blogs)暴露你的swmp令牌有风险吗? 即使你的主机不能通过端口公开访问:2377? 例如:terraform git repo为将来的worker节点提供包含在repo中的worker标记。

Docker化的领事,Zookeeper和Amazon-ECS中的Kafka

我试图将一个dockerized Kafka(与Zookeeper)部署到AWS。 我已经梳理了几个资源,并接近。 但是当我在AWS中使用Kafka框时,我可以看到Kafka以-1退出。 我只能假设卡夫卡不能到达Zookeeper,因为我没有设置任何名称parsing。 我正在看Consul作为解决scheme(见这里 )。 这看起来像一个体面的资源 。 但我甚至不能成功运行官方的Consul docker镜像 (在服务器或代理模式下)。 我可以得到这个工作( 在这里使用)。 但是,如果可能的话,我想使用官方的形象。 有没有人得到官方的领事形象与卡夫卡和Zookeeper工作? A)首先,我想我想在docker-compose中工作。 这是我的docker-compose.yml 文件 ,试图让Kafka使用Consul来发现Zookeeper节点。 下面是相关的代码块,你可以运行docker-compose up consul 。 这不显示任何错误。 但是我)我无法达到http:// localhost:8500 。 然后ii)我怎么把卡夫卡指向Zookeeper和Kafka的客户到Kafka? version: '2' services: consul: image: consul:0.8.3 expose: – 8300 – 8301 – 8301/udp – 8302 – 8302/udp – 8400 – 8500 – 8600 – 8600/udp ports: […]

为什么容器无法在DC / OS中获取URI?

我已经在Digital Ocean(DC / OS 1.9)上创build了一个使用terraform的集群,遵循这些指示 一切似乎已经正确安装,从私人docker回购,我需要添加一个压缩的.docker文件到我的/core/home/和部署期间通过将其包含在我的JSON中获取它。 "fetch":[ { "uri":"file:///home/core/docker.tar.gz" } ] 根据这些说明: https : //docs.mesosphere.com/1.9/deploying-services/momee/docker-creds-agent/ 而我仍然遇到错误: Failed to launch container: Failed to fetch all URIs for container 'abc123-xxxxx' with exit status: 256 在查看其中一个代理的日志时: Starting container '123-abc-xxx' for task 'my-docker-image-service.321-dfg-xxx' (and executor 'my-docker-image-service.397d20cb-1 Begin fetcher log (stderr in sandbox) for container 123-abc-xxx from running command: /opt/mesosphere/packages/mesos–aaedd03eee0d57f5c0d49c […]