Tôi đã cài đặt kubernetes v1.23.0
với Arch Linux dưới dạng phân phối. Cụm bao gồm một chủ và một nút. Hệ thống gian hàng là máy ảo dựa trên KVM.
Khi một nhóm muốn thực hiện một truy vấn DNS, nó sẽ hết thời gian chờ khi dịch vụ chuyển tiếp các yêu cầu đến một phiên bản nhóm của coredns đang chạy trên một nút kubernetes khác.
Vì vậy, tôi nghi ngờ rằng nhà cung cấp mạng không hoạt động bình thường hoặc một số cài đặt (mô-đun kernel, sysctl, v.v.) không được đặt, bởi vì khi yêu cầu được chuyển tiếp đến phiên bản nhóm coredns đang chạy cục bộ, máy khách sẽ nhận được phản hồi. Đây là các bước gỡ lỗi của tôi:
- Trước khi tôi bắt đầu gỡ lỗi, tôi đã tăng loglevel của coredns bằng cách thêm
đăng nhập
vào sơ đồ cấu hình của coredns.
# kubectl get -n kube-system configmaps coredns -o yaml
phiên bản api: v1
dữ liệu:
Tập tin lõi: |
.:53 {
đăng nhập
lỗi
Sức khỏe {
lameduck 5s
}
Sẵn sàng
kubernetes cluster.local in-addr.arpa ip6.arpa {
nhóm không an toàn
dự phòng trong-addr.arpa ip6.arpa
ttl 30
}
prometheus :9153
phía trước . /etc/resolv.conf {
max_concurrent 1000
}
bộ đệm 30
vòng
tải lại
cân bằng tải
}
- Tôi đã triển khai làm môi trường gỡ lỗi bộ chứa mạng của mình bằng các công cụ mạng như
đào
, nslookup
v.v. để kiểm tra các phiên bản coredns khác nhau.
áp dụng kubectl -f https://raw.githubusercontent.com/volker-raschek/network-tools/master/network-tools.yml
- Các nhóm và dịch vụ coredns sau đây khả dụng:
kubectl get pod,service -n kube-system -l k8s-app=kube-dns -o wide
TÊN TRẠNG THÁI SẴN SÀNG KHỞI ĐỘNG LẠI TUỔI IP NÚT NÚT ĐƯỢC ĐỀ CỬ CỔNG SẴN SÀNG
pod/coredns-64897985d-cgxmv 1/1 Chạy 0 24h 10.85.0.4 archlinux-x86-64-000 <none> <none>
pod/coredns-64897985d-l9ftl 1/1 Chạy 0 24h 10.85.0.3 archlinux-x86-64-001 <none> <none>
TÊN LOẠI CLUSTER-IP (CỔNG IP NGOẠI THẤT) BỘ CHỌN TUỔI
dịch vụ/kube-dns ClusterIP 10.96.0.10 <none> 53/UDP,53/TCP,9153/TCP 24h k8s-app=kube-dns
- Thực thi shell trong nhóm mạng của tôi và cố gắng truy vấn địa chỉ IP của
google.com
thông qua lõi
dịch vụ. Làm thế nào để nhận ra lệnh mất nhiều thời gian khác nhau. Thật không may, tôi không thể tái tạo lỗi hết thời gian chờ thông qua dịch vụ:
# kubectl exec network-tools -- time dig A google.com @10.96.0.10 +short
142.250.185.238
thực 0m 5,02s
người dùng 0 phút 0,02 giây
hệ thống 0m 0,00s
# kubectl exec network-tools -- time dig A google.com @10.96.0.10 +short
142.250.185.238
thực 0m 0,03s
người dùng 0 phút 0,01 giây
hệ thống 0m 0,00s
# kubectl exec network-tools -- time dig A google.com @10.96.0.10 +short
142.250.185.238
thực 0m 10.03s
người dùng 0 phút 0,01 giây
hệ thống 0m 0,01s
- Bây giờ tôi giới hạn truy vấn cho các nhóm coredns khác nhau. Lưu ý rằng nhóm
coredns-64897985d-cgxmv
với địa chỉ IP 10.85.0.4
đang chạy trên một nút khác.
nhóm/coredns-64897985d-l9ftl / 10.85.0.3
kubectl exec network-tools -- time dig A google.com @10.85.0.3 +short
142.251.36.206
thực 0m 0,09s
người dùng 0m 0.00s
hệ thống 0m 0,01s
nhóm/coredns-64897985d-cgxmv / 10.85.0.4
Đây là lỗi hết thời gian khi sử dụng rõ ràng lõi
pod của một nút khác.
# kubectl exec network-tools -- time dig A google.com @10.85.0.4 +short
; <<>> DiG 9.16.20 <<>> Google.com @10.85.0.4 +ngắn
;; tùy chọn chung: + cmd
;; kết nối quá hạn; không thể truy cập máy chủ
Đã thoát lệnh với trạng thái khác không 9
thực 0m 15.02s
người dùng 0 phút 0,02 giây
hệ thống 0m 0,00s
lệnh kết thúc bằng mã thoát 9
- Các nhật ký sau đây được viết bởi
lõi
nhóm:
nhóm/coredns-64897985d-l9ftl / 10.85.0.3
# nhật ký kubectl -n kube-system coredns-64897985d-l9ftl
.:53
[INFO] plugin/tải lại: Chạy cấu hình MD5 = db32ca3650231d74073ff4cf814959a7
CoreDNS-1.8.6
linux/amd64, go1.17.1, 13a9191
[INFO] Đang tải lại
[INFO] plugin/sức khỏe: Chuyển sang chế độ lameduck trong 5 giây
[INFO] plugin/tải lại: Chạy cấu hình MD5 = 3d3f6363f05ccd60e0f885f0eca6c5ff
[INFO] Tải lại hoàn tất
[INFO] 127.0.0.1:54962 - 9983 "HINFO IN 4683476401105705616.5032820535498752139. udp 57 false 512" NXDOMAIN qr,rd,ra 132 0,058383302s
[INFO] 10.85.0.1:24999 - 26748 "A IN google.com. udp 51 false 4096" KHÔNG LỖI qr,rd,ra 1549 0,070006969s
[INFO] 10.85.0.1:6142 - 9467 "A IN google.com. udp 51 false 4096" KHÔNG LỖI qr,aa,rd,ra 1549 0,000959536s
[INFO] 10.85.0.1:2544 - 20425 "A IN google.com. udp 51 false 4096" KHÔNG LỖI qr,aa,rd,ra 1549 0,00065977s
[INFO] 10.85.0.1:26782 - 372 "A IN google.com. udp 51 false 4096" KHÔNG LỖI qr,aa,rd,ra 1549 0,001292768s
[INFO] 10.85.0.1:62687 - 27302 "A IN google.com. udp 51 false 4096"
...
nhóm/coredns-64897985d-cgxmv / 10.85.0.4
# nhật ký kubectl -n kube-system coredns-64897985d-cgxmv
.:53
[INFO] plugin/tải lại: Chạy cấu hình MD5 = db32ca3650231d74073ff4cf814959a7
CoreDNS-1.8.6
linux/amd64, go1.17.1, 13a9191
[INFO] Đang tải lại
[INFO] plugin/sức khỏe: Chuyển sang chế độ lameduck trong 5 giây
[INFO] plugin/tải lại: Chạy cấu hình MD5 = 3d3f6363f05ccd60e0f885f0eca6c5ff
[INFO] Tải lại hoàn tất
Để thu hẹp vấn đề, tôi đã cài đặt lại cụm của mình thông qua ansible và cài đặt calico thay vì flannel thông qua lệnh bên dưới. Vấn đề tương tự tồn tại ở đó.
$ helm cài đặt calico projectcalico/tiger-operator --version v3.21.3
tôi đã sử dụng hướng dẫn cài đặt kubeadm để khởi tạo cụm. Tôi đã thực hiện như sau khởi tạo kubeadmin
lệnh để khởi tạo cụm:
$ kubeadm init \
--apiserver-advertise-address=192.168.179.101 \
--apiserver-cert-extra-sans=api.example.com \
--control-plane-endpoint=192.168.179.100 \
--cri-socket=unix:///var/run/crio/crio.sock \
--pod-network-cidr=10.244.0.0/16 \
--upload-certs
mô-đun hạt nhân br_netfilter
và các thuộc tính sysctl được xác định, nhưng sự cố vẫn tồn tại. Tôi đang ở cuối các phương pháp tiếp cận giải pháp của mình và cần lời khuyên từ các chuyên gia ở đây. Dưới đây là danh sách các mô-đun hạt nhân, cài đặt sysctl và các thông tin khác của tôi.
Tôi hy vọng ai đó có thể giúp tôi.
thông tin hạt nhân
$ uname -a
Linux archlinux-x86-64-000 5.10.90-1-lts #1 SMP Thứ tư, ngày 05 tháng 1 năm 2022 13:07:40 +0000 x86_64 GNU/Linux
mô-đun hạt nhân
$ lsmod | loại
ac97_bus 16384 1 snd_soc_core
aesni_intel 372736 0
agpgart 53248 4 intel_agp,intel_gtt,ttm,drm
atkbd 36864 0
bpf_preload 16384 0
cầu 274432 1 br_netfilter
br_netfilter 32768 0
cec 61440 1 drm_kms_helper
cfg80211 983040 0
crc16 16384 1 máy lẻ 4
crc32c_generic 16384 0
crc32c_intel 24576 3
crc32_pclmul 16384 0
cct10dif_pclmul 16384 1
cryptd 24576 2 crypto_simd,ghash_clmulni_intel
crypto_simd 16384 1 aesni_intel
drm 577536 5 drm_kms_helper,qxl,drm_ttm_helper,ttm
drm_kms_helper 278528 3 qxl
drm_ttm_helper 16384 1 qxl
máy lẻ4 933888 1
chuyển đổi dự phòng 16384 1 net_failover
béo 86016 1 vfat
fb_sys_fops 16384 1 drm_kms_helper
cầu chì 167936 1
ghash_clmulni_intel 16384 0
keo_helper 16384 1 aesni_intel
i2c_i801 36864 0
i2c_smbus 20480 1 i2c_i801
i8042 36864 0
intel_agp 24576 0
intel_gtt 24576 1 intel_agp
intel_pmc_bxt 16384 1 iTCO_wdt
intel_rapl_common 28672 1 intel_rapl_msr
intel_rapl_msr 20480 0
ip6_udp_tunnel 16384 1 vxlan
ip_set 57344 0
ip_tables 32768 0
ipt_REJECT 16384 0
ip_vs 184320 6 ip_vs_rr,ip_vs_sh,ip_vs_wrr
ip_vs_rr 16384 0
ip_vs_sh 16384 0
ip_vs_wrr 16384 0
irqbypass 16384 1 kvm
iTCO_vendor_support 16384 1 iTCO_wdt
iTCO_wdt 16384 0
jbd2 151552 1 máy lẻ 4
vui vẻ 28672 0
kvm 933888 1 kvm_intel
kvm_intel 331776 0
ledtrig_audio 16384 1 snd_hda_codec_generic
libcrc32c 16384 4 nf_conntrack,nf_nat,nf_tables,ip_vs
libps2 20480 2 atkbd, psmouse
llc 16384 2 cầu,stp
lpc_ich 28672 0
mac_hid 16384 0
mbcache 16384 1 ext4
Kích thước mô-đun được sử dụng bởi
chuộtdev 24576 0
net_failover 24576 1 virtio_net
nf_conntrack 172032 6 xt_conntrack,nf_nat,xt_nat,nf_conntrack_netlink,xt_MASQUERADE,ip_vs
nf_conntrack_netlink 57344 0
nf_defrag_ipv4 16384 1 nf_conntrack
nf_defrag_ipv6 24576 2 nf_conntrack,ip_vs
nf_nat 57344 3 xt_nat,nft_chain_nat,xt_MASQUERADE
nfnetlink 20480 4 nft_compat,nf_conntrack_netlink,nf_tables,ip_set
nf_reject_ipv4 16384 1 ipt_REJECT
nf_tables 249856 183 nft_compat,nft_counter,nft_chain_nat
nft_chain_nat 16384 7
nft_compat 20480 122
nft_count 16384 84
nls_iso8859_1 16384 0
lớp phủ 147456 18
pcspkr 16384 0
psmouse 184320 0
qemu_fw_cfg 20480 0
qxl 73728 0
rapl 16384 0
rfkill 28672 2 cfg80211
rng_core 16384 1 virtio_rng
sê-ri 28672 6 sê-ri_raw, atkbd, psmouse, i8042
seri_raw 20480 0
snd 114688 8 snd_hda_codec_generic,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_timer,snd_compress,snd_soc_core,snd_pcm
snd_compress 32768 1 snd_soc_core
snd_hda_codec 172032 2 snd_hda_codec_generic,snd_hda_intel
snd_hda_codec_generic 98304 1
snd_hda_core 110592 3 snd_hda_codec_generic,snd_hda_intel,snd_hda_codec
snd_hda_intel 57344 0
snd_hwdep 16384 1 snd_hda_codec
snd_intel_dspcfg 28672 1 snd_hda_intel
snd_pcm 147456 7 snd_hda_intel,snd_hda_codec,soundwire_intel,snd_compress,snd_soc_core,snd_hda_core,snd_pcm_dmaengine
snd_pcm_dmaengine 16384 1 snd_soc_core
snd_soc_core 327680 1 soundwire_intel
snd_timer 49152 1 snd_pcm
soundcore 16384 1 snd
soundwire_bus 90112 3 soundwire_intel,soundwire_generic_allocation,soundwire_cadence
soundwire_cadence 36864 1 soundwire_intel
soundwire_generic_allocation 16384 1 soundwire_intel
soundwire_intel 45056 1 snd_intel_dspcfg
stp 16384 1 cầu
syscopyarea 16384 1 drm_kms_helper
sysfillrect 16384 1 drm_kms_helper
sysimgblt 16384 1 drm_kms_helper
ttm 114688 2 qxl,drm_ttm_helper
udp_tunnel 20480 1 vxlan
65536 0
veth 32768 0
vfat 24576 0
virtio_balloon 24576 0
virtio_blk 20480 2
virtio_console 40960 0
virtio_net 61440 0
virtio_pci 28672 0
virtio_rng 16384 0
vxlan 77824 0
xhci_pci 20480 0
xhci_pci_renesas 20480 1 xhci_pci
x_tables 53248 11 xt_conntrack,xt_statistic,nft_compat,xt_tcpudp,xt_addrtype,xt_nat,xt_comment,ipt_REJECT,ip_tables,xt_MASQUERADE,xt_mark
xt_addrtype 16384 2
xt_bình luận 16384 64
xt_conntrack 16384 13
xt_mark 16384 12
xt_MASQUERADE 20480 6
xt_nat 16384 7
xt_statistic 16384 3
xt_tcpudp 20480 15
hệ thống
thuộc tính sysctl trên thùng rác. Vượt quá số ký tự tối đa cho lỗi máy chủ.