<p>kubeadm init menunggu control plane siap di CentOS 7.2 dengan kubeadm 1.6.1</p>

Dibuat pada 6 Apr 2017  ·  52Komentar  ·  Sumber: kubernetes/kubeadm

Setelah mengunduh kubeadm 1.6.1 dan memulai kubeadm init, ia macet di [apiclient] Created API client, menunggu control plane siap

kubeadm init --kubernetes-version v1.6.1 --apiserver-advertise-address=10.X.X.X
[kubeadm] WARNING: kubeadm is in beta, please do not use it for production clusters.
[init] Using Kubernetes version: v1.6.1
[init] Using Authorization mode: RBAC
[preflight] Running pre-flight checks
[certificates] Generated CA certificate and key.
[certificates] Generated API server certificate and key.
[certificates] API Server serving cert is signed for DNS names [<hostname> kubernetes kubernetes.default kubernetes.default.svc kubernetes.default.svc.cluster.local] and IPs [10.96.0.1 10.X.X.X]
[certificates] Generated API server kubelet client certificate and key.
[certificates] Generated service account token signing key and public key.
[certificates] Generated front-proxy CA certificate and key.
[certificates] Generated front-proxy client certificate and key.
[certificates] Valid certificates and keys now exist in "/etc/kubernetes/pki"
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/scheduler.conf"
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/admin.conf"
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/kubelet.conf"
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/controller-manager.conf"
[apiclient] Created API client, waiting for the control plane to become ready

Saya memiliki 10-kubeadm.conf berikut

cat /etc/systemd/system/kubelet.service.d/10-kubeadm.conf 
[Service]
Environment="KUBELET_KUBECONFIG_ARGS=--kubeconfig=/etc/kubernetes/kubelet.conf --require-kubeconfig=true"
Environment="KUBELET_SYSTEM_PODS_ARGS=--pod-manifest-path=/etc/kubernetes/manifests --allow-privileged=true"
Environment="KUBELET_NETWORK_ARGS=--network-plugin=cni --cni-conf-dir=/etc/cni/net.d --cni-bin-dir=/opt/cni/bin"
Environment="KUBELET_DNS_ARGS=--cluster-dns=192.168.0.10 --cluster-domain=cluster.local"
Environment="KUBELET_AUTHZ_ARGS=--authorization-mode=Webhook --client-ca-file=/etc/kubernetes/pki/ca.crt"
ExecStart=
ExecStart=/usr/bin/kubelet $KUBELET_KUBECONFIG_ARGS $KUBELET_SYSTEM_PODS_ARGS $KUBELET_NETWORK_ARGS $KUBELET_DNS_ARGS $KUBELET_AUTHZ_ARGS $KUBELET_EXTRA_ARGS --cgroup-driver=systemd

Jadi, ini bukan lagi masalah cgroup. Juga, saya telah menghapus aturan iptables dan menonaktifkan selinux. Saya juga telah menentukan alamat IP antarmuka yang ingin saya gunakan untuk master saya tetapi masih tidak berhasil.

Dari log,

Apr 06 12:55:55 hostname kubelet[5174]: I0406 12:55:55.087703    5174 kubelet_node_status.go:230] Setting node annotation to enable volume controller attach/detach
Apr 06 12:55:55 hostname kubelet[5174]: I0406 12:55:55.146554    5174 kubelet_node_status.go:77] Attempting to register node hostname
Apr 06 12:55:55 hostname kubelet[5174]: E0406 12:55:55.147133    5174 kubelet_node_status.go:101] Unable to register node "hostname" with API server: Post https://10.X.X.X:6443/api/v1/nodes: dial tcp 10.X.X.X:6443: getsockopt: connection refused
Apr 06 12:55:55 hostname kubelet[5174]: E0406 12:55:55.553801    5174 reflector.go:190] k8s.io/kubernetes/pkg/kubelet/kubelet.go:382: Failed to list *v1.Service: Get https://10.X.X.X:6443/api/v1/services?resourceVersion=0: dial tcp 10.X.X.X:6443: getsockopt: connection refused
Apr 06 12:55:55 hostname kubelet[5174]: E0406 12:55:55.555837    5174 reflector.go:190] k8s.io/kubernetes/pkg/kubelet/kubelet.go:390: Failed to list *v1.Node: Get https://10.X.X.X:6443/api/v1/nodes?fieldSelector=metadata.name%3Dhostname&resourceVersion=0: dial tcp 10.X.X.X:6443: getsockopt: connection refused
Apr 06 12:55:55 hostname kubelet[5174]: E0406 12:55:55.556271    5174 reflector.go:190] k8s.io/kubernetes/pkg/kubelet/config/apiserver.go:46: Failed to list *v1.Pod: Get https://10.X.X.X:6443/api/v1/pods?fieldSelector=spec.nodeName%3Dhostname&resourceVersion=0: dial tcp 10.X.X.X:6443: getsockopt: connection refused
Apr 06 12:55:55 hostname kubelet[5174]: E0406 12:55:55.828198    5174 event.go:208] Unable to write event: 'Post https://10.X.X.X:6443/api/v1/namespaces/default/events: dial tcp 10.X.X.X:6443: getsockopt: connection refused' (may retry after sleeping)
Apr 06 12:55:56 hostname kubelet[5174]: E0406 12:55:56.555099    5174 reflector.go:190] k8s.io/kubernetes/pkg/kubelet/kubelet.go:382: Failed to list *v1.Service: Get https://10.X.X.X:6443/api/v1/services?resourceVersion=0: dial tcp 10.X.X.X:6443: getsockopt: connection refused
Apr 06 12:55:56 hostname kubelet[5174]: E0406 12:55:56.556772    5174 reflector.go:190] k8s.io/kubernetes/pkg/kubelet/kubelet.go:390: Failed to list *v1.Node: Get https://10.X.X.X:6443/api/v1/nodes?fieldSelector=metadata.name%3Dhostname&resourceVersion=0: dial tcp 10.X.X.X:6443: getsockopt: connection refused
Apr 06 12:55:56 hostname kubelet[5174]: E0406 12:55:56.557978    5174 reflector.go:190] k8s.io/kubernetes/pkg/kubelet/config/apiserver.go:46: Failed to list *v1.Pod: Get https://10.X.X.X:6443/api/v1/pods?fieldSelector=spec.nodeName%3Dhostname&resourceVersion=0: dial tcp 10.X.X.X:6443: getsockopt: connection refused
Apr 06 12:55:56 hostname kubelet[5174]: I0406 12:55:56.760733    5174 kubelet.go:1752] skipping pod synchronization - [Failed to start ContainerManager systemd version does not support ability to start a slice as transient unit]
Apr 06 12:55:56 hostname kubelet[5174]: W0406 12:55:56.858684    5174 cni.go:157] Unable to update cni config: No networks found in /etc/cni/net.d
Apr 06 12:55:56 hostname kubelet[5174]: E0406 12:55:56.858931    5174 kubelet.go:2067] Container runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized
Apr 06 12:55:57 hostname kubelet[5174]: E0406 12:55:57.556067    5174 reflector.go:190] k8s.io/kubernetes/pkg/kubelet/kubelet.go:382: Failed to list *v1.Service: Get https://10.X.X.X:6443/api/v1/services?resourceVersion=0: dial tcp 10.X.X.X:6443: getsockopt: connection refused
Apr 06 12:55:57 hostname kubelet[5174]: E0406 12:55:57.557441    5174 reflector.go:190] k8s.io/kubernetes/pkg/kubelet/kubelet.go:390: Failed to list *v1.Node: Get https://10.X.X.X:6443/api/v1/nodes?fieldSelector=metadata.name%3Dhostname&resourceVersion=0: dial tcp 10.X.X.X:6443: getsockopt: connection refused
Apr 06 12:55:57 hostname kubelet[5174]: E0406 12:55:57.558822    5174 reflector.go:190] k8s.io/kubernetes/pkg/kubelet/config/apiserver.go:46: Failed to list *v1.Pod: Get https://10.X.X.X:6443/api/v1/pods?fieldSelector=spec.nodeName%3Dhostname&resourceVersion=0: dial tcp 10.X.X.X:6443: getsockopt: connection refused
Apr 06 12:55:58 hostname kubelet[5174]: I0406 12:55:58.347460    5174 kubelet_node_status.go:230] Setting node annotation to enable volume controller attach/detach
Apr 06 12:55:58 hostname kubelet[5174]: I0406 12:55:58.405762    5174 kubelet_node_status.go:77] Attempting to register node hostname
Apr 06 12:55:58 hostname kubelet[5174]: E0406 12:55:58.406037    5174 kubelet_node_status.go:101] Unable to register node "hostname" with API server: Post https://10.X.X.X:6443/api/v1/nodes: dial tcp 10.X.X.X:6443: getsockopt: connection refused
Apr 06 12:55:58 hostname kubelet[5174]: E0406 12:55:58.556829    5174 reflector.go:190] k8s.io/kubernetes/pkg/kubelet/kubelet.go:382: Failed to list *v1.Service: Get https://10.X.X.X:6443/api/v1/services?resourceVersion=0: dial tcp 10.X.X.X:6443: getsockopt: connection refused

