Score:1

การติดตั้ง kubernetes แบบออฟไลน์ล้มเหลวเมื่อใช้คอนเทนเนอร์เป็น CRI

ธง ao

ฉันต้องสร้างคลัสเตอร์ Kubernetes แบบเปลือยที่ไม่มีการเชื่อมต่ออินเทอร์เน็ตด้วยเหตุผลบางประการ

เนื่องจากนักเทียบท่าเลิกใช้แล้ว ฉันจึงตัดสินใจใช้คอนเทนเนอร์เป็น CRI แต่การติดตั้งออฟไลน์ด้วย kubeadm ล้มเหลวขณะดำเนินการ kubeadm เริ่มต้น เนื่องจากหมดเวลา

    ขออภัย เกิดข้อผิดพลาด:
            หมดเวลารอตามเงื่อนไข

    ข้อผิดพลาดนี้น่าจะเกิดจาก:
            - คูเบเลตไม่ทำงาน
            - kubelet ไม่แข็งแรงเนื่องจากการกำหนดค่าโหนดผิดพลาดในทางใดทางหนึ่ง (ปิดใช้งาน cgroups ที่จำเป็น)

    หากคุณอยู่บนระบบที่ขับเคลื่อนด้วย systemd คุณสามารถลองแก้ไขข้อผิดพลาดด้วยคำสั่งต่อไปนี้:
            - 'สถานะ systemctl kubelet'
            - 'วารสาร -xeu kubelet'

และฉันสามารถเห็นบันทึกข้อผิดพลาดจำนวนมากอันเป็นผลมาจาก Journalctl -u kubelet -f:

