2016-10-08 12 views
0

krubernetes 1.4でインストールしようとしていますが、CoreOSベータ(1185.1.0)のrktコンテナでインストールしています。ポッドネットワークの設定に失敗しました:未処理の例外が発生しましたプラグインを無効にしました

一般に、私は、家庭に2台のCoreOS PCマシンがあり、etcd2 tls証明書で設定されています。

私は、cored-kubernetes自動インストールスクリプトをパッチして、etcd2 tls証明書をサポートしました。最新の労働者のバージョンとコントローラのスクリプトをインストールがhttps://github.com/kfirufk/coreos-kubernetes-multi-node-generic-install-script

に掲載されている私は、インストールスクリプト(:10.79.218.2、ドメイン:IP coreos-2.tux-in.com)coreosコントローラについては、以下の環境変数を使用

ADVERTISE_IP=10.79.218.2 
ETCD_ENDPOINTS="https://coreos-2.tux-in.com:2379,https://coreos-3.tux-in.com:2379" 
K8S_VER=v1.4.1_coreos.0 
HYPERKUBE_IMAGE_REPO=quay.io/coreos/hyperkube 
POD_NETWORK=10.2.0.0/16 
SERVICE_IP_RANGE=10.3.0.0/24 
K8S_SERVICE_IP=10.3.0.1 
DNS_SERVICE_IP=10.3.0.10 
USE_CALICO=true 
CONTAINER_RUNTIME=rkt 
ETCD_CERT_FILE="/etc/ssl/etcd/etcd1.pem" 
ETCD_KEY_FILE="/etc/ssl/etcd/etcd1-key.pem" 
ETCD_TRUSTED_CA_FILE="/etc/ssl/etcd/ca.pem" 
ETCD_CLIENT_CERT_AUTH=true 
OVERWRITE_ALL_FILES=true 
CONTROLLER_HOSTNAME="coreos-2.tux-in.com" 
ETCD_CERT_ROOT_DIR="/etc/ssl/etcd" 
ETCD_SCHEME="https" 
ETCD_AUTHORITY="coreos-2.tux-in.com:2379" 
IS_MASK_UPDATE_ENGINE=false 

、これらは、環境変数は、私は労働者のcoreosインストールスクリプトを使用(IP:10.79.218.3、ドメイン:coreos-3.tux-in.com)をインストールした後

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.4.1_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 

kubernet両方のマシンで、ES、および適切kubectlを設定するには、私はkubectl get nodesを入力したときに私が手:

NAME   STATUS      AGE 
10.79.218.2 Ready,SchedulingDisabled 1h 
10.79.218.3 Ready      1h 

kubectl get pods --namespace=kube-system戻り

NAME         READY  STATUS    RESTARTS AGE 
heapster-v1.2.0-3646253287-j951o  0/2  ContainerCreating 0   1d 
kube-apiserver-10.79.218.2   1/1  Running    0   1d 
kube-controller-manager-10.79.218.2 1/1  Running    0   1d 
kube-dns-v20-u3pd0     0/3  ContainerCreating 0   1d 
kube-proxy-10.79.218.2    1/1  Running    0   1d 
kube-proxy-10.79.218.3    1/1  Running    0   1d 
kube-scheduler-10.79.218.2   1/1  Running    0   1d 
kubernetes-dashboard-v1.4.1-ehiez  0/1  ContainerCreating 0   1d 

をそうheapster-v1.2.0-3646253287-j951okube-dns-v20-u3pd0kubernetes-dashboard-v1.4.1-ehiezはContainerCreating状態で立ち往生しています。

私がkubectl describeを実行すると、基本的に同じエラーが発生します:Error syncing pod, skipping: failed to SyncPod: failed to set up pod network: Unhandled Exception killed plugin。例えば

kubectl describe pods kubernetes-dashboard-v1.4.1-ehiez --namespace kube-systemリターン:

Name:  kubernetes-dashboard-v1.4.1-ehiez 
Namespace: kube-system 
Node:  10.79.218.3/10.79.218.3 
Start Time: Mon, 17 Oct 2016 23:31:43 +0300 
Labels:  k8s-app=kubernetes-dashboard 
     kubernetes.io/cluster-service=true 
     version=v1.4.1 
