คำถามติดแท็ก kubernetes

Kubernetes เป็นระบบการจัดระเบียบแบบโอเพนซอร์สสำหรับคอนเทนเนอร์ Docker จัดการการตั้งเวลาไปยังโหนดในคลัสเตอร์การคำนวณและจัดการปริมาณงานอย่างแข็งขันเพื่อให้แน่ใจว่าสถานะตรงกับความตั้งใจที่ผู้ใช้ประกาศไว้ การใช้แนวคิดของ "ป้ายกำกับ" และ "พ็อด" จะจัดกลุ่มคอนเทนเนอร์ที่ประกอบขึ้นเป็นแอปพลิเคชันเป็นหน่วยทางลอจิคัลเพื่อการจัดการและการค้นพบที่ง่าย

3
Kubernetes ติดอยู่ที่ ContainerCreating
พ็อดในคลัสเตอร์ Kubernetes ของฉันติดอยู่ที่ "ContainerCreating" หลังจากรันการสร้าง ฉันจะดูบันทึกการทำงานนี้เพื่อวิเคราะห์สาเหตุที่ติดอยู่ได้อย่างไร kubectl logsดูเหมือนจะไม่ทำงานเนื่องจากคอนเทนเนอร์ต้องอยู่ในสถานะไม่รอดำเนินการ
99 kubernetes 

4
ทำไมต้องปิดการใช้งาน swap บน kubernetes
ตั้งแต่ Kubernetes 1.8 ดูเหมือนว่าฉันต้องปิดการใช้งาน swap บนโหนดของฉัน (หรือตั้งค่า--fail-swap-onเป็นfalse) ฉันไม่พบเหตุผลทางเทคนิคว่าทำไม Kubernetes ยืนยันว่าการแลกเปลี่ยนถูกปิดใช้งาน นี่คือเหตุผลด้านประสิทธิภาพหรือไม่ เหตุผลด้านความปลอดภัย? เหตุใดจึงไม่มีเอกสารนี้
35 kubernetes  swap 

3
เป็นไปได้ไหมที่จะเรียกใช้งาน Kubernetes อีกครั้ง
ฉันมีการกำหนดค่างาน Kubernetes ต่อไปนี้: --- apiVersion: batch/v1 kind: Job metadata: name: dbload creationTimestamp: spec: template: metadata: name: dbload spec: containers: - name: dbload image: sdvl3prox001:7001/pbench/tdload command: ["/opt/pbench/loadTpcdsData.sh", "qas0063", "dbc", "dbc", "1"] restartPolicy: Never imagePullSecrets: - name: pbenchregkey status: {} เมื่อฉันkubectl create -f dbload-deployment.yml --recordทำงานและสร้างพ็อดแล้ว Docker container จะทำงานจนเสร็จและได้รับสถานะนี้: $ kubectl get job …

3
ฉันจะบอกได้อย่างไรเมื่อ / ถ้า / ทำไมภาชนะในคลัสเตอร์ kubernetes รีสตาร์ท?
ฉันมีคลัสเตอร์ kubernetes โหนดเดียวในเครื่องมือ google container เพื่อเล่นกับ สองครั้งตอนนี้เว็บไซต์ส่วนตัวเล็ก ๆ ที่ฉันโฮสต์เข้าไปนั้นออฟไลน์กันสองสามนาที เมื่อฉันดูบันทึกของคอนเทนเนอร์ฉันเห็นลำดับการเริ่มต้นปกติเสร็จสมบูรณ์เมื่อเร็ว ๆ นี้ดังนั้นฉันจึงถือว่าคอนเทนเนอร์เสียชีวิต (หรือถูกฆ่า?) และเริ่มใหม่ ฉันจะรู้ได้อย่างไรว่าเกิดอะไรขึ้นและทำไม? มีวิธีรับการแจ้งเตือนหรือไม่เมื่อใดก็ตามที่คอนเทนเนอร์เริ่ม / หยุดโดยไม่คาดคิด

5
เปิดเผยพอร์ต 80 และ 443 บน Google Container Engine โดยไม่มี load balancer
ขณะนี้ฉันกำลังทำโปรเจ็กต์งานอดิเรกขนาดเล็กซึ่งฉันจะทำโอเพ่นซอร์สเมื่อมันพร้อม บริการนี้ทำงานบน Google Container Engine ฉันเลือก GCE เพื่อหลีกเลี่ยงความยุ่งยากในการกำหนดค่าใช้จ่ายราคาไม่แพงและเพื่อเรียนรู้สิ่งใหม่ ๆ พ็อดของฉันทำงานได้ดีและฉันสร้างบริการที่มีประเภทLoadBalancerเพื่อเปิดเผยบริการบนพอร์ต 80 และ 443 สิ่งนี้ใช้ได้อย่างสมบูรณ์แบบ อย่างไรก็ตามฉันค้นพบว่าในแต่ละLoadBalancerบริการจะมีการสร้าง load balancer ของ Google Compute Engine ใหม่ขึ้นมา เครื่องถ่วงโหลดนี้ค่อนข้างแพงและทำไปจริงมากสำหรับโครงการงานอดิเรกในครั้งเดียว เพื่อลดค่าใช้จ่ายฉันกำลังมองหาวิธีที่จะเปิดเผยพอร์ตโดยไม่มีตัวโหลดบาลานซ์ สิ่งที่ฉันได้ลองไปแล้ว: ปรับใช้NodePortบริการ น่าเสียดายที่ไม่อนุญาตให้แสดงพอร์ตต่ำกว่า 30000 ปรับใช้ Ingress แต่สิ่งนี้จะสร้างตัวโหลดบาลานซ์ด้วย พยายามปิดการใช้งานHttpLoadBalancing( https://cloud.google.com/container-engine/reference/rest/v1/projects.zones.clusters#HttpLoadBalancing ) แต่ก็ยังสร้างตัวสร้างสมดุล มีวิธีใดที่จะเปิดเผยพอร์ต 80 และ 443 สำหรับอินสแตนซ์เดียวบน Google Container Engine โดยไม่มีตัวโหลดบาลานซ์หรือไม่?

1
spec-selector - matchLabels ใช้สำหรับอะไรในขณะที่สร้างการปรับใช้?
จากเอกสารของ Kubernetes : ฟิลด์ตัวเลือกจะกำหนดวิธีการปรับใช้เพื่อค้นหา Pods ที่จะจัดการ แต่เมื่อสร้างการปรับใช้ฉันได้ระบุเทมเพลตพ็อดแล้วเป็นส่วนหนึ่งของการปรับใช้ ดังนั้นทำไมฉันต้องมีตัวเลือกด้วย? มันควรจะใช้เช่นบริการที่มีการเริ่มต้นฝักแยกต่างหาก แต่ต่อมาภายใต้การปรับใช้เพื่อจัดการร่วมกัน?
18 kubernetes 

4
การใช้ตัวแปรสภาวะแวดล้อมในข้อมูลจำเพาะการปรับใช้ Kubernetes
ขณะนี้ฉันใช้ข้อมูลจำเพาะของ Kubernetes Deployment.yamlสำหรับการปรับใช้บริการ ข้อมูลจำเพาะรวมการอ้างอิงคำต่อคำไปยังที่อยู่ IP เฉพาะ (ทำเครื่องหมาย<static-ip-address>ด้านล่าง): spec: type: LoadBalancer loadBalancerIP: <static-ip-address> ฉันกังวลเกี่ยวกับการผลักดันข้อมูลเช่นรหัสผ่านหรือที่อยู่ IP ไปยังที่เก็บ Git ระยะไกล ฉันสามารถหลีกเลี่ยงสิ่งนี้ได้เช่นโดยการใช้ตัวแปรสภาพแวดล้อมเช่นกับข้อกำหนดการปรับใช้และการปรับใช้จริงโดยประมาณดังนี้: spec: type: LoadBalancer loadBalancerIP: ${SERVICE_ADDRESS} และ export SERVICE_ADDRESS=<static-ip-address> kubectl create -f Deployment.yaml เห็นได้ชัดว่าไวยากรณ์เฉพาะนี้ยังใช้งานไม่ได้ แต่บางอย่างเช่นนี้เป็นไปได้และถ้าเป็นเช่นนั้นได้อย่างไร ฉันไม่ต้องการพึ่งพาแยกเครื่องมือการจัดเตรียม ความลับและConfigMapดูเหมือนว่าจะมีแนวโน้ม แต่ดูเหมือนว่าพวกเขาไม่สามารถบริโภคในวิธีที่เหมาะสมกับวัตถุประสงค์นี้ หากฉันสามารถอ้างอิงที่อยู่ IP แบบคงที่โดยตรงซึ่งกำหนดไว้ด้วยgcloud compute addresses create service-addressจะดีที่สุด

2
วิธีการเลือกที่อยู่ IP ภายนอกของเครื่องมือสร้างสมดุล Kubernetes ใน Google Kubernetes Engine
ฉันปรับใช้เว็บแอปโดยใช้ Google Kubernetes Engine และฉันต้องการให้สามารถเข้าถึงได้ผ่าน load balancer บนที่อยู่ IP แบบคงที่ที่ฉันควบคุมเป็นส่วนหนึ่งของโครงการเดียวกันในแพลตฟอร์ม Google Cloud เพราะชื่อโดเมนที่ฉันต้องการใช้ ชี้ไปที่ IP นี้แล้ว ไฟล์ yaml ที่ฉันใช้สำหรับพ็อดคือ: apiVersion: v1 kind: Pod metadata: name: my-pod labels: app: my-app spec: containers: - name: my-container image: gcr.io/my-project/my-app:latest ฉันสามารถตั้งค่าตัวโหลดบาลานซ์ได้โดยใช้: apiVersion: v1 kind: Service metadata: name: my-load-balancer spec: ports: - port: 80 targetPort: …

1
การรีสตาร์ทการรีสตาร์ทคอนเทนเนอร์ที่ล้มเหลว - เกิดข้อผิดพลาดในการซิงค์พ็อดใน Minikube
ฉันพบข้อผิดพลาดนี้เมื่อพยายามสร้างพ็อด มันเกิดขึ้นกับภาพที่พบบ่อยมากเช่น Ubuntu, Alpine ด้วย ฉันค่อนข้างใหม่กับ Kubernetes และใช้Minikube Node (เวอร์ชั่น v0.24.1) คำสั่ง: kubectl run ubuntu --image==ubuntu ข้อผิดพลาด : Back-off restarting failed container - Error syncing pod รุ่น: Client Version: version.Info{Major:"1", Minor:"8", GitVersion:"**v1.8.0**", GitCommit:"6e937839ac04a38cac63e6a7a306c5d035fe7b0a", GitTreeState:"clean", BuildDate:"2017-09-28T22:57:57Z", GoVersion:"go1.8.3", Compiler:"gc", Platform:"linux/amd64"} Server Version: version.Info{Major:"1", Minor:"8", GitVersion:"**v1.8.0**", GitCommit:"0b9efaeb34a2fc51ff8e4d34ad9bc6375459c4a4", GitTreeState:"clean", BuildDate:"2017-11-29T22:43:34Z", GoVersion:"go1.9.1", Compiler:"gc", Platform:"linux/amd64"} อธิบายคำสั่ง …
15 kubernetes 

3
วิธีการเมานเสียงที่มี UID เฉพาะใน Kubernetes Pod
ดังนั้นฉันจึงพยายามทำให้ Nexus ทำงานโดยใช้ภาพนี้ใน Kubernetes แต่ล้มเหลวด้วย: mkdir: cannot create directory '../sonatype-work/nexus3/log': Permission denied mkdir: cannot create directory '../sonatype-work/nexus3/tmp': Permission denied Java HotSpot(TM) 64-Bit Server VM warning: Cannot open file ../sonatype-work/nexus3/log/jvm.log due to No such file or directory จากเอกสารมันบอกว่ากระบวนการทำงานกับ UID 200 และปริมาณจะต้องประกอบเข้าด้วยสิทธิ์เหล่านั้น: A persistent directory, /nexus-data, is used for configuration, logs, and …

4
จะค้นหาบริการหลักที่กำหนดให้กับคลัสเตอร์ AKS ที่สร้างขึ้นใหม่ได้อย่างไร
ฉันเพิ่งสร้าง AKS az aks create ... --ssh-key-value ...คลัสเตอร์โดยใช้มาตรฐาน ตามhttps://docs.microsoft.com/en-us/azure/aks/kubernetes-service-principal , คลัสเตอร์ AKS ถูกสร้างขึ้นและเนื่องจากไม่ได้ระบุหลักการบริการที่มีอยู่บริการหลักจะถูกสร้างขึ้นสำหรับคลัสเตอร์ ฉันจะหา SP ที่สร้างได้ที่ไหน ขอบคุณ
13 azure  kubernetes 

1
การปิดระบบของคลัสเตอร์ Kubernetes อย่างสง่างาม
เรามีคลัสเตอร์ Kubernetes 4 โหนดติดตั้งโดยใช้ Juju 2.0 และเสน่ห์ Kubernetes อย่างเป็นทางการ จุดประสงค์เดียวของการติดตั้งในพื้นที่และภาคเอกชนนี้คือการพัฒนาและทดสอบ หนึ่งในปัญหาที่ใหญ่ที่สุดและเป็นเอกสารของการติดตั้งนี้คือการขาดขั้นตอนการปิดเซิร์ฟเวอร์ที่ดี เช่นเดียวกับetcdโหนดที่ล่มการตั้งค่าทั้งหมดจะหายไป เราใช้เวลาเป็นจำนวนมากในการค้นหาสคริปต์สำรอง / คืนค่าอัตโนมัติ / ขั้นตอนสำหรับ Kubernetes คำตอบที่พบบ่อยที่สุดสำหรับปัญหาที่เรามีคือการปรับใช้เซิร์ฟเวอร์ตั้งแต่เริ่มต้นโดยใช้ Juju เมื่อใดก็ตามที่เราบูตเครื่อง รับ 30-35 นาที เวลาในการปรับใช้ดูเหมือนว่าจะไม่ใช่โซลูชันที่น่าสนใจใช่หรือไม่ คุณมีวิธีแก้ปัญหาที่เป็นไปได้สำหรับปัญหานี้หรือไม่?

4
Kubernetes ให้บริการ 503 ไม่พร้อมใช้งานชั่วคราวด้วย TLS Ingress หลายรายการ
ฉันมีการตั้งค่าคลัสเตอร์ kubernetes โดย kops บน Amazon Web Services ฉันมีการตั้งค่า 2 ไซต์ หนึ่งมีความปลอดภัยผ่าน SSL / TLS / https และอื่น ๆ เป็นเพียง http ทั้งสองเป็นเว็บไซต์ Wordpress เปลี่ยนโดเมนเพื่อปกป้องตัวตนของเว็บไซต์ การกำหนดค่า Ingress: apiVersion: extensions/v1beta1 kind: Ingress metadata: name: my-rules spec: tls: - hosts: - site1.com secretName: site1-tls-secret - hosts: - www.site1.com secretName: site1-tls-secret rules: - host: …

1
เปิดใช้งาน VPC-native (alias IP) บนคลัสเตอร์ GKE ที่มีอยู่
มีวิธีการเปิดใช้งานAlias IPในคลัสเตอร์ GKE ที่มีอยู่ (เมื่อปิดใช้งานAlias IP) หรือไม่ (นอกจากใช้https://github.com/bowei/k8s-custom-iptablesเพื่อสร้าง NATs ในแต่ละโหนด)

3
HorizontalPodAutoscaling ใน Amazon EKS
เมื่อพยายามตั้งค่า HorizontalPodAutoscaler ใน Amazon EKS คอลัมน์ TARGETS จะแสดงเสมอ<unknown>/50%และเมื่ออธิบาย HPA ฉันเห็น คำเตือน FailedGetResourceMetric 17s (x50 มากกว่า 1 ชั่วโมง) horizontal-pod-autoscaler ไม่สามารถรับตัวชี้วัดสำหรับทรัพยากร cpu: ไม่สามารถดึงข้อมูลตัวชี้วัดจากตัวชี้วัดทรัพยากร API: เซิร์ฟเวอร์ไม่พบทรัพยากรที่ร้องขอ (รับ pods.metrics.k8s.io) ฉันพบโพสต์หลายรายการในไซต์อื่น ๆ เกี่ยวกับปัญหาที่คล้ายกันซึ่งกล่าวถึงการใช้งาน--horizontal-pod-autoscaler-use-rest-clientsบน kube-controller-manager แต่ฉันไม่สามารถหาวิธีเปลี่ยนการตั้งค่าบน kube-controller-manager สำหรับคลัสเตอร์ EKS เนื่องจากปรากฏว่าคุณไม่สามารถ SSH ในโหนดหลักสำหรับการจัดการและ kube-controller-manager ไม่ได้แสดงรายการเป็นทรัพยากรที่ใดก็ได้ในระบบ ฉันได้ลองตั้งค่า metrics-server ด้วยตนเองแล้วทำตามคำแนะนำบนhttps://github.com/kubernetes-incubator/metrics-serverแต่ในกรณีนั้นฉันแสดงให้เห็นว่า EKS ไม่มีแผนที่กำหนดค่าที่จำเป็นสำหรับการตรวจสอบสิทธิ์ API ส่วนขยายCould not create the API server: …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.