在Kubernetes容器中为容器分配资源

时间:2018-12-05 07:32:14

标签: kubernetes yaml

考虑以下.yaml文件:

application/guestbook/redis-slave-deployment.yaml  
apiVersion: apps/v1 # for versions before 1.9.0 use apps/v1beta2
kind: Deployment
metadata:
  name: redis-slave
  labels:
    app: redis
spec:
  selector:
    matchLabels:
      app: redis
      role: slave
      tier: backend
  replicas: 2
  template:
    metadata:
      labels:
        app: redis
        role: slave
        tier: backend
    spec:
      containers:
      - name: slave
        image: gcr.io/google_samples/gb-redisslave:v1
        resources:
          requests:
            cpu: 100m
            memory: 100Mi
        env:
        - name: GET_HOSTS_FROM
          value: dns

        ports:
        - containerPort: 6379

我不清楚资源部分!如果我有16G RAM和4core CPU(每个核心2GHz),那么上面请求的资源有多少?

1 个答案:

答案 0 :(得分:2)

因此,您总共有4个CPU内核和16GB RAM。此部署将启动两个Pod(副本),每个Pod将以其启动的节点上的0.1核和0.1GB预留空间启动。因此,总共将保留0.2个内核和0.2GB,剩下的15.8GB和3.8个内核。但是,实际使用量可能会超出预留量,因为这只是请求的数量。要指定上限,请使用“限制”部分。

可以是counter-intuitive that CPU allocation is based on cores rather than GHz-算术fuller explanation in the GCP docs上有一个in the official kubernetes docs