kubernetes學習筆記 (一):搭建本地k8s開發環境

k8s是什麼

Kubernets是繼大數據、雲計算和Docker後的一種熱門的容器編排技術,是Google在2014年發佈的開源項目。同類的技術有Docker官方的Swarm。git

k8s與swarm相比較更加成熟、完善,但學習成本也更高。github

爲何學習k8s

  1. 本人從事遊戲行業,服務端開發,使用過Node、Go語言。最先一直用開源框架進行開發,最終都沒有找到一個很是滿意的開發框架。後來和同事使用Docker和消息隊列作了本身的簡單開發框架(本身公司用),服務發現、持續集成、簡單自動化、灰度發佈等等。直到我看到了K8s才發現,我作的那些都已經被k8s作了,並且作的比咱們好一萬倍。
  2. 新技術意味着新的市場和新的需求,初期掌握這種技術的人不是不少,物以稀爲貴,對本身來講是個可貴的提高機會。
  3. k8s比較萬金油或者說編程思想是同樣的?無論是遊戲行業仍是其餘,大多數系統均可以使用k8s輕鬆構建和管理一個很複雜的系統

個人目標

  1. 徹底掌握k8s的各類用法,並利用空閒時間對我負責的遊戲項目進行重構。
  2. 完成1過程當中的學習筆記。
  3. 找到兼容團隊多語言開發的辦法。
  4. 完成一個面向中小型遊戲的快速開發框架,讓開發者輕鬆開發、輕鬆運維,輕鬆發版本。

先跑起來

官網的文檔寫的很好,按照指示一步一步作就行了 官方文檔docker

若是你只是打算搭建本地k8s環境實驗一下,我推薦下面的作法:編程

  1. 從Docker官方網站下載並安裝edge版本,必定是edge版本哦,我使用的是18.05api

  2. Docker -> Preferences ... 中,配置 registry mirror 爲 https://registry.docker-cn.com,點擊apply 等待docker從新啓動瀏覽器

  3. 講道理,你這時候能夠直接經過Docker -> Preferences -> Kubernetes -> Enable Kubernetes 安裝並啓動k8s locally。可是因爲網絡緣由,很難成功。若是你成功了,就不用往下看了。網絡

  4. git clone https://github.com/denverdino/k8s-for-docker-desktop 下載阿里雲提供的國內版本app

  5. cd k8s-for-docker-desktop 若是你下載的docker是18.03版本 git checkout 18.03框架

  6. ./load_images.sh 執行腳本加載鏡像運維

  7. 在Docker中開啓 Kubernetes,等待以下消息 Kubernetes is running

  8. kubectl config use-context docker-for-desktop 切換Kubernetes context 配置

  9. kubectl cluster-info 驗證安裝

  10. kubectl create -f https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml 部署 Kubernetes 控制檯

  11. kubectl proxy Api Server開啓本地監聽, 在瀏覽器中輸入http://localhost:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/#!/overview?namespace=default 就能夠看到k8s控制面板啦!

相關文章
相關標籤/搜索