11 24 16:25:25 rhel8 kubelet[9299]: E1124 16:25:25.473188 9299 controller.go:144] ล้มเหลวในการตรวจสอบสัญญาเช่า จะลองใหม่ใน 7 วินาที ข้อผิดพลาด: รับ "https://133.117.20.57:6443 /apis/coordination.k8s.io/v1/namespaces/kube-node-lease/lease/rhel8?timeout=10s": หมุน tcp 133.117.20.57:6443: เชื่อมต่อ: การเชื่อมต่อถูกปฏิเสธ
11 24 16:25:25 rhel8 kubelet[9299]: E1124 16:25:25.533555 9299 kubelet.go:2407] "ข้อผิดพลาดในการรับโหนด" err="ไม่พบโหนด \"rhel8\"
11 24 16:25:25 rhel8 kubelet[9299]: I1124 16:25:25.588986 9299 kubelet_node_status.go:71] "กำลังพยายามลงทะเบียนโหนด" node="rhel8"
11 24 16:25:25 rhel8 kubelet[9299]: E1124 16:25:25.589379 9299 kubelet_node_status.go:93] "ไม่สามารถลงทะเบียนโหนดกับเซิร์ฟเวอร์ API" err="โพสต์ \"https://133.117.20.57:6443 /api/v1/nodes\": หมุนหมายเลข tcp 133.117.20.57:6443: เชื่อมต่อ: การเชื่อมต่อถูกปฏิเสธ" node="rhel8"
11 24 16:25:25 rhel8 kubelet[9299]: E1124 16:25:25.634625 9299 kubelet.go:2407] "ข้อผิดพลาดในการรับโหนด" err="ไม่พบโหนด \"rhel8\"
11 24 16:25:25 rhel8 kubelet[9299]: E1124 16:25:25.735613 9299 kubelet.go:2407] "ข้อผิดพลาดในการรับโหนด" err="ไม่พบโหนด \"rhel8\"
11 24 16:25:25 rhel8 kubelet[9299]: E1124 16:25:25.835815 9299 kubelet.go:2407] "ข้อผิดพลาดในการรับโหนด" err="ไม่พบโหนด \"rhel8\"
11 24 16:25:25 rhel8 kubelet[9299]: E1124 16:25:25.936552 9299 kubelet.go:2407] "ข้อผิดพลาดในการรับโหนด" err="ไม่พบโหนด \"rhel8\"
11 24 16:25:26 rhel8 kubelet[9299]: E1124 16:25:26.036989 9299 kubelet.go:2407] "ข้อผิดพลาดในการรับโหนด" err="ไม่พบโหนด \"rhel8\"
11 24 16:25:26 rhel8 kubelet[9299]: E1124 16:25:26.137464 9299 kubelet.go:2407] "ข้อผิดพลาดในการรับโหนด" err="ไม่พบโหนด \"rhel8\"
11 24 16:25:26 rhel8 kubelet[9299]: E1124 16:25:26.238594 9299 kubelet.go:2407] "ข้อผิดพลาดในการรับโหนด" err="ไม่พบโหนด \"rhel8\"
11 24 16:25:26 rhel8 kubelet[9299]: E1124 16:25:26.338704 9299 kubelet.go:2407] "ข้อผิดพลาดในการรับโหนด" err="ไม่พบโหนด \"rhel8\"
11 24 16:25:26 rhel8 kubelet[9299]: E1124 16:25:26.394465 9299 event.go:273] ไม่สามารถเขียนเหตุการณ์: '&v1.Event{TypeMeta:v1.TypeMeta{Kind:"", APIVersion:" "}, ObjectMeta:v1.ObjectMeta{ชื่อ:"rhel8.16ba6aab63e58bd8", GenerateName:"", Namespace:"default", SelfLink:"", UID:"", ResourceVersion:"", Generation:0, CreationTimestamp:v1 .Time{Time:time.Time{wall:0x0, ext:0, loc:(*time.Location)(nil)}}, DeletionTimestamp:(*v1.Time)(nil), DeletionGracePeriodSeconds:(*int64)( ไม่มี), ป้ายกำกับ:แผนที่[สตริง]สตริง(ไม่มี), คำอธิบายประกอบ:แผนที่[สตริง]สตริง(ไม่มี), OwnerReferences:[]v1.OwnerReference(ไม่มี), Finalizers:[]string(ไม่มี), ClusterName:"", ManagedFields:[]v1.ManagedFieldsEntry(nil)}, InvolvedObject:v1.ObjectReference{ชนิด:"Node", Namespace:"", ชื่อ:"rhel8", UID:"rhel8", APIVersion:"", ResourceVersion:"" , FieldPath:""}, เหตุผล:"กำลังเริ่มต้น", ข้อความ:"กำลังเริ่ม kubelet.", แหล่งที่มา:v1.EventSource{คอมโพเนนต์:"kubelet", โฮสต์:"rhel8"}, FirstTimestamp:v1.Time{เวลา:time. เวลา{wall:0xc05f9812b2b227d8, ต่อ:5706873656, loc:(*ti me.Location)(0x55a228f25680)}}, LastTimestamp:v1.Time{Time:time.Time{wall:0xc05f9812b2b227d8, ext:5706873656, loc:(*time.Location)(0x55a228f25680)}}, จำนวน:1, ประเภท: "ปกติ", EventTime:v1.MicroTime{เวลา:time.Time{wall:0x0, ext:0, loc:(*time.Location)(nil)}}, Series:(*v1.EventSeries)(ไม่มี), การดำเนินการ:"", ที่เกี่ยวข้อง:(*v1.ObjectReference)(ไม่มี), ReportingController:"", ReportingInstance:""}': 'โพสต์ "https://133.117.20.57:6443/api/v1/namespaces/default/ เหตุการณ์": กด tcp 133.117.20.57:6443: เชื่อมต่อ: การเชื่อมต่อถูกปฏิเสธ '(อาจลองใหม่หลังจากเข้าสู่โหมดสลีป)
11 24 16:25:27 rhel8 kubelet[9299]: E1124 16:25:27.143503 9299 kubelet.go:2407] "ข้อผิดพลาดในการรับโหนด" err="ไม่พบโหนด \"rhel8\"
11 24 16:25:27 rhel8 kubelet[9299]: E1124 16:25:27.244526 9299 kubelet.go:2407] "ข้อผิดพลาดในการรับโหนด" err="ไม่พบโหนด \"rhel8\"
11 24 16:25:27 rhel8 kubelet[9299]: E1124 16:25:27.302890 9299 remote_runtime.go:116] "RunPodSandbox จากบริการรันไทม์ล้มเหลว" err="ข้อผิดพลาด rpc: code = Unknown desc = ไม่สามารถรับอิมเมจแซนด์บ็อกซ์ \ "k8s.gcr.io/pause:3.2\": ไม่สามารถดึงอิมเมจ \"k8s.gcr.io/pause:3.2\": ไม่สามารถดึงและคลายแพ็กอิมเมจ \"k8s.gcr.io/pause:3.2\" : ไม่สามารถแก้ไขการอ้างอิง \"k8s.gcr.io/pause:3.2\": ไม่สามารถทำการร้องขอ: หัวหน้า \"https://k8s.gcr.io/v2/pause/manifests/3.2\": หมุนหมายเลข tcp: ค้นหา k8s.gcr.io บน [::1]:53: อ่าน udp [::1]:39732->[::1]:53: อ่าน: การเชื่อมต่อถูกปฏิเสธ"
11 24 16:25:27 rhel8 kubelet[9299]: E1124 16:25:27.302949 9299 kuberuntime_sandbox.go:70] "สร้างแซนด์บ็อกซ์สำหรับพ็อดไม่สำเร็จ" err="ข้อผิดพลาด rpc: code = Unknown desc = ไม่สามารถรับอิมเมจแซนด์บ็อกซ์ \"k8s.gcr.io/pause:3.2\": ไม่สามารถดึงอิมเมจ \"k8s.gcr.io/pause:3.2\": ไม่สามารถดึงและคลายแพ็กอิมเมจ \"k8s.gcr.io/pause:3.2\ ": ไม่สามารถแก้ไขการอ้างอิง \"k8s.gcr.io/pause:3.2\": ไม่สามารถทำการร้องขอ: หัวหน้า \"https://k8s.gcr.io/v2/pause/manifests/3.2\": หมุน tcp : ค้นหา k8s.gcr.io บน [::1]:53: อ่าน udp [::1]:39732->[::1]:53: อ่าน: การเชื่อมต่อถูกปฏิเสธ" pod="kube-system/kube-scheduler -rhel8"
11 24 16:25:27 rhel8 kubelet[9299]: E1124 16:25:27.302989 9299 kuberuntime_manager.go:815] "CreatePodSandbox สำหรับ pod ล้มเหลว" err="ข้อผิดพลาด rpc: code = Unknown desc = ไม่สามารถรับอิมเมจแซนด์บ็อกซ์ \" k8s.gcr.io/pause:3.2\": ไม่สามารถดึงอิมเมจ \"k8s.gcr.io/pause:3.2\": ไม่สามารถดึงและคลายแพ็กอิมเมจ \"k8s.gcr.io/pause:3.2\": ไม่สามารถแก้ไขการอ้างอิง \"k8s.gcr.io/pause:3.2\": ไม่สามารถทำการร้องขอ: หัวหน้า \"https://k8s.gcr.io/v2/pause/manifests/3.2\": หมุนหมายเลข tcp: ค้นหา k8s.gcr.io บน [::1]:53: อ่าน udp [::1]:39732->[::1]:53: อ่าน: การเชื่อมต่อถูกปฏิเสธ" pod="kube-system/kube-scheduler-rhel8 "
11 24 16:25:27 rhel8 kubelet[9299]: E1124 16:25:27.303080 9299 pod_workers.go:765] "ข้อผิดพลาดในการซิงค์พ็อด การข้าม" err="ล้มเหลวในการ \"CreatePodSandbox\" สำหรับ \"kube-scheduler- rhel8_kube-system(e5616b23d0312e4995fcb768f04aabbb)\" กับ CreatePodSandboxError: \"สร้างแซนด์บ็อกซ์สำหรับพ็อดไม่สำเร็จ \"kube-scheduler-rhel8_kube-system(e5616b23d0312e4995fcb768f04aabbb)\": รับข้อผิดพลาด rpc debox sc = ไม่ทราบข้อผิดพลาด ภาพ \"k8s.gcr.io/pause:3.2\": ไม่สามารถดึงภาพ \"k8s.gcr.io/pause:3.2\": ไม่สามารถดึงและแกะภาพ \ "k8s.gcr.io/pause:3.2\": ล้มเหลวในการแก้ไขการอ้างอิง \"k8s.gcr.io/pause:3.2\": ล้มเหลวในการดำเนินการคำขอ: หัวหน้า \"https:/ /k8s.gcr.io/v2/pause/manifests/3.2\": กด tcp: ค้นหา k8s.gcr.io บน [::1]:53: อ่าน udp [::1]:39732->[: :1]:53: อ่าน: การเชื่อมต่อถูกปฏิเสธ\"" pod="kube-system/kube-scheduler-rhel8" podUID=e5616b23d0312e4995fcb768f04aabbb

