iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 12
0
Kubernetes

Kubernetes~成為Devops工程師的必經試煉系列 第 12

Day 12 用來協調Deployment的中介者 ReplicaSets

  • 分享至 

  • xImage
  •  

前言

ReplicaSet的功能類似於 Replication Controller ,而 ReplicaSet 和Replication Controller之間的唯一區別是有沒有支援 selector .Replication Controller只支援使用等於的 selector(env = dev或environment!= qa),但ReplicaSet還支援基於集合的 selector(版本在(v1.0,v2.0)或env notin(dev,qa))。。

雖然ReplicaSets可以獨立使用,但是它主要被部署作為協調pod創建,刪除和更新的機制。

實際操作

首先,我們先建立一個 frontend.yaml


apiVersion: apps/v1
kind: ReplicaSet
metadata:
  name: frontend
  labels:
    app: guestbook
    tier: frontend
spec:
  # modify replicas according to your case
  replicas: 3
  selector:
    matchLabels:
      tier: frontend
    matchExpressions:
      - {key: tier, operator: In, values: [frontend]}
  template:
    metadata:
      labels:
        app: guestbook
        tier: frontend
    spec:
      containers:
      - name: php-redis
        image: gcr.io/google_samples/gb-frontend:v3
        resources:
          requests:
            cpu: 100m
            memory: 100Mi
        env:
        - name: GET_HOSTS_FROM
          value: dns
        ports:
        - containerPort: 80

以上的 yaml 會建立一個pod裡面包含了redis 跟 guestbook

參考連結

  1. ReplicaSet
  2. Kubernetes volumes by example

上一篇
Day 11 用來儲存資料的元件 ~ Volume
下一篇
Day 13 Kubernetes 中處理有狀態 Container 如何運作 ~StatefulSets
系列文
Kubernetes~成為Devops工程師的必經試煉17
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言