Versi

versi kubeadm (gunakan kubeadm version ):
versi kubeadm
kubeadm versi: version.Info{Mayor:"1", Minor:"6", GitVersion:"v1.6.1", GitCommit:"b0b7a323cc5a4a2019b2e9520c21c7830b7f708e", GitTreeState:"clean", BuildDate:"04-03T20:33: 27Z", GoVersion:"go1.7.5", Kompilator:"gc", Platform:"linux/amd64"}

Lingkungan :

  • Versi Kubernetes (gunakan kubectl version ):
  • Penyedia cloud atau konfigurasi perangkat keras :
    Node logam telanjang
  • OS (mis. dari /etc/os-release):
    cat /etc/redhat-release
    CentOS Linux rilis 7.2.1511 (Inti)
  • Kernel (misalnya uname -a ):
    uname -a
    Nama host Linux 3.10.0-327.18.2.el7.x86_64 #1 SMP Kam 12 Mei 11:03:55 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
  • Lainnya :
    buruh pelabuhan -v
    Docker versi 1.12.6, build 96d83a5/1.12.6
    rpm -qa | grep kube
    kubelet-1.6.1-0.x86_64
    kubernetes-cni-0.5.1-0.x86_64
    kubeadm-1.6.1-0.x86_64
    kubectl-1.6.1-0.x86_64

Apa yang terjadi?

Kubeadm terjebak menunggu pesawat kontrol bersiap-siap

Apa yang Anda harapkan terjadi?

Seharusnya sudah melewati dan menyelesaikan init

kinsupport statneeds-more-information

Komentar yang paling membantu

Saya memiliki rilis CentOS Linux 7.3.1611 (Core) dan KubeAdm 1.6.4 tidak berfungsi.

cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=http://yum.kubernetes.io/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
EOF

setenforce 0
# edit /etc/selinux/config and set SELINUX=disabled
yum install docker kubelet kubeadm kubectl kubernetes-cni
systemctl enable docker
systemctl start docker
systemctl enable kubelet
systemctl start kubelet
reboot
kubeadm init

Keluaran:

kubeadm init
[kubeadm] WARNING: kubeadm is in beta, please do not use it for production clusters.
[init] Using Kubernetes version: v1.6.4
[init] Using Authorization mode: RBAC
[preflight] Running pre-flight checks
[preflight] WARNING: hostname "kubernet01.localdomain" could not be reached
[preflight] WARNING: hostname "kubernet01.localdomain" lookup kubernet01.localdomain on XXXXXXX:53: read udp XXXXXXX:56624->XXXXXXX:53: i/o timeout
[preflight] Starting the kubelet service
[certificates] Generated CA certificate and key.
[certificates] Generated API server certificate and key.
[certificates] API Server serving cert is signed for DNS names [kubernet01.localdomain kubernetes kubernetes.default kubernetes.default.svc kubernetes.default.svc.cluster.local] and IPs [10.96.0.1 10.11.112.51]
[certificates] Generated API server kubelet client certificate and key.
[certificates] Generated service account token signing key and public key.
[certificates] Generated front-proxy CA certificate and key.
[certificates] Generated front-proxy client certificate and key.
[certificates] Valid certificates and keys now exist in "/etc/kubernetes/pki"
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/kubelet.conf"
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/controller-manager.conf"
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/scheduler.conf"
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/admin.conf"
[apiclient] Created API client, waiting for the control plane to become ready
Jun 06 17:13:12 kubernet01.localdomain kubelet[11429]: W0606 17:13:12.881451   11429 cni.go:157] Unable to update cni config: No networks found in /etc/cni/net.d
Jun 06 17:13:12 kubernet01.localdomain kubelet[11429]: E0606 17:13:12.882145   11429 kubelet.go:2067] Container runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized
Jun 06 17:13:13 kubernet01.localdomain kubelet[11429]: E0606 17:13:13.519992   11429 reflector.go:190] k8s.io/kubernetes/pkg/kubelet/config/apiserver.go:46: Failed to list *v1.Pod: Get https://10.11.112.51:6443/api/v1/pods?fieldSelector=spec.nodeName%3Dkubernet01.localdomain&resourceVersion=0: dial tcp 10.11.112.51:6443: getsockopt: connection refused
Jun 06 17:13:13 kubernet01.localdomain kubelet[11429]: E0606 17:13:13.520798   11429 reflector.go:190] k8s.io/kubernetes/pkg/kubelet/kubelet.go:382: Failed to list *v1.Service: Get https://10.11.112.51:6443/api/v1/services?resourceVersion=0: dial tcp 10.11.112.51:6443: getsockopt: connection refused
Jun 06 17:13:13 kubernet01.localdomain kubelet[11429]: E0606 17:13:13.521493   11429 reflector.go:190] k8s.io/kubernetes/pkg/kubelet/kubelet.go:390: Failed to list *v1.Node: Get https://10.11.112.51:6443/api/v1/nodes?fieldSelector=metadata.name%3Dkubernet01.localdomain&resourceVersion=0: dial tcp 10.11.112.51:6443: getsockopt: connection refused
Jun 06 17:13:14 kubernet01.localdomain kubelet[11429]: E0606 17:13:14.337588   11429 event.go:208] Unable to write event: 'dial tcp 10.11.112.51:6443: getsockopt: connection refused' (may retry after sleeping)

Semua 52 komentar

Saya mengalami masalah yang sama. Saya juga mencoba menghapus ARGS Jaringan seperti yang disarankan pada masalah lain. Itu masih hang di waiting for control plane to be ready .

Apakah Anda memuat ulang Daemon dan memulai kembali layanan kubelet setelah melakukan perubahan. Ini berfungsi setelah mengubah driver dan mengomentari jaringan. Dibutuhkan 10 sampai 11 menit untuk pesawat kontrol untuk bersiap-siap untuk pertama kalinya bagi saya, saya sarankan meninggalkannya selama 15 menit untuk pertama kalinya.

Saya memang memuat ulang daemon dan me-restart layanan kubelet setiap saat. Saya bahkan membiarkan pengaturan tidak terganggu sepanjang malam tetapi masih menunggu pesawat kontrol.

Saya telah memuat ulang daemon ( systemctl daemon-reload ) dan juga memulai ulang kubelet. Saya menjalankan kubeadm reset , mengedit konfigurasi layanan, memuat ulang daemon, lalu menjalankan kubeadm init .

Wadah buruh pelabuhan apiserver dan etcd gagal dijalankan setelah mengomentari opsi jaringan. Saya juga mencoba menginstal weave-net secara manual sehingga direktori konfigurasi cni akan terisi, tetapi itu juga tidak berhasil. Untuk melakukan ini saya menginstal weave, menjalankan weave setup dan weave launch . Saya tidak begitu tahu bagaimana Kubeadm mengonfigurasi Docker untuk menggunakan pengaturan CNI, tetapi mungkin ada langkah yang saya lewatkan di sini.

Sepertinya kubelet tidak dapat menjangkau server kube api.

Saya perhatikan bahwa etcd tidak dapat mendengarkan pada port 2380, saya telah mengikuti langkah-langkah ini lagi dan cluster saya mulai:

  • Jalankan kubeadm reset untuk menghapus semua perubahan yang dibuat pada server.
  • Kembalikan mesin ke kondisi awal. Dengan menginstal ulang kubeadm (untuk mendapatkan kembali file konfigurasi asli).
  • Hapus wadah buruh pelabuhan yang terkait dengan kubernetes jika ada.
  • Dapatkan dan pasang tenun. Jangan jalankan.
  • Mulai ulang server.
  • Pastikan kubelet tidak berjalan.
  • Jalankan weave setup dan weave launch .
  • Jalankan kubeadm init .

