系統綜合實踐第一次做業

(1)課程調查

進入大三下學期的後半段,大學階段的理論課程應該已經修得八九不離十了,在這個時間點迎來系統綜合實踐這門課,做爲培養計劃的一門新課程,咱們很是但願瞭解大家對於課程的但願,請寫下你對這門課的認識和你理想中的這門課程是怎麼樣的。

上學期上軟工的時候老師好像有說到這門課,據說好像也是作軟件開發,不過這們課學分比較多,會進行完整的α,β衝刺。但願這門課能教會咱們一些有用的技能,幫助咱們之後的就業。linux

(2)瞭解微服務

第一次做業咱們將接觸一種新型的軟件架構——微服務(也許部分同窗已經有所瞭解)。你們要作的是學習並瞭解該技術,微服務是什麼,有什麼特色,相較於傳統的軟件架構,它有什麼優缺點,它是怎樣部署的。

  • 定義
    微服務是SOA架構下的最終產物,該架構的設計目標是爲了肢解業務,使得服務可以獨立運行。微服務設計原則:一、各司其職 二、服務高可用和可擴展性。
  • 相對於傳統軟件的優勢:
    提高開發交流,每一個服務足夠內聚,足夠小,代碼容易理解;服務獨立測試、部署、升級、發佈;按需定製的DFX,資源利用率,每一個服務能夠各自進行x擴展和z擴展,並且,每一個服務能夠根據本身的須要部署到合適的硬件服務器上;每一個服務按須要選擇HA的模式,選擇接受服務的實例個數;容易擴大開發團隊,能夠針對每一個服務(service)組件開發團隊;提升容錯性(fault isolation),一個服務的內存泄露並不會讓整個系統癱瘓;新技術的應用,系統不會被長期限制在某個技術棧上;
  • 相對於傳統軟件的缺點
    沒有銀彈(能夠有效提升開發效率同時避免軟件重大缺陷的方法),微服務提升了系統的複雜度;開發人員要處理分佈式系統的複雜性;服務之間的分佈式通訊問題;服務的註冊與發現問題;服務之間的分佈式事務問題;數據隔離再來的報表處理問題;服務之間的分佈式一致性問題;服務管理的複雜性,服務的編排;不一樣服務實例的管理。
  • 微服務的部署
    微服務架構的應用系統包含若干個微服務每一個微服務部署多個實例經過自動部署與運維工具實現部署自動化

(3)學習docker技術

docker做爲微服務的一種十分典型的表明技術,咱們要作的是:

  • 學習瞭解docker的相關概念(容器、鏡像等),瞭解docker、docker compose、Dockerfile、docker machine、Swarm、k8s是什麼,是作什麼用的,心中有概念便可;
  • 搭建你本身的docker環境,系統環境不限(主流的有Ubuntu/CentOS/Debian/Windows/MacOS等),完成docker的基本入門,包括但不限於:容器的建立、刪除、更新和查詢,建立並維護本身的鏡像倉庫,實現拉取和上傳鏡像等。

Ubuntu 18.04 安裝 Docker-ce

1.更換國內軟件源,推薦中國科技大學的源,穩定速度快(可選)

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo sed -i 's/archive.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list
sudo apt update
2.安裝須要的包

sudo apt install apt-transport-https ca-certificates software-properties-common curl
3.添加 GPG 密鑰,並添加 Docker-ce 軟件源,這裏仍是以中國科技大學的 Docker-ce 源爲例

curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu \
$(lsb_release -cs) stable"
4.添加成功後更新軟件包緩存

sudo apt update
5.安裝 Docker-ce

sudo apt install docker-ce
6.設置開機自啓動並啓動 Docker-ce(安裝成功後默認已設置並啓動,可忽略)

sudo systemctl enable docker
sudo systemctl start docker
7.測試運行

sudo docker run hello-world

容器的建立、刪除、更新和查詢

使用 ubuntu 鏡像啓動一個容器,參數爲以命令行模式進入該容器,接着退出容器

查詢容器

刪除容器

啓動一個已中止的容器

導出容器
docker

建立並維護本身的鏡像倉庫,實現拉取和上傳鏡像

建立鏡像倉庫

拉取和上傳鏡像


ubuntu

相關文章
相關標籤/搜索