基于Kubernetes中networkPolicy的隔離策略測試(2018-08-23)

前言

Kubernetes提供了namesapce,用來做多租戶隔離乌逐,但是如果不配置網(wǎng)絡(luò)策略扔罪,namespace的隔離也僅僅是作用于在kubernetes編排調(diào)度時的隔離,實際上不同namespace下的pod還是可以相互串通的州刽。此時就需要使用Kubernetes提供的networkPolicy,用于隔離不同租戶的應(yīng)用并減少攻擊面。networkpolicy通過標(biāo)簽選擇器來模擬傳統(tǒng)的網(wǎng)絡(luò)物理隔離浪箭,并通過不同的策略完成訪問方向的管控穗椅。

環(huán)境

  • Kubernetes 1.10.2
  • Calico 3.1.0

步驟

calico 預(yù)先已部署完畢,參考官網(wǎng)即可奶栖,沒有特殊配置

(下述代碼中類似的均只寫一份)

  1. 創(chuàng)建兩個namespace: test1-ns test2-ns

    test1-ns.yml

apiVersion:v1
kind: Namespace
metadata:
  name: test1-ns
  labels:
    project: test1-ns
  1. 分別在兩個namespace下創(chuàng)建pod: test1.yml test2.yml

    test1.yml

    apiVersion: apps/v1beta1
    kind: Deployment
    metadata:
      name: test1
      namespace: test1-ns
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: test1
      template:
        metadata:
          name: test1
          labels:
            app: test1
            project: test1-ns
        spec:
          containers:
          - name: test1
            image: hub.xxxxxxxx.com.cn/private/caiyt/hello:1.0.0
            imagePullPolicy: IfNotPresent
            ports:
            - containerPort: 8080
    ---
    apiVersion: v1
    kind: Service
    metadata:
      name: test1
      namespace: test1-ns
    spec:
      selector:
        app: test1
      type: NodePort
      ports:
         - name: test1-http
         port: 8080
         targetPort: 8080
         nodePort: 30451
    
    
    
  1. 測試互訪


    互訪測試

    目前可以看到匹表,test1和test2是可以互相連通的

  2. 創(chuàng)建networkPolicy.yml

    apiVersion: networking.k8s.io/v1
    metadata:
      name: test
      namespace: test1-ns
    spec:
      podSelector:
        matchLabels:
          project: test1-ns
      ingress:
      - from:
        - namespaceSelector:
            matchLabels:
              project: test1-ns
    
  3. 測試聯(lián)通性


    添加策略后的互訪

因為針對test1的namespace做了策略限制,可見到由其他的命名空間中的pod無法訪問test1-ns中的pod,但是反向即可宣鄙。

  1. 外網(wǎng)訪問測試

    - ipBlock:
        cidr: 10.20.1.0/24
    

    添加calico所創(chuàng)建tunl0@NONE網(wǎng)段訪問策略后袍镀,外網(wǎng)訪問可成功


    外網(wǎng)訪問
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市冻晤,隨后出現(xiàn)的幾起案子苇羡,更是在濱河造成了極大的恐慌,老刑警劉巖鼻弧,帶你破解...
    沈念sama閱讀 206,839評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件宣虾,死亡現(xiàn)場離奇詭異,居然都是意外死亡温数,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,543評論 2 382
  • 文/潘曉璐 我一進店門蜻势,熙熙樓的掌柜王于貴愁眉苦臉地迎上來撑刺,“玉大人,你說我怎么就攤上這事握玛」话” “怎么了?”我有些...
    開封第一講書人閱讀 153,116評論 0 344
  • 文/不壞的土叔 我叫張陵挠铲,是天一觀的道長冕屯。 經(jīng)常有香客問我,道長拂苹,這世上最難降的妖魔是什么安聘? 我笑而不...
    開封第一講書人閱讀 55,371評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮鳖眼,結(jié)果婚禮上庄吼,老公的妹妹穿的比我還像新娘。我一直安慰自己话告,他們只是感情好念颈,可當(dāng)我...
    茶點故事閱讀 64,384評論 5 374
  • 文/花漫 我一把揭開白布泉粉。 她就那樣靜靜地躺著,像睡著了一般榴芳。 火紅的嫁衣襯著肌膚如雪嗡靡。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,111評論 1 285
  • 那天窟感,我揣著相機與錄音讨彼,去河邊找鬼。 笑死肌括,一個胖子當(dāng)著我的面吹牛点骑,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播谍夭,決...
    沈念sama閱讀 38,416評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼黑滴,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了紧索?” 一聲冷哼從身側(cè)響起袁辈,我...
    開封第一講書人閱讀 37,053評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎珠漂,沒想到半個月后晚缩,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,558評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡媳危,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,007評論 2 325
  • 正文 我和宋清朗相戀三年荞彼,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片待笑。...
    茶點故事閱讀 38,117評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡鸣皂,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出暮蹂,到底是詐尸還是另有隱情寞缝,我是刑警寧澤,帶...
    沈念sama閱讀 33,756評論 4 324
  • 正文 年R本政府宣布仰泻,位于F島的核電站荆陆,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏集侯。R本人自食惡果不足惜被啼,卻給世界環(huán)境...
    茶點故事閱讀 39,324評論 3 307
  • 文/蒙蒙 一帜消、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧趟据,春花似錦券犁、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,315評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至咳促,卻和暖如春稚新,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背跪腹。 一陣腳步聲響...
    開封第一講書人閱讀 31,539評論 1 262
  • 我被黑心中介騙來泰國打工褂删, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人冲茸。 一個月前我還...
    沈念sama閱讀 45,578評論 2 355
  • 正文 我出身青樓屯阀,卻偏偏與公主長得像,于是被迫代替她去往敵國和親轴术。 傳聞我的和親對象是個殘疾皇子难衰,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,877評論 2 345

推薦閱讀更多精彩內(nèi)容