Jika Anda ingin menyingkirkan pengelolaan tenun dengan tangan...

  • Jalankan weave reset
  • Terapkan addon tenun untuk kubernetes 1.6.
  • Mulai ulang server.

Kubeadm join harus bekerja di server lain.

@Yengas Bisakah Anda memberikan detail lebih lanjut tentang langkah-langkah menenun? Apakah Anda menjalankannya di semua node, atau hanya master?

@jruels hanya master node. Weave hanyalah biner tunggal. Perintah penyiapan tanpa argumen apa pun, mengunduh gambar buruh pelabuhan menenun dan membuat konfigurasi CNI. Perintah peluncuran tanpa argumen apa pun memulai wadah menenun di host saja.

@Yengas Masih tidak yakin, apa yang Anda maksud dengan - "dapatkan dan instal weave. Jangan jalankan" Jelas saya tidak dapat melakukan kubectl apply -f https://git.io/weave-kube-1.6 jadi bagaimana cara menginstal weave ?

Apa yang dikatakan oleh log apiserver?

@rushabh268
Untuk menginstal weave, jalankan yang berikut ini di master
sudo curl -L git.io/weave -o /usr/local/bin/weave && chmod a+x /usr/local/bin/weave
Lalu lari
weave setup
Ketika itu selesai dijalankan
weave launch

Anda tidak perlu melakukan itu. kubectl apply -f https://git.io/weave-kube-1.6 sudah cukup.

Log server API mengatakan hal yang sama persis seperti yang saya sebutkan di bug. Juga, saya tidak dapat melakukan kubectl karena Kubernetes tidak diinstal

@jruels Saya akan mencobanya dan memperbarui utas ini!

Dalam deskripsi bug ada log kubeadm dan log kubelet. Tidak ada log apiserver.

@mikedanese Bagaimana cara mendapatkan log apiserver?
@jruels saya bisa memunculkan menenun
@Yengas Bahkan setelah mengikuti langkah Anda, saya melihat kesalahan berikut di log kubelet:
Apr 06 12:55:56 hostname kubelet[5174]: E0406 12:55:56.858931 5174 kubelet.go:2067] Container runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized Apr 06 12:55:57 hostname kubelet[5174]: E0406 12:55:57.556067 5174 reflector.go:190] k8s.io/kubernetes/pkg/kubelet/kubelet.go:382: Failed to list *v1.Service: Get https://10.X.X.X:6443/api/v1/services?resourceVersion=0: dial tcp 10.X.X.X:6443: getsockopt: connection refused Apr 06 12:55:57 hostname kubelet[5174]: E0406 12:55:57.557441 5174 reflector.go:190] k8s.io/kubernetes/pkg/kubelet/kubelet.go:390: Failed to list *v1.Node: Get https://10.X.X.X:6443/api/v1/nodes?fieldSelector=metadata.name%3Dhostname&resourceVersion=0: dial tcp 10.X.X.X:6443: getsockopt: connection refused Apr 06 12:55:57 hostname kubelet[5174]: E0406 12:55:57.558822 5174 reflector.go:190] k8s.io/kubernetes/pkg/kubelet/config/apiserver.go:46: Failed to list *v1.Pod: Get https://10.X.X.X:6443/api/v1/pods?fieldSelector=spec.nodeName%3Dhostname&resourceVersion=0: dial tcp 10.X.X.X:6443: getsockopt: connection refused Apr 06 12:55:58 hostname kubelet[5174]: I0406 12:55:58.347460 5174 kubelet_node_status.go:230] Setting node annotation to enable volume controller attach/detach Apr 06 12:55:58 hostname kubelet[5174]: I0406 12:55:58.405762 5174 kubelet_node_status.go:77] Attempting to register node hostname1

Juga, saya telah menghentikan firewall jadi tidak yakin mengapa koneksi saya ditolak.

Saya mengalami masalah yang sama yang dilaporkan di sini.

Snip dari pesan sistem saya (Master Node) saat macet, untuk berjaga-jaga, itu menunjukkan sesuatu. Btw, saya melakukan ini di Linode.