Status:  Pending 
IP: 
Controllers: ReplicationController/kubernetes-dashboard-v1.4.1 
Containers: 
    kubernetes-dashboard: 
    Container ID: 
    Image:  gcr.io/google_containers/kubernetes-dashboard-amd64:v1.4.1 
    Image ID: 
    Port:  9090/TCP 
    Limits: 
     cpu: 100m 
     memory: 50Mi 
    Requests: 
     cpu:  100m 
     memory:  50Mi 
    State:  Waiting 
     Reason:  ContainerCreating 
    Ready:  False 
    Restart Count: 0 
    Liveness:  http-get http://:9090/ delay=30s timeout=30s period=10s #success=1 #failure=3 
    Volume Mounts: 
     /var/run/secrets/kubernetes.io/serviceaccount from default-token-svbiv (ro) 
    Environment Variables: <none> 
Conditions: 
    Type  Status 
    Initialized True 
    Ready  False 
    PodScheduled True 
Volumes: 
    default-token-svbiv: 
    Type: Secret (a volume populated by a Secret) 
    SecretName: default-token-svbiv 
QoS Class: Guaranteed 
Tolerations: CriticalAddonsOnly=:Exists 
Events: 
    FirstSeen LastSeen Count From   SubobjectPath Type  Reason  Message 
    --------- -------- ----- ----   ------------- -------- ------  ------- 
    1d  25s  9350 {kubelet 10.79.218.3}   Warning  FailedSync Error syncing pod, skipping: failed to SyncPod: failed to set up pod network: Unhandled Exception killed plugin 

私はポッドネットワーキングが原因で故障しキャラコ構成で動作していないことを推測している。..

ので、私はcalicoctlのRKTコンテナをインストールしようとしたが、持っていましたそれに伴う問題。それは別のstackoverflowの質問:) starting calicoctl container on coreos

私は本当にカリコが正しく動作するかどうかを確認することはできません。

[Unit] 
Description=Calico per-host agent 
Requires=network-online.target 
After=network-online.target 

[Service] 
Slice=machine.slice 
Environment=CALICO_DISABLE_FILE_LOGGING=true 
Environment=HOSTNAME=10.79.218.3 
Environment=IP=10.79.218.3 
Environment=FELIX_FELIXHOSTNAME=10.79.218.3 
Environment=CALICO_NETWORKING=true 
Environment=NO_DEFAULT_POOLS=true 
Environment=ETCD_ENDPOINTS=https://coreos-2.tux-in.com:2379,https://coreos-3.tux-in.com:2379 
Environment=ETCD_AUTHORITY=coreos-3.tux-in.com:2379 
Environment=ETCD_SCHEME=https 
Environment=ETCD_CA_CERT_FILE=/etc/ssl/etcd/ca.pem 
Environment=ETCD_CERT_FILE=/etc/ssl/etcd/etcd2.pem 
Environment=ETCD_KEY_FILE=/etc/ssl/etcd/etcd2-key.pem 

ExecStart=/usr/bin/rkt run --inherit-env --stage1-from-dir=stage1-fly.aci --volume=var-run-calico,kind=host,source=/var/run/calico --volume=modules,kind=host,source=/lib/modules,readOnly=false --mount=volume=modules,target=/lib/modules --volume=dns,kind=host,source=/etc/resolv.conf,readOnly=true --volume=etcd-tls-certs,kind=host,source=/etc/ssl/etcd,readOnly=true --mount=volume=dns,target=/etc/resolv.conf --mount=volume=etcd-tls-certs,target=/etc/ssl/etcd --mount=volume=var-run-calico,target=/var/run/calico --trust-keys-from-https quay.io/calico/node:v0.22.0 
KillMode=mixed 
Restart=always 
TimeoutStartSec=0 

[Install] 
WantedBy=multi-user.target 

とワーカーノードのキャラコノードのサービス・ファイルである:

[Unit] 
Description=Calico per-host agent 
Requires=network-online.target 
After=network-online.target 

