Namespace
https://kubernetes.io/docs/tasks/administer-cluster/namespaces/
Kubernetesでは、複数の仮想的なクラスタを同じ物理クラスタ上に構築することができる。この仮想クラスタのことを Namespace と呼ぶ。
Example:
apiVersion: v1
kind: Namespace
metadata:
name: myapp
参考:
リソース管理
See also Concept#コンテナやpodへのcpuメモリの割当て
ResourceQuotasやLimitRangeを設定することで、リソース管理をよりいい感じに行えるっぽい。(が、逆に面倒ではないかという気もする。)
ResourceQuotas
https://kubernetes.io/docs/concepts/policy/resource-quotas/
Example:
apiVersion: v1
kind: ResourceQuota
metadata:
name: compute-resources
spec:
hard:
requests.cpu: "1"
requests.memory: 1Gi
limits.cpu: "2"
limits.memory: 2Gi
適用例:
kubectl create -f ./compute-resources.yaml --namespace=myspace
Note:
- ResourceQuotaを設定したnamespaceに属する全Podの合計値が上限になる
- cpu, memory以外も色々ある
LimitRange
https://kubernetes.io/docs/concepts/policy/limit-range/
Example:
apiVersion: v1
kind: LimitRange
metadata:
name: limit-mem-cpu-per-container
spec:
limits:
- max:
cpu: "800m"
memory: "1Gi"
min:
cpu: "100m"
memory: "99Mi"
default:
cpu: "700m"
memory: "900Mi"
defaultRequest:
cpu: "110m"
memory: "111Mi"
type: Container
- namespaceに対して設定する
- cpu/memoryのrequests/limitsの下限、上限、デフォルト値を設定できる
最終更新 2020-05-04: [software/k8s] Restructure Kubernetes pages (7114ade87)