Apr 12 02:10:00 audit localhost: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=kubelet comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=sukses'
Apr 12 02:10:00 audit localhost: SERVICE_STOP pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=kubelet comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=sukses'
Apr 12 02:10:00 audit localhost: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=kubelet comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=sukses'
12 Apr 02:10:00 localhost systemd: kubelet.service: Waktu penundaan layanan berakhir, penjadwalan dimulai ulang.
12 Apr 02:10:00 localhost systemd: Menghentikan kubelet: Agen Node Kubernetes.
12 Apr 02:10:00 localhost systemd: Memulai kubelet: Agen Node Kubernetes.
12 Apr 02:10:00 localhost systemd: Memulai alat akuntansi aktivitas sistem...
Apr 12 02:10:00 audit localhost: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=sysstat-collect comm="systemd" exe="/usr/lib/systemd/systemd" hostname= ? addr=? terminal=? res=sukses'
Apr 12 02:10:00 audit localhost: SERVICE_STOP pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=sysstat-collect comm="systemd" exe="/usr/lib/systemd/systemd" hostname= ? addr=? terminal=? res=sukses'
12 Apr 02:10:00 localhost systemd: Memulai alat akuntansi aktivitas sistem.
12 Apr 02:10:00 localhost kubelet: I0412 02:10:00.924529 3445 feature_gate.go:144] gerbang fitur: peta[]
12 Apr 02:10:00 localhost kubelet: I0412 02:10:00.928973 3445 docker.go:364] Menghubungkan ke buruh pelabuhan di unix:///var/run/docker.sock
Apr 12 02:10:00 localhost kubelet: I0412 02:10:00.929201 3445 docker.go:384] Mulai klien buruh pelabuhan dengan batas waktu permintaan=2m0s
12 Apr 02:10:00 localhost kubelet: W0412 02:10:00.941088 3445 cni.go:157] Tidak dapat memperbarui konfigurasi cni: Tidak ada jaringan yang ditemukan di /etc/cni/net.d
12 Apr 02:10:00 localhost kubelet: I0412 02:10:00.948892 3445 manager.go:143] cAdvisor berjalan di container: "/system.slice"
12 Apr 02:10:00 localhost kubelet: W0412 02:10:00.974540 3445 manager.go:151] tidak dapat terhubung ke layanan Rkt api: rkt: could tcp Dial rkt api service: dial tcp [::1]:15441: getockopt: koneksi ditolak
12 Apr 02:10:00 localhost kubelet: I0412 02:10:00.997599 3445 fs.go:117] Partisi sistem file: map[/dev/root:{mountpoint:/var/lib/docker/devicemapper mayor:8 minor:0 fsType:ext4 blockSize:0 }]
12 Apr 02:10:01 localhost kubelet: I0412 02:10:01.001662 3445 manager.go:198] Mesin: { NumCores:1 Frekuensi CPU:2799998 Memor yCapacity:1037021184 MachineID:5e9a9a0b58984bfb8766dba9afa8a191 S ystemUUID: 5e9a9a0b58984bfb8766dba9afa8a191191 S ystemUUID: 5e9a481 437b-9460-981eeefdfe5a Filesystem:[{Device:/dev/root Capacity:15447539712 Type:vfs Inodes :962880 HasInodes:true }] DiskMap:map [43:0:{ Name:nbd0 Major:43 Minor:0 Size:0 Scheduler:none } 43:11:{ Name:nbd11 Major:43 Minor:11 Size:0 Scheduler:none } 43:12:{ Name:nbd12 Major:43 Minor:12 Size:0 Scheduler:none } 43:15: { Name:nbd15 Major:43 Minor:15 Size:0 Scheduler:none } 43:7:{ Name:nbd7 Major:43 Minor:7 Size:0 Scheduler:none } 8:0:{ Name:sda Major:8 Minor :0 Ukuran:15728640000 Penjadwal:cfq } 252:0:{ Nama:dm-0 Utama:252 Kecil:0 Ukuran:107374182400 Penjadwal: tidak ada } 43:1:{ Nama:nbd1 Utama:43 Kecil:1 Ukuran:0 Penjadwal :none } 43:13:{ Name:nbd13 Major:43 Minor:13 Size:0 Scheduler:none } 43:8:{ Name:nbd8 Major:43 Minor:8 Size:0 Scheduler:none } 8: 16:{ Name:sdb Major:8 Minor:16 Size:536870912 Scheduler:cfq } 9:0:{ Name:md0 Major:9 Minor:0 Size:0 Scheduler:none } 43:3:{ Name:nbd3 Major: 43 Kecil:3 Ukuran:0 Penjadwal: tidak ada } 43:9:{ Nama:nbd9 Utama:43 Kecil:9 Ukuran:0 Penjadwal: tidak ada } 43:10:{ Nama:nbd10 Utama:43 Kecil:10 Ukuran:0 Penjadwal :none } 43:14:{ Name:nbd14 Major:43 Minor:14 Size:0 Scheduler:none } 43:2:{ Name:nbd2 Major:43 Minor:2 Size:0 Scheduler:none } 43:4:{ Nama:nbd4 Major:43 Minor:4 Ukuran:0 Scheduler:none } 43:5:{ Name:nbd5 Major:43 Minor:5 Ukuran:0 Scheduler:none } 43:6:{ Name:nbd6 Major:43 Minor: 6 Ukuran:0 Penjadwal: tidak ada }] Perangkat Jaringan:[{ Nama:dummy0 M acAddress:5a :34:bf:e4:23:cc Kecepatan:0 Mtu:1500 } { Name:eth0 M acAddress:f2 :3c:91: 1f:cd:c3 Kecepatan:-1 Mtu:1500 } { Nama:gre0 M acAddress:00 :00:00:00 Kecepatan:0 Mtu:1476 } { Name:gretap0 M acAddress:00 :00:00:00:00 :00 Kecepatan:0 Mtu:1462 } { Nama:ip6_vti0 M acAddress:00 :00:00:00:00:00:00:00:00:00:00:00:00:00:00:00 Kecepatan:0 Mtu:1500 } { Nama:ip6gre0 M acAddress:00 :00:00:00:00:00:00:00: 00:00:00:00:00:00:00:00 Kecepatan:0 Mtu:1448 } { Nama:ip6tnl0 M acAddress:00 :00:00:00:00:00:00:00:00:00:00 :00:00:00:00:00 Kecepatan:0 Mtu:1452 } { Nama:ip_vti0 Ma
Apr 12 02:10:01 localhost kubelet: cAddress:00 :00:00:00 Kecepatan:0 Mtu:1428 } { Nama:sit0 M acAddress:00 :00:00:00 Kecepatan:0 Mtu:1480 } { Nama: teql0 MacAddress: Speed:0 Mtu:1500 } { Name:tunl0 M acAddress:00 :00:00:00 Kecepatan:0 Mtu:1480 }] Topologi:[{Id:0 Memory:1037021184 Cores:[{Id:0 Threads :[0] Tembolok:[{ Ukuran:32768 Jenis: Tingkat Data :1 } { Ukuran:32768 Jenis: Tingkat Instruksi :1 } { Ukuran:4194304 Jenis: Tingkat Terpadu:2 }]}] Tembolok:[]}] Clou dProvider:Instance Tidak Diketahui tanceType:Unknown I nstanceID:None }
Apr 12 02:10:01 localhost kubelet: I0412 02:10:01.013353 3445 manager.go:204] Versi: {Kern elVersion:4.9.15-x86_64-linode81 Container OsVersion:Fedora 25 (Edisi Server) Dock erVersion:1.12. 6 CadvisorVersion: CadvisorRevision:}
12 Apr 02:10:01 localhost kubelet: I0412 02:10:01.014086 3445 server.go:509] --cgroups-per-qos diaktifkan, tetapi --cgroup-root tidak ditentukan. default ke /
12 Apr 02:10:01 localhost kubelet: W0412 02:10:01.016562 3445 container_manager_linux.go:218] Menjalankan dengan swap aktif tidak didukung, harap nonaktifkan swap! Ini akan menjadi kesalahan fatal secara default dimulai pada K8s v1.6! Sementara itu, Anda dapat memilih untuk menjadikan ini kesalahan fatal dengan mengaktifkan --experimental-fail-swap-on.
12 Apr 02:10:01 localhost kubelet: I0412 02:10:01.016688 3445 container_manager_linux.go:245] container manager terverifikasi pengguna yang ditentukan cgroup-root ada: /
12 Apr 02:10:01 localhost kubelet: I0412 02:10:01.016717 3445 container_manager_linux.go:250] Membuat objek Container Manager berdasarkan Node Config: {RuntimeCgroupsName: SystemCgroupsName: KubeletCgroupsName: Berisi erRuntime:docker Cgro upsPerQOS:true CgroupRoot:/ Cgr oupDriver:cgroupfs ProtectKerne lDefaults:false EnableCRI:true NodeAllocatableConfig:{KubeReservedCgroupName: SystemReservedCgroupName: EnforceNodeAl locatable :map [pods:{}] Kub eReserved:map [] Syste mReserved:map Sinyal [] HardEviction Operator . Kuantitas:100Mi Persentase:0 } Masa Percepatan:0s MinReclaim:}]} EksperimentalQO SReserved:peta []}
12 Apr 02:10:01 localhost kubelet: I0412 02:10:01.016943 3445 kubelet.go:255] Menambahkan file manifes: /etc/kubernetes/manifests
12 Apr 02:10:01 localhost kubelet: I0412 02:10:01.016966 3445 kubelet.go:265] Menonton apiserver
12 Apr 02:10:01 localhost kubelet: E0412 02:10:01.025058 3445 reflector.go:190] k8s.io/kubernetes/pkg/kubelet/kubelet.go:390: Gagal mendaftar *v1.Node: Dapatkan https: //50.116.13.214 :6443/api/v1/nodes?fieldSelector=metadata.name%3Dli471-214.members.linode.com&resourceVersion=0: panggil tcp 50.116.13.214:6443: getockopt: koneksi ditolak
12 Apr 02:10:01 localhost kubelet: E0412 02:10:01.025342 3445 reflector.go:190] k8s.io/kubernetes/pkg/kubelet/kubelet.go:382: Gagal mendaftar *v1.Layanan: Dapatkan https: //50.116.13.214 :6443/api/v1/services?resourceVersion=0: tekan tcp 50.116.13.214:6443: getockopt: koneksi ditolak
12 Apr 02:10:01 localhost kubelet: E0412 02:10:01.025397 3445 reflector.go:190] k8s.io/kubernetes/pkg/kubelet/config/apiserver.go:46: Gagal mendaftar *v1.Pod: Get https://50.116.13.214 :6443/api/v1/pods?fieldSelector=spec.nodeName%3Dli471-214.members.linode.com&resourceVersion=0: tekan tcp 50.116.13.214:6443: getockopt: koneksi ditolak
12 Apr 02:10:01 localhost kubelet: W0412 02:10:01.026574 3445 kubelet_network.go:70] Mode jepit rambut disetel ke "jembatan promiscuous" tetapi kubenet tidak diaktifkan, kembali ke "hairpin-veth"
12 Apr 02:10:01 localhost kubelet: I0412 02:10:01.026599 3445 kubelet.go:494] Mode jepit rambut disetel ke "hairpin-veth"
12 Apr 02:10:01 localhost kubelet: W0412 02:10:01.026661 3445 cni.go:157] Tidak dapat memperbarui konfigurasi cni: Tidak ada jaringan yang ditemukan di /etc/cni/net.d
12 Apr 02:10:01 localhost kubelet: W0412 02:10:01.034194 3445 cni.go:157] Tidak dapat memperbarui konfigurasi cni: Tidak ada jaringan yang ditemukan di /etc/cni/net.d
12 Apr 02:10:01 localhost kubelet: W0412 02:10:01.043157 3445 cni.go:157] Tidak dapat memperbarui konfigurasi cni: Tidak ada jaringan yang ditemukan di /etc/cni/net.d
12 Apr 02:10:01 localhost kubelet: I0412 02:10:01.043183 3445 docker_service.go:187] Jaringan cri Docker dikelola oleh cni
12 Apr 02:10:01 localhost kubelet: error: failed to run Kubelet: failed to create kubelet: misconfiguration: kubelet cgroup driver: "cgroupfs" berbeda dengan docker cgroup driver: "systemd"
12 April 02:10:01 audit localhost: SERVICE_STOP pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=kubelet comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=gagal'
12 Apr 02:10:01 localhost systemd: kubelet.service: Proses utama keluar, kode=keluar, status=1/FAILURE
12 Apr 02:10:01 localhost systemd: kubelet.service: Unit memasuki status gagal.
12 Apr 02:10:01 localhost systemd: kubelet.service: Gagal dengan hasil 'exit-code'.

@acloudiator Saya pikir Anda perlu mengatur cgroup-driver di konfigurasi kubeadm.