[Service] 
Slice=machine.slice 
Environment=CALICO_DISABLE_FILE_LOGGING=true 
Environment=HOSTNAME=10.79.218.2 
Environment=IP=10.79.218.2 
Environment=FELIX_FELIXHOSTNAME=10.79.218.2 
Environment=CALICO_NETWORKING=true 
Environment=NO_DEFAULT_POOLS=false 
Environment=ETCD_ENDPOINTS=https://coreos-2.tux-in.com:2379,https://coreos-3.tux-in.com:2379 
ExecStart=/usr/bin/rkt run --inherit-env --stage1-from-dir=stage1-fly.aci --volume=var-run-calico,kind=host,source=/var/run/calico --volume=modules,kind=host,source=/lib/modules,readOnly=false --mount=volume=modules,target=/lib/modules --volume=dns,kind=host,source=/etc/resolv.conf,readOnly=true --volume=etcd-tls-certs,kind=host,source=/etc/ssl/etcd,readOnly=true --mount=volume=dns,target=/etc/resolv.conf --mount=volume=etcd-tls-certs,target=/etc/ssl/etcd --mount=volume=var-run-calico,target=/var/run/calico --trust-keys-from-https quay.io/calico/node:v0.22.0 
KillMode=mixed 
Environment=ETCD_CA_CERT_FILE=/etc/ssl/etcd/ca.pem 
Environment=ETCD_CERT_FILE=/etc/ssl/etcd/etcd1.pem 
Environment=ETCD_KEY_FILE=/etc/ssl/etcd/etcd1-key.pem 
Restart=always 
TimeoutStartSec=0 

[Install] 
WantedBy=multi-user.target 

、これはコンテンツである

このキャラコネットワークでは、コントローラノードのサービスファイルシステムDコントローラノードの/etc/kubernetes/cni/net.d/10-calico.confの:

{ 
    "name": "calico", 
    "type": "flannel", 
    "delegate": { 
     "type": "calico", 
     "etcd_endpoints": "https://coreos-2.tux-in.com:2379,https://coreos-3.tux-in.com:2379", 
"etcd_key_file": "/etc/ssl/etcd/etcd1-key.pem", 
"etcd_cert_file": "/etc/ssl/etcd/etcd1.pem", 
"etcd_ca_cert_file": "/etc/ssl/etcd/ca.pem", 
     "log_level": "none", 
     "log_level_stderr": "info", 
     "hostname": "10.79.218.2", 
     "policy": { 
      "type": "k8s", 
      "k8s_api_root": "http://127.0.0.1:8080/api/v1/" 
     } 
    } 
} 

これは0123ですさらに問題を調査するためにどのように今

{ 
    "name": "calico", 
    "type": "flannel", 
    "delegate": { 
     "type": "calico", 
     "etcd_endpoints": "https://coreos-2.tux-in.com:2379,https://coreos-3.tux-in.com:2379", 
"etcd_key_file": "/etc/ssl/etcd/etcd2-key.pem", 
"etcd_cert_file": "/etc/ssl/etcd/etcd2.pem", 
"etcd_ca_cert_file": "/etc/ssl/etcd/ca.pem", 
     "log_level": "debug", 
     "log_level_stderr": "info", 
     "hostname": "10.79.218.3", 
     "policy": { 
      "type": "k8s", 
      "k8s_api_root": "https://coreos-2.tux-in.com:443/api/v1/", 
      "k8s_client_key": "/etc/kubernetes/ssl/worker-key.pem", 
      "k8s_client_certificate": "/etc/kubernetes/ssl/worker.pem" 
     } 
    } 
} 

アイデア:ワーカーノードの。 新しいcalico-cniが動かされて以来、ログ情報はログファイルに保存されないので、ここからは失われていることを理解しています。 この問題に関する情報は非常に高く評価されます。

ありがとうございました!

答えて

0

Calico CNIプラグインによって "Unhandled Exception Killed plugin"エラーメッセージが生成されています。私の経験からは、そのエラーの原因となるのは、calico-node.serviceで間違っている可能性は低いということです。

このように、おそらく何か微妙にCNIネットワーク設定に間違っています。そのファイルを共有できますか?

CNIプラグインは、CNIネットワーク設定での設定方法に基づいて、より詳細なログ情報(stderrまたは/var/log/calico/cni/calico.log)を発行する必要があります。私はファイルが間違っていることを正確にあなたにもっと手掛かりを与えるだろうと思う。

「Unhandled Exception」エラーはPythonバージョンのCNIプラグインから来ていますが、この時点ではかなり古くなっています。最新の安定版リリースにアップグレードすることをおすすめします。https://github.com/projectcalico/calico-cni/releases

+0

ありがとうございます。メインの投稿を要求された情報で更新しました – ufk

+0

@ufk未処理の例外エラーが表示されている場合は、おそらくまだPythonバージョンになっています。最新のGolang CNIプラグインにアップグレードすることをお勧めします。 –

関連する問題