Deployment CoreOS集群的服务文件应该保存在哪里,如何加载它们?

Deployment CoreOS集群的服务文件应该保存在哪里,如何加载它们?,deployment,docker,coreos,fleet,Deployment,Docker,Coreos,Fleet,我想在负载平衡器后面部署一个CouchDB服务器集群,并让服务完成神奇的etcd发现。在完成课程后,我对如何实际使用我在自己的项目中所学的东西感到困惑,我也不知道哪一个更深入的教程能让我继续学习 在演示中,我在一个正在运行的实例中编写了一个服务文件,然后使用fleetctl启动它。我想做的是在我的项目中对服务文件进行版本控制,比如Dockerfile。如何使用外部服务文件初始化CoreOS群集 我正在使用Vagrant进行本地开发,但我会尽快部署到AWS。我在AWS上快速搜索了coreos,第一

我想在负载平衡器后面部署一个CouchDB服务器集群,并让服务完成神奇的etcd发现。在完成课程后,我对如何实际使用我在自己的项目中所学的东西感到困惑,我也不知道哪一个更深入的教程能让我继续学习

在演示中,我在一个正在运行的实例中编写了一个服务文件,然后使用fleetctl启动它。我想做的是在我的项目中对服务文件进行版本控制,比如Dockerfile。如何使用外部服务文件初始化CoreOS群集


我正在使用Vagrant进行本地开发,但我会尽快部署到AWS。

我在AWS上快速搜索了coreos,第一个链接是amazon产品。他们有很好的文档说明如何做到这一点。从高层来看,您需要使用云配置文件。当您启动coreos(即,实例化ec2映像)时,您可以在用户_数据中传递一个文本文件。这个文本文件允许你做一些事情,主要是写文件,然后定义单位。单位是你的服务。当您“引导”ec2实例时,云配置文件中的任何内容都将自动启动

或者,您可以使用cloud_配置中的“write_files”指令来创建每个单独的服务。例如,我的云配置有:

write_files:
  - path: /etc/systemd/system/skydns.service
    permissions: 0644
    owner: core:core
    content: |
      [Unit]
      Description=SkyDNS service discovery
      After=flanneld.service docker.service etcd.service
      Requires=flanneld.service docker.service etcd.service

      [Service]
      Restart=always
      ExecStartPre=-/usr/bin/env docker kill skydns
      ExecStartPre=-/usr/bin/env docker rm skydns
      ExecStartPre=/usr/bin/env docker pull tacodata/skydns-coreos
      ExecStart=/usr/bin/env bash -c '/usr/bin/docker run --name skydns -p 53:53/udp test/skydns-nameservers 8.8.8.8:53 -domain local
      ExecStop=-/usr/bin/docker stop skydns
  [Install]
  WantedBy = multi-user.target
systemd init的东西有一点学习曲线。我也不知道一个云配置文件将如何在流浪环境中运行。许多平台使用云配置,因此,这是一个很好的开始

-g