Kubernetes - ชุดจำลอง

Replica Set ช่วยให้มั่นใจได้ว่าควรจะเรียกใช้พ็อดจำลองจำนวนเท่าใด ถือได้ว่าเป็นการแทนที่ตัวควบคุมการจำลองแบบ ความแตกต่างที่สำคัญระหว่างชุดการจำลองและตัวควบคุมการจำลองคือตัวควบคุมการจำลองสนับสนุนเฉพาะตัวเลือกที่ยึดตามความเท่าเทียมกันในขณะที่ชุดแบบจำลองรองรับตัวเลือกตามชุด

apiVersion: extensions/v1beta1 --------------------->1
kind: ReplicaSet --------------------------> 2
metadata:
   name: Tomcat-ReplicaSet
spec:
   replicas: 3
   selector:
      matchLables:
         tier: Backend ------------------> 3
      matchExpression:
{ key: tier, operation: In, values: [Backend]} --------------> 4
template:
   metadata:
      lables:
         app: Tomcat-ReplicaSet
         tier: Backend
      labels:
         app: App
         component: neo4j
   spec:
      containers:
      - name: Tomcat
      image: tomcat: 8.0
      ports:
      - containerPort: 7474

รายละเอียดการตั้งค่า

  • apiVersion: extensions/v1beta1 →ในโค้ดด้านบนเวอร์ชัน API คือ Kubernetes เวอร์ชันเบต้าขั้นสูงซึ่งรองรับแนวคิดของชุดข้อมูลจำลอง

  • kind: ReplicaSet →เราได้กำหนดชนิดเป็นชุดแบบจำลองซึ่งช่วยให้ kubectl เข้าใจว่าไฟล์นั้นใช้ในการสร้างชุดการจำลอง

  • tier: Backend →เราได้กำหนดระดับป้ายกำกับเป็นแบ็กเอนด์ซึ่งสร้างตัวเลือกที่ตรงกัน

  • {key: tier, operation: In, values: [Backend]} →สิ่งนี้จะช่วยได้ matchExpression เพื่อทำความเข้าใจเงื่อนไขการจับคู่ที่เรากำหนดไว้และในการดำเนินการที่ใช้โดย matchlabel เพื่อค้นหารายละเอียด

เรียกใช้ไฟล์ด้านบนโดยใช้ kubectl และสร้างชุดแบบจำลองแบ็กเอนด์ที่มีคำจำกัดความที่ให้ไว้ในไฟล์ yaml ไฟล์.