vi /etc/systemd/system/kubelet.service.d/10-kubeadm.conf
Environment="KUBELET_EXTRA_ARGS=--cgroup-driver=systemd"

Dan kemudian restart layanan kubelet

Akan sangat bagus jika kubeadm dalam beberapa hal dapat menangani masalah konfigurasi cgroup.
Ide ide:

  • Membatalkan inisialisasi jika terjadi kesalahan konfigurasi
  • Periksa pengaturan Docker sebelumnya dan gunakan apa yang digunakan Docker (tidak yakin tentang implikasi apa pun di sini)

Hanya pembaruan, solusi apa pun yang saya coba tidak berhasil. Jadi saya pindah ke CentOS 7.3 untuk master dan berfungsi seperti pesona! Saya menyimpan minion di CentOS 7.2.

@rushabh268 hai, saya memiliki masalah yang sama di Redhat Linux 7.2. Setelah memperbarui systemd, masalah ini terpecahkan. Anda dapat mencoba memperbarui systemd sebelum instalasi.
yum update -y systemd
dan log kesalahan dari kubelet:
kubelet.go:1752] skipping pod synchronization - [Failed to start ContainerManager systemd version does not support ability to start a slice as transient unit]

Saya mengalami masalah ini pada CentOS 7.3. Masalahnya hilang setelah saya menghapus docker-ce dan kemudian menginstal docker-io.
Saya tidak yakin apakah itu akar masalahnya. Bagaimanapun, Anda dapat mencoba jika metode di atas tidak berhasil.

@ZongqiangZhang Saya telah menginstal buruh pelabuhan 1.12.6 di node saya. @juntaoXie Saya mencoba memperbarui systemd juga dan masih macet

Jadi saya telah menjalankan Centos 7.3 w/1.6.4 tanpa masalah pada sejumlah mesin.

Apakah Anda memastikan Anda menonaktifkan selinux?

@timothysc Saya memiliki CentOS 7.2 dan bukan CentOS 7.3 dan selinux dinonaktifkan

Saya memiliki rilis CentOS Linux 7.3.1611 (Core) dan KubeAdm 1.6.4 tidak berfungsi.

cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=http://yum.kubernetes.io/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
EOF

setenforce 0
# edit /etc/selinux/config and set SELINUX=disabled
yum install docker kubelet kubeadm kubectl kubernetes-cni
systemctl enable docker
systemctl start docker
systemctl enable kubelet
systemctl start kubelet
reboot
kubeadm init

Keluaran:

kubeadm init
[kubeadm] WARNING: kubeadm is in beta, please do not use it for production clusters.
[init] Using Kubernetes version: v1.6.4
[init] Using Authorization mode: RBAC
[preflight] Running pre-flight checks
[preflight] WARNING: hostname "kubernet01.localdomain" could not be reached
[preflight] WARNING: hostname "kubernet01.localdomain" lookup kubernet01.localdomain on XXXXXXX:53: read udp XXXXXXX:56624->XXXXXXX:53: i/o timeout
[preflight] Starting the kubelet service
[certificates] Generated CA certificate and key.
[certificates] Generated API server certificate and key.
[certificates] API Server serving cert is signed for DNS names [kubernet01.localdomain kubernetes kubernetes.default kubernetes.default.svc kubernetes.default.svc.cluster.local] and IPs [10.96.0.1 10.11.112.51]
[certificates] Generated API server kubelet client certificate and key.
[certificates] Generated service account token signing key and public key.
[certificates] Generated front-proxy CA certificate and key.
[certificates] Generated front-proxy client certificate and key.
[certificates] Valid certificates and keys now exist in "/etc/kubernetes/pki"
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/kubelet.conf"
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/controller-manager.conf"
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/scheduler.conf"
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/admin.conf"
[apiclient] Created API client, waiting for the control plane to become ready
Jun 06 17:13:12 kubernet01.localdomain kubelet[11429]: W0606 17:13:12.881451   11429 cni.go:157] Unable to update cni config: No networks found in /etc/cni/net.d
Jun 06 17:13:12 kubernet01.localdomain kubelet[11429]: E0606 17:13:12.882145   11429 kubelet.go:2067] Container runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized
Jun 06 17:13:13 kubernet01.localdomain kubelet[11429]: E0606 17:13:13.519992   11429 reflector.go:190] k8s.io/kubernetes/pkg/kubelet/config/apiserver.go:46: Failed to list *v1.Pod: Get https://10.11.112.51:6443/api/v1/pods?fieldSelector=spec.nodeName%3Dkubernet01.localdomain&resourceVersion=0: dial tcp 10.11.112.51:6443: getsockopt: connection refused
Jun 06 17:13:13 kubernet01.localdomain kubelet[11429]: E0606 17:13:13.520798   11429 reflector.go:190] k8s.io/kubernetes/pkg/kubelet/kubelet.go:382: Failed to list *v1.Service: Get https://10.11.112.51:6443/api/v1/services?resourceVersion=0: dial tcp 10.11.112.51:6443: getsockopt: connection refused
Jun 06 17:13:13 kubernet01.localdomain kubelet[11429]: E0606 17:13:13.521493   11429 reflector.go:190] k8s.io/kubernetes/pkg/kubelet/kubelet.go:390: Failed to list *v1.Node: Get https://10.11.112.51:6443/api/v1/nodes?fieldSelector=metadata.name%3Dkubernet01.localdomain&resourceVersion=0: dial tcp 10.11.112.51:6443: getsockopt: connection refused
Jun 06 17:13:14 kubernet01.localdomain kubelet[11429]: E0606 17:13:14.337588   11429 event.go:208] Unable to write event: 'dial tcp 10.11.112.51:6443: getsockopt: connection refused' (may retry after sleeping)

@paulobezerr dapatkah Anda membagikan lebih banyak log kube-apiserver ? (yang ada di akhir komentar Anda)

Apakah baris di atas yang sudah Anda sertakan menyebutkan alamat ip yang sama? Saya mencoba menjalankan k8 pada dua KVM baru baru-baru ini, satu dengan Ubuntu 16.04 dan satu dengan CentOS 7.3. Keduanya memberikan ini:

​[restful] 2017/05/30 19:31:38 log.go:30: [restful/swagger] listing is available at https://x.x.x.x:6443/swaggerapi/
[restful] 2017/05/30 19:31:38 log.go:30: [restful/swagger] https://x.x.x.x:6443/swaggerui/ is mapped to folder /swagger-ui/
​E0530 19:31:38.313090 1 reflector.go:201] k8s.io/kubernetes/pkg/client/informers/informers_generated/internalversion/factory.go:70: Failed to list *rbac.RoleBinding: Get https://localhost:6443/apis/rbac.authorization.k8s.io/v1beta1/rolebindings?resourceVersion=0: dial tcp y.y.y.y:6443: getsockopt: connection refused

Perhatikan bahwa pertama-tama alamat ip yang disebutkan adalah x.x.x.x , tetapi kemudian localhost diselesaikan menjadi y.y.y.y (yang dalam kasus saya adalah ip publik dari KVM lain yang duduk di server fisik yang sama). Saya dapat memulai kubeadm di Ubuntu pada akhirnya, tetapi hanya setelah menginstal dnsmasq dengan cara yang mirip dengan ​https://github.com/kubernetes/kubeadm/issues/113#issuecomment -273115861. Solusi yang sama pada CentOS tidak membantu.

Bisakah ini bug di kubedns atau apa? Menariknya, langkah yang sama pada VM AWS memang memunculkan kubeadm. Tetapi instans EC2 terlalu mahal untuk proyek pribadi saya.

Saya memiliki masalah yang sama dengan @paulobezerr.

## Versi :
kubelet-1.6.4-0.x86_64
kubernetes-cni-0.5.1-0.x86_64
kubectl-1.6.4-0.x86_64
kubeadm-1.6.4-0.x86_64
docker-client-1.12.6-28.git1398f24.el7.centos.x86_64
docker-common-1.12.6-28.git1398f24.el7.centos.x86_64
docker-1.12.6-28.git1398f24.el7.centos.x86_64

JADI
uname -r > 3.10.0-229.1.2.el7.x86_64
cat /etc/redhat-release > CentOS Linux rilis 7.3.1611 (Inti)

## Langkah-langkah yang diikuti:

    1. sudo yum install -y docker