เมื่อฉันทำสิ่งเดียวกันกับการเชื่อมต่ออินเทอร์เน็ต การติดตั้งก็สำเร็จ และเมื่อใช้ docker แทน containerd การติดตั้งจะสำเร็จแม้ว่าจะไม่มีการเชื่อมต่ออินเทอร์เน็ตก็ตาม

Score:3
ธง ao

เกิดจากคอนเทนเนอร์ที่มีการตั้งค่าให้ดึง sandbox_image จาก k8s.gcr.io เป็นค่าเริ่มต้น แม้ว่าจะไม่มีการเชื่อมต่ออินเทอร์เน็ตก็ตาม

การตั้งค่านี้ระบุไว้ในบรรทัดที่ 57 ของ /etc/containerd/config.toml ไฟล์.

   [ปลั๊กอิน"io.containerd.grpc.v1.cri"]
     <snip>
     sandbox_image = "k8s.gcr.io/pause:3.2"

คลัสเตอร์ k8s ปัจจุบันของฉันคือ v1.22.1 ดังนั้นจึงใช้ pause:3.5 แทน pause:3.2 เมื่อเปลี่ยนเป็นอิมเมจที่มีอยู่ (k8s.gcr.io/pause:3.5 ในครั้งนี้) ฉันสร้างคลัสเตอร์ kubernetes ได้สำเร็จโดยไม่ต้องเชื่อมต่ออินเทอร์เน็ต

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา