我已经按照GCE指南上的CoreOS 。
但看起来我有问题了解用户数据元数据字段是什么,以及如何让我的云configuration文件被读取..
在具有我的cloud-config.yaml文件的目录中,我运行了以下命令:
gcutil --project=my-proj-704 addinstance --image=projects/coreos-cloud/global/images/coreos- stable-410-0-0-v20140902 --persistent_boot_disk --zone=europe-west1-a --machine_type=n1-standard-1 --metadata_from_file=user-data:cloud-config.yaml --permit_root_ssh aa-gce-thing
我的cloud-config.yaml看起来像这样…
#cloud-config users: - name: mgm groups: - sudo - docker ssh-authorized-keys: - ssh-rsa AAAAB3NzaC1yc2EAAAABJQ ... mgm ssh_authorized_keys: - ssh-rsa AAAAB3NzaC1yc2EAAAA.... core - ssh-rsa AAAAB3NzaC1yc2EAAAA.... mgm coreos: etcd: # generate a new token for each unique cluster from https://discovery.etcd.io/new discovery: https://discovery.etcd.io/44216d6f1z... # multi-region and multi-cloud deployments need to use $public_ipv4 addr: $private_ipv4:4001 peer-addr: $private_ipv4:7001 fleet: public-ip: $public_ipv4 metadata: region=europe-west1-a units: - name: etcd.service command: start - name: fleet.service command: start - name: format-ephemeral.service command: start content: | [Unit] Description=Formats the ephemeral drive [Service] Type=oneshot RemainAfterExit=yes ExecStart=/usr/sbin/wipefs -f /dev/disk/by-id/scsi-0Google_PersistentDisk_docker-storage-1 ExecStart=/usr/sbin/mkfs.btrfs -f /dev/disk/by-id/scsi-0Google_PersistentDisk_docker-storage-1 - name: var-lib-docker.mount command: start content: | [Unit] Description=Mount ephemeral to /var/lib/docker Requires=format-ephemeral.service After=format-ephemeral.service Before=docker.service [Mount] What=/dev/disk/by-id/scsi-0Google_PersistentDisk_docker-storage-1 Where=/var/lib/docker Type=btrfs
CoreOS系统没有任何工作,没有任何的挂载,服务等…..
有任何想法吗?
即使试了一个非常简单的文件…
coreos: etcd: # generate a new token for each unique cluster from https://discovery.etcd.io/new discovery: https://discovery.etcd.io/7cb8b85dea06c5041720 # multi-region and multi-cloud deployments need to use $public_ipv4 addr: $private_ipv4:4001 peer-addr: $private_ipv4:7001 units: - name: etcd.service command: start - name: fleet.service command: start
没有骰子….
您的云端configuration无效。
groups:需要嵌套在该用户下,而不是在顶层。
您也可以在实际发送到在线服务器之前检查您的cloud-init文件。
你也可以在控制台上检查它
sudo coreos-cloudinit -validate=true --from-file cloud-init
命令