私は2つのCoreOS安定(1185.5.0)サーバを自宅に持っています。私はkubernetesコントローラとワーカーをこの2つにインストールしようとします。DataStoreError:ETCD_CA_CERT_FILEが無効です。認証局の証明書は必須であり、読み取り可能なファイルパスでなければなりません。
私はhttps://github.com/coreos/coreos-kubernetes/tree/master/multi-node/genericからインストールするためにcoreos-kubernetesスクリプトを使用し、https://github.com/kfirufk/coreos-kubernetes-multi-node-generic-install-scriptからパッチを当てました。私はrkt
を使用して、関連するコンテナを実行します。
ETCD_AUTHORITY=coreos-3.tux-in.com:2379
ETCD_ENDPOINTS="https://coreos-2.tux-in.com:2379,https://coreos-3.tux-in.com:2379"
CONTROLLER_ENDPOINT=https://coreos-2.tux-in.com
K8S_VER=v1.5.0-beta.3_coreos.0
HYPERKUBE_IMAGE_REPO=quay.io/coreos/hyperkube
DNS_SERVICE_IP=10.3.0.10
USE_CALICO=true
CONTAINER_RUNTIME=rkt
OVERWRITE_ALL_FILES=true
ADVERTISE_IP=10.79.218.3
ETCD_CERT_FILE="/etc/ssl/etcd/etcd2.pem"
ETCD_KEY_FILE="/etc/ssl/etcd/etcd2-key.pem"
ETCD_TRUSTED_CA_FILE="/etc/ssl/etcd/ca.pem"
ETCD_SCHEME="https"
IS_MASK_UPDATE_ENGINE=false
coreos-2.tux-in.com
10.79.218.2
に解決コントローラノードです:
私は、次の環境変数のオプションオーバーライドファイルを使用します。
coreos-3.tux-in.com
10.79.218.3
はワーカーノードです。
コントローラスクリプトがうまくインストールされているようです。
私は第二のサーバー上kubernetesワーカーをインストールしようとすると、私は次のエラーメッセージがkubeletログに表示されて続けて気づい:
2016-12-12 12:24:08,171 6960 [kube-system/kubernetes-dashboard-v1.4.1-kjj0c] ERROR Unhandled Exception killed plugin
Dec 12 12:24:08 coreos-3.tux-in.com kubelet-wrapper[1786]: Traceback (most recent call last):
Dec 12 12:24:08 coreos-3.tux-in.com kubelet-wrapper[1786]: File "<string>", line 773, in main
Dec 12 12:24:08 coreos-3.tux-in.com kubelet-wrapper[1786]: File "<string>", line 64, in __init__
Dec 12 12:24:08 coreos-3.tux-in.com kubelet-wrapper[1786]: File "site-packages/pycalico/datastore.py", line 229, in __init__
Dec 12 12:24:08 coreos-3.tux-in.com kubelet-wrapper[1786]: DataStoreError: Invalid ETCD_CA_CERT_FILE. Certificate Authority cert is required and must be a readable file path. Value provided:
Dec 12 12:24:08 coreos-3.tux-in.com kubelet-wrapper[1786]: 2016-12-12 12:24:08,171 6960 [kube-system/kubernetes-dashboard-v1.4.1-kjj0c] ERROR CNI Error:
Dec 12 12:24:08 coreos-3.tux-in.com kubelet-wrapper[1786]: {
Dec 12 12:24:08 coreos-3.tux-in.com kubelet-wrapper[1786]: "msg": "Unhandled Exception killed plugin",
Dec 12 12:24:08 coreos-3.tux-in.com kubelet-wrapper[1786]: "cniVersion": "0.1.0",
Dec 12 12:24:08 coreos-3.tux-in.com kubelet-wrapper[1786]: "code": 100,
Dec 12 12:24:08 coreos-3.tux-in.com kubelet-wrapper[1786]: "details": null
Dec 12 12:24:08 coreos-3.tux-in.com kubelet-wrapper[1786]: }
Dec 12 12:24:08 coreos-3.tux-in.com kubelet-wrapper[1786]: Traceback (most recent call last):
Dec 12 12:24:08 coreos-3.tux-in.com kubelet-wrapper[1786]: File "<string>", line 773, in main
Dec 12 12:24:08 coreos-3.tux-in.com kubelet-wrapper[1786]: File "<string>", line 64, in __init__
Dec 12 12:24:08 coreos-3.tux-in.com kubelet-wrapper[1786]: File "site-packages/pycalico/datastore.py", line 229, in __init__
Dec 12 12:24:08 coreos-3.tux-in.com kubelet-wrapper[1786]: DataStoreError: Invalid ETCD_CA_CERT_FILE. Certificate Authority cert is required and must be a readable file path. Value provided:
Invalid ETCD_CA_CERT_FILE
エラーメッセージがどのショー、提供された値が空であることを示しています何らかの理由でETCD_CA_CERT_FILE環境変数が設定されていないことを確認してください。 /etc/systemd/system/kubelet.service
を編集して[サービス]の下にEnvironment=ETCD_CA_CERT_FILE=/etc/ssl/etcd/ca.pem
を追加しようとしましたが、結果は同じです。何か案は ?