貴重なKubernetes guru's!Kubernetes:mount:AWS EBSボリュームを接続するときに特別なデバイスが存在しません
私は、手動で作成したAWSホスト上で、「contrib」Ansibleプレイブック(https://github.com/kubernetes/contrib/tree/master/ansible)を使用してkube 1.4.1クラスタをスピンアップしました。
私の問題は、KubeがEBSドライブをミニオンホストに接続しないということです。次のように私はポッドを定義する場合:
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: kafka1
spec:
replicas: 1
template:
spec:
containers:
- name: kafka1
image: daniilyar/kafka
ports:
- containerPort: 9092
name: clientconnct
protocol: TCP
volumeMounts:
- mountPath: /kafka
name: storage
volumes:
- name: storage
awsElasticBlockStore:
volumeID: vol-56676d83
fsType: ext4
私はkubelet.logで次のエラーを取得する:
Mounting arguments: /var/lib/kubelet/plugins/kubernetes.io/aws-ebs/mounts/vol-56676d83 /var/lib/kubelet/pods/db213783-9477-11e6-8aa9-12f3d1cdf81a/volumes/kubernetes.io~aws-ebs/storage [bind]
Output: mount: special device /var/lib/kubelet/plugins/kubernetes.io/aws-ebs/mounts/vol-56676d83 does not exist
EBSボリュームがその中に「利用可能」状態にあることで維持するため、私は確信してKUBEことですはホストに全くボリュームを添付しないので、はをマウントしません。 私はこれは私がうまくこの手先にこの子分の中から手動で同じボリュームをマウントすることができますので、Kubernetes自体は許認可の問題を発行していないことを100%確信している:
$ aws ec2 --region us-east-1 attach-volume --volume-id vol-56676d83 --instance-id $(wget -q -O - http://instance-data/latest/meta-data/instance-id) --device /dev/sdc
{
"AttachTime": "2016-10-18T15:02:41.672Z",
"InstanceId": "i-603cfb50",
"VolumeId": "vol-56676d83",
"State": "attaching",
"Device": "/dev/sdc"
}
、グーグルハッキングや古いK8をしようバージョンはこれを解決するのに役立たなかった。 誰でも問題を理解するために他に何ができるのか教えてください。問題を解決できますか?どんな助けでも大歓迎です。
「のcontrib」Ansibleの脚本(https://github.com/kubernetes/contrib/tree/master/ansible)取り付けEBSボリュームによってインストールされたK8クラスタを取得するには:私の髪を引っ張っ日後、私は自分で解決策を見つけたので
この回答を投稿していただきありがとうございます。私のためにそれを固定した。 – stephanlindauer