• kubernets之namespace


    一 命名空间的介绍以及作用

      1  概念

        为了方便不同部门之间对kubernets集群的使用,并且对其进行有效的隔离,kubernets提供了一种资源隔离手段,通过将各种不同资源分组到

    一个区域,并且统一管理,这个区域的名称叫做命名空间

      2 使用

        查询kubernets集群内部的所有命名空间

    [root@node01 ~]# k get ns
    NAME                 STATUS                   AGE
    default              Active                   26h
    kube-node-lease      Active                   26h
    kube-public          Active                   26h
    kube-system          Active                   26h

      3 查询kube-system空间的pod资源

    [root@node01 ~]# k get po -n kube-system
    NAME                             READY   STATUS    RESTARTS   AGE
    coredns-fb8b8dccf-gfkss          1/1     Running   1          26h
    coredns-fb8b8dccf-tjr6m          1/1     Running   1          26h
    etcd-master                      1/1     Running   1          26h
    kube-apiserver-master            1/1     Running   0          26h
    kube-controller-manager-master   1/1     Running   1          26h
    kube-flannel-ds-b95br            1/1     Running   0          26h
    kube-flannel-ds-mwlgl            1/1     Running   0          26h
    kube-flannel-ds-w4mvw            1/1     Running   0          26h
    kube-proxy-2h9ck                 1/1     Running   0          26h
    kube-proxy-qprh7                 1/1     Running   0          26h
    kube-proxy-z6nwk                 1/1     Running   0          26h
    kube-scheduler-master            1/1     Running   1          26h

      4 创建一个命名空间

    [root@node01 pod]# k create -f custom-namespace.yml
    namespace/custom-namespace created
    [root@node01 pod]# cat custom-namespace.yml
    apiVersion: v1
    kind: Namespace
    metadata:
    name: custom-namespace

      5 如何在刚创建的命名空间创建资源

        5.1 通过在资源的ym文件的metadata的属性里面的namesapce里面指定

    apiVersion: v1
    kind: Pod
    metadata:
    name: kubia-manual-namespace
    namespace: custom-namespace
    spec:
    containers:
    - image: luksa/kubia
    name: kubia
    ports:
    - containerPort: 8080
    protocol: TCP
    

        在集群查询该pod的信息,在default没查到,在custom-namespace里面查询到该pod信息

    [root@node01 pod]# k get po
    NAME                       READY   STATUS    RESTARTS   AGE
    kubia-manual               1/1     Running   0          21h
    kubia-manual-gpu           1/1     Running   0          172m
    kubia-manual-with-labels   1/1     Running   0          4h14m
    [root@node01 pod]# k get po -n custom-namespace
    NAME                     READY   STATUS              RESTARTS   AGE
    kubia-manual-namespace   0/1     ContainerCreating   0          17s

         5.2 也可通过创建时指定参数 -n和命名空间来指定

    kubectl create -f kubia-manual.yam1 -n custom-namespaces
    pod ”kubia-manual" created

      

       5.3 如何修改目前的命名空间 

    export namespace=XXXX
    kubectl config set-context $(kubectl config current-context) --namespace=${namespace}
    unset  namespace

      6 命名空间提供的隔离

        命名空间很大程度上提供了不同命名空间之间的资源隔离,但是却不是绝对的隔离,例如,不同的命名空间之间的pod是否可以互相通信

      取决于集群内部使用的网络插件,当使用的网络插件允许的情况下,不同命名空间之间的pod仍然可以互相通信

  • 相关阅读:
    自然语言处理一些读书笔记和自己的思考。
    文本情感分析的基础在于自然语言处理、情感词典、机器学习方法等内容。以下是我总结的一些资源。
    自然语言处理哪家强?
    2016,2017中国高考状元调查报告 教师公务员家庭最盛产状元
    书籍装帧知识: 封面 封里 封底 书脊 书冠 书脚 扉页 插页 篇章页目录 版权页 索引 版式 版心 版口 超版口 直(竖)排本 横排本 刊头 破栏 天头 地脚 暗页码 页 另页起 另面起 表注 图注 背题
    How to intercept any postback in a page?
    HearthBuddy卡组
    Button.OnClientClick
    Async Task Types in C#
    ILSpy C# language support status
  • 原文地址:https://www.cnblogs.com/wxm-pythoncoder/p/14172696.html
Copyright © 2020-2023  润新知