2. sudo groupadd docker
3. sudo usermod -aG docker $(whoami)
4. curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl
5. chmod +x ./kubectl
6. sudo mv ./kubectl /usr/local/bin/kubectl
7. echo "source <(kubectl completion bash)" >> ~/.bashrc
8. sudo -i
9. cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
EOF
10. setenforce 0
11. yum install -y docker kubelet kubeadm kubectl kubernetes-cni
12. systemctl enable docker && systemctl start docker
13. systemctl enable kubelet && systemctl start kubelet
    14. echo -e "net.bridge.bridge-nf-call-ip6tables = 1\nnet.bridge.bridge-nf-call-iptables = 1" >> /etc/sysctl.d/99-sysctl.conf && sudo service network restart
    15. firewall-cmd --zone=public --add-port=6443/tcp --permanent && sudo firewall-cmd --zone=public --add-port=10250/tcp --permanent  && sudo systemctl restart firewalld
    16. firewall-cmd --permanent --zone=trusted --change-interface=docker0

## log server api:
--> 37.247.XX.XXX adalah IP publik

[restful] 2017/06/08 10:45:19 log.go:30: daftar [restful/swagger] tersedia di https://37.247.XX.XXX :6443/swaggerapi/
[restful] 2017/06/08 10:45:19 log.go:30: [restful/swagger] https://37.247.XX.XXX :6443/swaggerui/ dipetakan ke folder /swagger-ui/
E0608 10:45:19.429839 1 reflector.go:201] k8s.io/kubernetes/pkg/client/informers/informers_generated/internalversion/factory.go:70: Gagal membuat daftar *api.Secret: Dapatkan https://localhost : 6443/api/v1/secrets?resourceVersion=0: tekan tcp 108.59.253.109:6443: getockopt: koneksi ditolak
E0608 10:45:19.430419 1 reflector.go:201] k8s.io/kubernetes/pkg/client/informers/informers_generated/internalversion/factory.go:70: Gagal membuat daftar *api.ResourceQuota: Dapatkan https://localhost : 6443/api/v1/resourcequotas?resourceVersion=0: tekan tcp 108.59.253.109:6443: getockopt: koneksi ditolak
E0608 10:45:19.430743 1 reflector.go:201] k8s.io/kubernetes/pkg/client/informers/informers_generated/internalversion/factory.go:70: Gagal membuat daftar *api.ServiceAccount: Dapatkan https://localhost : 6443/api/v1/serviceaccounts?resourceVersion=0: tekan tcp 108.59.253.109:6443: getockopt: koneksi ditolak
E0608 10:45:19.431076 1 reflector.go:201] k8s.io/kubernetes/pkg/client/informers/informers_generated/internalversion/factory.go:70: Gagal membuat daftar *storage.StorageClass: Dapatkan https://localhost : 6443/apis/storage.k8s.io/v1beta1/storageclasses?resourceVersion=0: tekan tcp 108.59.253.109:6443: getockopt: koneksi ditolak
E0608 10:45:19.431377 1 reflector.go:201] k8s.io/kubernetes/pkg/client/informers/informers_generated/internalversion/factory.go:70: Gagal membuat daftar *api.LimitRange: Dapatkan https://localhost : 6443/api/v1/limitranges?resourceVersion=0: tekan tcp 108.59.253.109:6443: getockopt: koneksi ditolak
E0608 10:45:19.431678 1 reflector.go:201] k8s.io/kubernetes/pkg/client/informers/informers_generated/internalversion/factory.go:70: Gagal membuat daftar *rbac.RoleBinding: Dapatkan https://localhost : 6443/apis/rbac.authorization.k8s.io/v1beta1/rolebindings?resourceVersion=0: tekan tcp 108.59.253.109:6443: getockopt: koneksi ditolak
E0608 10:45:19.431967 1 reflector.go:201] k8s.io/kubernetes/pkg/client/informers/informers_generated/internalversion/factory.go:70: Gagal membuat daftar *rbac.ClusterRoleBinding: Dapatkan https://localhost : 6443/apis/rbac.authorization.k8s.io/v1beta1/clusterrolebindings?resourceVersion=0: tekan tcp 108.59.253.109:6443: getockopt: koneksi ditolak
E0608 10:45:19.432165 1 reflector.go:201] k8s.io/kubernetes/pkg/client/informers/informers_generated/internalversion/factory.go:70: Gagal membuat daftar *api.Namespace: Dapatkan https://localhost : 6443/api/v1/namespaces?resourceVersion=0: panggil tcp 108.59.253.109:6443: getockopt: koneksi ditolak
E0608 10:45:19.432386 1 reflector.go:201] k8s.io/kubernetes/pkg/client/informers/informers_generated/internalversion/factory.go:70: Gagal membuat daftar *rbac.ClusterRole: Dapatkan https://localhost : 6443/apis/rbac.authorization.k8s.io/v1beta1/clusterroles?resourceVersion=0: tekan tcp 108.59.253.109:6443: getockopt: koneksi ditolak
E0608 10:45:19.432619 1 reflector.go:201] k8s.io/kubernetes/pkg/client/informers/informers_generated/internalversion/factory.go:70: Gagal membuat daftar *rbac.Peran: Dapatkan https://localhost : 6443/apis/rbac.authorization.k8s.io/v1beta1/roles?resourceVersion=0: tekan tcp 108.59.253.109:6443: getockopt: koneksi ditolak
I0608 10:45:19.481612 1 serve.go:79] Melayani dengan aman pada 0.0.0.0:6443
W0608 10:45:19.596770 1 storage_extensions.go:127] sinkronisasi sumber daya pihak ketiga gagal: Dapatkan https://localhost :6443/apis/extensions/v1beta1/thirdpartyresources: dial tcp 108.59.253.109:6443: getockopt: koneksi ditolak
E0608 10:45:19.596945 1 client_ca_hook.go:58] Posting https://localhost :6443/api/v1/namespaces: tekan tcp 108.59.253.109:6443: getockopt: koneksi ditolak
F0608 10:45:19.597174 1 controller.go:128] Tidak dapat melakukan pemeriksaan alokasi IP awal: tidak dapat menyegarkan blok IP layanan: Dapatkan https://localhost :6443/api/v1/services: dial tcp 108.59.253.109: 6443: getockopt: koneksi ditolak

@albpal Saya memiliki masalah yang sama persis seminggu yang lalu: dial tcp X.X.X.X menunjukkan alamat IP yang aneh dan saya tidak dapat menyelesaikan ini di CentOS bahkan setelah menginstal dnsmasq dan beralih ke server DNS google alih-alih DNS dari penyedia hosting saya. Hanya untuk rasa ingin tahu: dapatkah Anda memeriksa apakah alamat IP yang salah yang Anda lihat berada di pusat data yang sama dengan VM Anda? Anda dapat menggunakan http://ipinfo.io untuk memperkirakannya dengan tingkat kepastian tertentu atau hanya traceroute.

Dalam kasus saya, alamat IP yang salah merujuk ke KVM lain di server fisik yang sama. Bisa jadi ada hubungannya dengan DNS pada mesin fisik, yang mungkin memerlukan solusi di dalam kube api atau kube dns, jika tidak, memulai sebuah cluster menjadi kesulitan besar bagi banyak pendatang baru! Saya telah menyia-nyiakan beberapa malam sebelum memperhatikan dial tcp dengan IP yang salah di log, yang merupakan pengalaman k8 pertama yang cukup menyedihkan. Masih belum memiliki solusi out-of-box yang bagus untuk CentOS KVM di penyedia hosting saya ( firstvds.ru ).

Apa yang dapat menyebabkan ketidakcocokan yang sangat aneh ini dalam alamat IP?

@albpal Silakan buka masalah baru, apa yang Anda jelaskan dan tentang masalah ini adalah masalah yang terpisah (saya pikir, berdasarkan info itu)

@kachkaev Saya baru saja memeriksa apa yang Anda sarankan.

Saya menemukan bahwa IP yang salah berakhir di CPANEL: vps-1054290-4055.manage.myhosting.com.

Di sisi lain, IP publik VPS saya berasal dari Italia dan IP yang salah ini berasal dari AS ... jadi terlepas dari kenyataan bahwa IP yang salah memiliki sesuatu yang terkait dengan hosting (CPANEL) Tampaknya tidak merujuk ke KVM lain di server fisik yang sama.

Apakah Anda dapat menginstal k8s?

@luxas Saya memiliki perilaku yang sama tetapi saya menyalin log buruh pelabuhankeluaran juga.

Output /var/log/messages dan kubeadm init keduanya sama dengan masalah aslinya.

@albpal jadi VM Anda dan mesin kedua itu ada di CPANEL? Pertanda baik, karena kasus saya sama! Fakta bahwa itu adalah mesin fisik yang sama bisa jadi hanya kebetulan.

Saya menggunakan dua KVM dalam eksperimen saya, satu dengan Ubuntu 16.04 dan lainnya dengan CentOS 7.3 Keduanya memiliki masalah alamat IP dial tcp yang sama. Saya dapat memulai kubeadm di Ubuntu pada akhirnya dengan menyingkirkan server DNS penyedia saya. Solusinya didasarkan pada saran crilozs :

​apt-get install dnsmasq

rm -rf /etc/resolv.conf
echo "nameserver 127.0.0.1" > /etc/resolv.conf
chmod 444 /etc/resolv.conf
chattr +i /etc/resolv.conf

echo "server=8.8.8.8
server=8.8.4.4" > /etc/dnsmasq.conf

service dnsmasq restart
​# reboot just in case

Ini membawa alamat ip yang tepat setelah dial tcp di log di Ubuntu dan kubeadm diinisialisasi setelah beberapa menit! Saya mencoba mengatur dnsmasq di CentOS dengan cara yang sama, tetapi ini tidak menyelesaikan masalah. Tapi saya seorang pemula total di OS ini, jadi bisa jadi saya hanya lupa me-restart beberapa layanan atau membersihkan beberapa cache. Cobalah ide ini!

Bagaimanapun, rasanya salah untuk melakukan langkah ekstra untuk mengkonfigurasi ulang DNS karena sangat membingungkan (saya bukan orang server/devops dan seluruh penyelidikan yang saya lalui hampir membuat saya menangis :takut :). Saya berharap kubeadm akan dapat mendeteksi jika server DNS penyedia bekerja dengan cara yang aneh dan secara otomatis memperbaiki apa pun yang diperlukan di cluster.

Jika ada orang dari tim k8s yang ingin melihat apa yang terjadi, saya akan dengan senang hati membagikan akses root pada beberapa KVM FirstVDS baru. Cukup email saya atau DM di twitter!

Terima kasih @kachkaev ! Saya akan mencobanya besok

cc @kubernetes/sig-network-bugs Apakah Anda tahu mengapa resolusi DNS gagal di atas?

Terima kasih @kachkaev, kami akan mencoba memeriksanya. Saya tidak berpikir itu benar-benar kesalahan kubeadm, tetapi jika banyak pengguna terjebak pada kesalahan konfigurasi yang sama, kami mungkin menambahkannya ke dokumen pemecahan masalah atau lebih...

Log saya sangat mungkin untuk @albpal log.
Tapi saya akan mencoba dnsmasq. Terima kasih semua!

@kachkaev , itu tidak berhasil. Masalah yang sama
Log lengkap terlampir.

log.txt

Saya sudah bisa memperbaikinya!! Terima kasih banyak @kachkaev atas petunjuk Anda!

Saya pikir masalahnya adalah:

### Skenario:
VPS dengan skema konfigurasi berikut:

resolv.conf
[ root@apalau ~]# cat resolv.conf
server nama 8.8.8.8
server nama 8.8.4.4
server nama 2001:4860:4860::8888
server nama 2001:4860:4860::8844

Tidak ada domain pencarian!

tuan rumah
[ root@apalau ~]# cat /etc/hosts
127.0.0.1 localhost.localdomain localhost
37.XXX.XX.XXX nama.vpshosting.com

Sesuai log, wadah kubernetes mencoba terhubung ke:

Dapatkan https://localhost :6443/api/v1/secrets?resourceVersion=0

Dan ketika saya meminta:
$nslookup "localhost.$(hostname -d)"
IP yang saya dapatkan salah yaitu 108.59.253.109.

Jadi saya pikir wadah ini mencoba menyelesaikan localhost (tanpa domain) dan mereka mendapatkan IP yang salah. Mungkin karena "localhost.$(hostname -d)" sedang menyelesaikan ke IP yang menurut saya itu akan terjadi di hampir semua layanan VPS.

## Apa yang saya lakukan untuk memperbaiki masalah pada VPS CentOS 7.3 (terlepas dari langkah-langkah yang ditunjukkan di https://kubernetes.io/docs/setup/independent/install-kubeadm/#installing-kubelet-and-kubeadm):

Sebagai akar:

  1. reset kubeadm
  2. yum instal dnsmasq
  3. cp /etc/resolv.conf ~/resolv.conf_bck
  4. rm -rf /etc/resolv.conf
  5. echo -e "nameserver 127.0.0.1\nnameserver $(hostname -i)" >> /etc/resolv.conf
  6. chmod 444 /etc/resolv.conf
  7. chattr +i /etc/resolv.conf
  8. echo -e "server=8.8.8.8\nserver=8.8.4.4" > /etc/dnsmasq.conf
  9. echo -e "$(hostname -i)\tlocalhost.$(hostname -d)" >> /etc/hosts
  10. layanan dnsmasq restart
  11. firewall-cmd --zone=public --add-port=6443/tcp --permanent && sudo firewall-cmd --zone=public --add-port=10250/tcp --permanent && sudo systemctl restart firewalld
  12. kubeadm init

Saya menambahkan nama host -i pada langkah 5 karena jika tidak, buruh pelabuhan akan menambahkan 8.8.8.8 ke resolv.conf pada wadah.

Saya harap ini membantu orang lain juga.

Terima kasih!!

Senang mendengarnya @albpal! Saya telah melalui langkah-langkah Anda sebelum kubeadm init dan cluster akhirnya diinisialisasi di dalam pengujian FirstVDS KVM saya dengan CentOS 7.3! Satu-satunya hal tambahan yang harus saya lakukan adalah menghentikan dan menonaktifkan firewalld karena memblokir koneksi eksternal ke port 6443:

systemctl disable firewalld
systemctl stop firewalld

_Saya tidak menyarankan melakukan ini karena saya tidak mengetahui konsekuensinya - ini hanya membantu saya menyelesaikan tes pada OS yang biasanya tidak saya gunakan._

Sekarang saya bertanya-tanya apa yang bisa dilakukan untuk memudahkan proses instalasi untuk pemula seperti saya. Jalan antara terjebak di Created API client, waiting for the control plane to become ready dan menyelesaikan masalah masih besar, terutama jika kita memperhitungkan waktu yang dibutuhkan untuk menggali masalah ini dan membaca semua komentar. __Apa yang bisa kalian sarankan?__

@paulobezerr dari apa yang saya lihat di lampiran Anda, saya yakin masalah Anda sedikit berbeda. Log apiserver saya berisi sesuatu seperti:

reflector.go:190] k8s.io/kubernetes/pkg/kubelet/config/apiserver.go:46: Failed to list *v1.Pod:
Get https://localhost:6443/api/v1/pods?fieldSelector=spec.nodeName%3Dhostname&resourceVersion=0:
dial tcp RANDOM_IP:6443: getsockopt: connection refused

sementara milikmu berkata:

reflector.go:190] k8s.io/kubernetes/pkg/kubelet/config/apiserver.go:46: Failed to list *v1.Pod:
Get https://10.X.X.X:6443/api/v1/pods?fieldSelector=spec.nodeName%3Dhostname&resourceVersion=0:
dial tcp 10.X.X.X:6443: getsockopt: connection refused

(dalam kasus pertama localhost / RANDOM_IP , sedangkan dalam kasus kedua selalu 10.X.X.X )

Sayangnya, saya tidak tahu apa yang harus saya sarankan kecuali mencoba berbagai --apiserver-advertise-address=??? ketika Anda kubeadm init (lihat docs ). Pengalaman k8s langsung saya baru saja mencapai 10 hari, yang sebagian besar merupakan upaya sia-sia untuk memulai cluster node tunggal di FirstVDS :-)

Semoga Anda mendapatkan ini diurutkan dan berbagi solusi dengan orang lain!

@kachkaev Saya lupa menyebutkan bahwa saya telah menerapkan aturan firewall berikut:

$ firewall-cmd --zone=public --add-port=6443/tcp --permanent && sudo firewall-cmd --zone=public --add-port=10250/tcp --permanent && sudo systemctl restart firewalld

Ini berfungsi dengan baik di lingkungan saya ketika menerapkan aturan ini tanpa menonaktifkan firewall. Saya akan menambahkannya ke komentar saya sebelumnya untuk mengumpulkan semua langkah yang diperlukan.

@juntaoXie Terima kasih. Memperbarui versi systemd per komentar Anda berhasil untuk saya.

