Namespace --- 集群的共享与隔离

语言中namespace概念

k8s入坑之路(13)kubernetes重要资源(namespace隔离 resources资源管理 label)

 

  • namespace核心作用隔离

  以上是隔离的代码。namespace隔离的是:

  • 1.资源对象的隔离:Service、Deployment、Pod
  • 2.资源配额的隔离:Cpu、Memory

创建命名空间

kubectl create namespace dev

apiVersion: v1
kind: Namespace
metadata:
  name: dev

kubectl create -f namespace.yaml

kubectl get all -n dev

 

yaml文件中指定namespace

apiVersion: apps/v1
kind: Deployment
metadata:
  name: web-demo-new
  namespace: dev
spec:
  selector:
    matchLabels:
      app: web-demo
  replicas: 1
  template:
    metadata:
      labels:
        app: web-demo
    spec:
      containers:
      - name: web-demo
        image: 172.17.166.217/kubenetes/k8s-web-demo:2021070520
        ports:
        - containerPort: 8080
---
#service
apiVersion: v1
kind: Service
metadata:
  name: web-demo
  namespace: dev
spec:
  ports:
  - port: 80
    protocol: TCP
    targetPort: 8080
  selector:
    app: web-demo
  type: ClusterIP

---
#ingress
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: web-demo
  namespace: dev
spec:
  rules:
  - host: www.csweb.com
    http:
      paths:
      - pathType: Prefix
        path: /
        backend:
          service:
            name: web-demo
            port:
              number: 80
web.yaml

相关文章: