【发布时间】:2017-10-28 13:34:29
【问题描述】:
我有一个进程需要每天在 Docker 容器中运行,将一些数据从存储桶同步到外部卷(谷歌云永久磁盘)。到目前为止,我成功地通过创建一个单节点容器集群来启动这个过程。
由于该过程在几个小时内完成,因此我想在完成后删除 VM 资源(当然永久磁盘除外)。启动/删除单个计算 VM(没有 kubernetes 集群设置)似乎更简单,所以我试图让 single kubelet 在容器优化的云实例上运行。 永久磁盘安装是失败的地方。
我的启动命令:
gcloud compute instances create cvm-name-0 \
--image-family=cos-stable \
--image-project=cos-cloud \
--boot-disk-type pd-ssd \
--boot-disk-size 10GB \
--metadata-from-file \
"google-container-manifest=containers.yaml,user-data=cloudinit.yaml" \
--zone "$gzone" \
--scopes default,storage-rw \
--machine-type n1-highcpu-4
container.yaml的内容:
apiVersion: v1
kind: Pod
metadata:
name: container-name
spec:
containers:
- name: container-name
image: gcr.io/project-name/container-name
imagePullPolicy: Always
volumeMounts:
- name: persistent-disk-name
mountPath: /home/someuser/somedir
volumes:
- name: persistent-disk-name
gcePersistentDisk:
pdName: persistent-disk-name
fsType: ext4
cloudinit.yaml的内容:
#cloud-config
bootcmd:
- echo "KUBELET_OPTS=\"--cloud-provider=gce\"" > /etc/default/kubelet
runcmd:
- systemctl start kubelet.service
虽然--cloud-provider=gce 选项修复了每个this question 的“无法获取 GCE 云提供商”错误,但安装磁盘仍然存在一些问题。
容器操作系统日志中可能相关的一行说:
EXT4-fs (dm-0):由于功能不兼容,无法安装为 ext3
有什么方法可以在单个计算实例上工作(没有 kubernetes 集群)?我还应该在哪里寻找更多信息性错误日志?
【问题讨论】:
标签: docker kubernetes google-cloud-platform kubelet google-container-os