Masih mendapatkan masalah ini selama dua hari sekarang, saya menjalankan semua ini di belakang proxy dan sepertinya tidak ada masalah.
kubeadm init menunggu sampai pesawat kontrol siap. Ketika saya melakukan docker ps, wadah ditarik dan dijalankan tetapi tidak ada port yang dialokasikan di belakang (saya tidak tahu apakah itu seharusnya tetapi ok). etcd juga berjalan dengan baik. Namun ketika saya melihat layanan kubelet saya, dikatakan Tidak dapat memperbarui konfigurasi cni: Tidak ada jaringan yang ditemukan di /etc/cni/net.d yang https://github.com/kubernetes/kubernetes/issues/43815 mengatakan tidak apa-apa, Anda perlu menerapkan jaringan cni.
Yang saya lakukan sesuai https://www.weave.works/docs/net/latest/kubernetes/kube-addon/ . Sekarang, kubectl mengatakan 8080 ditolak - apakah Anda menentukan host atau port yang benar? Sepertinya masalah ayam dan telur, bagaimana cara menerapkan jaringan cni ketika kubeadm init saya hang??? Ini sangat membingungkan

Ini juga bukan masalah cgroup, baik buruh pelabuhan dan layanan kubelet saya menggunakan systemd.

FWIW, saya memiliki masalah yang sama di GCP saya mencoba menggunakan Ubuntu 16.04 dan CentOS menggunakan perintah berikut dalam proyek bersih:

$ gcloud compute instance create test-api-01 --zone us-west1-a --image-family ubuntu-1604-lts --image-project ubuntu-os-cloud --machine-type f1-micro --description ' simpul 1 untuk pengujian api'

$ gcloud compute instance create test-api-02 --zone us-west1-b --image-family ubuntu-1604-lts --image-project ubuntu-os-cloud --machine-type f1-micro --description ' simpul 2 untuk pengujian api'

$ gcloud compute instance create test-api-03 --zone us-west1-c --image-family ubuntu-1604-lts --image-project ubuntu-os-cloud --machine-type f1-micro --description ' simpul 3 untuk pengujian api'

$ pembaruan apt-get

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key tambahkan -

$ apt-get update && apt-get install -qy docker.io && apt-get install -y apt-transport-https

$ echo "deb http://apt.kubernetes.io/ kubernetes-xenial main" > /etc/apt/sources.list.d/kubernetes.list

$ apt-get update && apt-get install -y kubelet kubeadm kubernetes-cni

$ systemctl restart kubelet

$ kubeadm init

Jadi setelah membenturkan kepala saya selama beberapa jam saya akhirnya pergi dengan:

$ gcloud beta container --project "weather-177507" cluster membuat "weather-api-cluster-1" --zone "us-west1-a" --username="admin" --cluster-version "1.6.7" --machine-type "f1-micro" --image-type "COS" --disk-size "100" --scopes " https://www.googleapis.com/auth/compute "," https:// www.googleapis.com/auth/devstorage.read_only "," https://www.googleapis.com/auth/logging.write "," https://www.googleapis.com/auth/monitoring.write "," https://www.googleapis.com/auth/servicecontrol "," https://www.googleapis.com/auth/service.management.readonly "," https://www.googleapis.com/auth/trace. tambahkan " --num-nodes "3" --network "default" --enable-cloud-logging --no-enable-cloud-monitoring --enable-legacy-authorization

Saya bisa mendapatkan cluster dan menjalankan di mana saya tidak bisa dari gambar kosong.

Bahkan saya menghadapi masalah yang sama dengan versi Kubeadm :
image
itu terjebak dalam
[apiclient] Created API client, waiting for the control plane to become ready
image

Masalah yang sama seperti @paulobezerr - env ​​saya: CentOS 7.4.1708 versi kubeadm: &version.Info{Mayor:"1", Minor:"8", GitVersion:"v1.8.0", GitCommit:"6e937839ac04a38cac63e6a7a306c5d035fe7b0State", GitTreeState ", BuildDate:"28-09-2017T22:46:41Z", GoVersion:"go1.8.3", Kompilator:"gc", Platform:"linux/amd64"}

Bagi saya masalah ini tidak berjalan dengan SELinux dinonaktifkan. Petunjuknya adalah langkahnya, komentarnya:

edit /etc/selinux/config dan atur SELINUX=disabled

Langkah-langkah instal di sini ( https://kubernetes.io/docs/setup/independent/install-kubeadm/ ) untuk CentOS katakan:
"Menonaktifkan SELinux dengan menjalankan setenforce 0 diperlukan untuk memungkinkan wadah mengakses sistem file host"
tetapi tidak disebutkan (setidaknya pada tab CentOS/RHEL/Fedora) bahwa Anda harus mengedit /etc/selinux/config dan mengatur SELINUX=disabled

Bagi saya, meskipun saya telah menjalankan setenforce 0, saya masih mendapatkan kesalahan yang sama. Mengedit /etc/selinux/config dan mengatur SELINUX=disabled, lalu me-reboot memperbaikinya untuk saya.

Tampaknya ada banyak masalah (berpotensi ortogonal) yang berperan di sini, jadi saya ingin kita tidak membiarkan hal-hal menyimpang. Sejauh ini kami tampaknya telah menunjukkan 3 masalah:

  1. DNS gagal menyelesaikan localhost dengan benar di beberapa mesin. @kachkaev @paulobezerr Apakah Anda berhasil memperbaikinya? Saya bertanya-tanya bagaimana membuat ini lebih eksplisit dalam persyaratan kami, ada ide?

  2. Pencocokan cgroup-driver salah antara kubelet dan Docker. Kita harus menambahkan ini ke daftar persyaratan kita.

  3. SELinux tidak dinonaktifkan. Kita harus menambahkan ini ke daftar persyaratan kita.

Setelah ketiganya ditangani dengan PR, mungkin kita harus menutup ini dan membiarkan orang-orang yang mengalami masalah di masa depan membuat masalah mereka sendiri. Itu akan memungkinkan kami untuk menerima informasi yang lebih terstruktur dan memberikan dukungan yang lebih terperinci, dibandingkan dengan menyulap banyak hal dalam satu utas. Bagaimana menurutmu @luxas?

Bagi saya, saya menggunakan docker 17.06 (17.03 direkomendasikan, tetapi tidak tersedia di docker.io) dan menjalankan masalah yang sama. Memutakhirkan ke 17,09 secara ajaib memperbaiki masalah ini.

Karena utas ini sudah sangat panjang, dan mungkin ada banyak masalah yang sama sekali berbeda, hal paling produktif yang dapat saya tambahkan selain komentar luar biasa @jamiehannaford adalah tolong buka masalah baru yang ditargetkan dengan semua log / informasi yang relevan jika ada sesuatu gagal _dengan kubeadm v1.8_ terbaru, yang secara otomatis mendeteksi status yang salah jauh lebih baik daripada versi sebelumnya. Kami juga telah meningkatkan dokumentasi kami seputar persyaratan dan kasus tepi yang diharapkan akan menghemat waktu bagi orang-orang.

Terima kasih semuanya!

saya memiliki masalah yang sama dengan 1,8 di CENTOS 7 dengan 1,8? ada yang punya masalah yang sama atau tahu cara memperbaikinya.

@rushins Jika Anda ingin mendapatkan bantuan dengan kemungkinan masalah yang Anda lihat, buka masalah baru di sini dengan detail yang memadai.

Saya mendapat masalah yang sama dengan @rushabh268 yaitu connection refused dan bukan localhost:6443/api .
Akhirnya saya menyelesaikannya dengan berkomentar pencarian domain search xxx.xx.xxxx.org .

vi /etc/resolv.congf

------ resolv.congf -----
# Generated by NetworkManager
#search xxx.xx.xxxx.org
nameserver 10.x.xxx.xx
nameserver 10.x.xxx.xx
nameserver 10.x.xxx.xx
--------------------------

lingkungan:
-> CentOS-7-x86_64-Minimal-1708
-> K8s v1.9.2
-> Docker v17.12.0.ce
-> di bawah Jaringan pribadi xxx.xx.xxxx.org

Tolong untuk cinta tuhan tambahkan ini ke dokumen. Saya telah mencoba mengatur cluster saya selama beberapa malam setelah bekerja dengan kedok "bersenang-senang dan bermain dengan teknologi" Saya selesai dengan node master tidak mendapatkan IP yang benar saat menjalankan nslookup localhost.

Terima kasih kepada @kachkaev atas solusinya.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat