自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

初探:如何使用簡單的方法使云計算連接到任何設(shè)備

云計算
在過去幾個月我已經(jīng)嘗試了 Weave 和 Docker,最近我想看看我是否可以使用我家里使用的樹莓派綁定我工作中操作的云平臺。理想的情況下,樹莓派根本不應(yīng)該綁定在我家,而是可以被用于任何我可以使用互聯(lián)網(wǎng)的地方。

Docker, Weave, 樹莓派(Raspberry Pi) 和 一些網(wǎng)絡(luò)云計算

在過去幾個月我已經(jīng)嘗試了 Weave 和 Docker,最近我想看看我是否可以使用我家里使用的樹莓派綁定我工作中操作的云平臺。理想的情況下,樹莓派根本不應(yīng)該綁定在我家,而是可以被用于任何我可以使用互聯(lián)網(wǎng)的地方。

網(wǎng)絡(luò)問題

網(wǎng)絡(luò)依然是目前的一個主要障礙。我們?nèi)绱肆?xí)慣于傳統(tǒng)網(wǎng)絡(luò)方法,以至于人們很難看到技術(shù)可以降低這些障礙。操作系統(tǒng)和網(wǎng)絡(luò)是達(dá)到目的的手段:所有的應(yīng)用程序。進(jìn)程隔離 --現(xiàn)代 UN*X Sun Solaris (zone)首創(chuàng),F(xiàn)reeBSD (jails)和 稍后的 OpenVZ / Linux-vserver -- 為 Docker 出現(xiàn)鋪平了道路,隨著內(nèi)核中 namespace/cgroups 的開發(fā) ,現(xiàn)在這已經(jīng)是一個相對成熟的技術(shù)。把 Weave 加入后,整個世界都將被顛覆。

我想要的是連接我云上的私人 dropbox-like 服務(wù)器(應(yīng)用程序 B)來連接我家里的 NAS 存儲解決方案(應(yīng)用程序 A)來使得所有文件可用以及從云中的另一個服務(wù)器提供一些額外的內(nèi)容的能力(應(yīng)用程序 C)。

安裝

為了證明這一點(diǎn),我開始在我的 Pi 上部署 Weave 并連接上我在 Interoute 虛擬數(shù)據(jù)中心設(shè)置的 Docker/Weave。 Interoute 有一個完整的網(wǎng)絡(luò) / IaaS 平臺,非常適合這些云區(qū)域之間私人互聯(lián)自動化類型的場景,并且是免費(fèi)的。

設(shè)置大概看起來像下圖:

 

通常你需要設(shè)置一些 IPSEC 或 SSL VPN 隧道來連接環(huán)境,但是涉及的煩人配置步驟只是為了得到一個私人互聯(lián)。幸運(yùn)地是云區(qū)域已經(jīng)在 3 層對互聯(lián)加密了。真正的問題開始于當(dāng)你需要把流量路由到遠(yuǎn)程主機(jī)或者是有多個網(wǎng)關(guān)直接連通公共和內(nèi)部網(wǎng)絡(luò)的時候(像在服務(wù)器 2)。甚至對我來說,我已經(jīng)專業(yè)于主機(jī)和網(wǎng)絡(luò)的業(yè)務(wù) 20 年之久,這意味著我必須在它上面思考和工作以確保正確設(shè)置路由。太浪費(fèi)時間并讓我非常的失望。

一個使用 Docker 和 Weave 的解決方案

Docker 允許創(chuàng)建微服務(wù)或者是成熟的 Linux 發(fā)行版運(yùn)行在容器中,這里有一個暴增的新興管理選項(xiàng)來大規(guī)模處理它們,但這次我不會討論它。

Weave 是一個為 Docker 容器多主機(jī)部署管理虛擬網(wǎng)絡(luò)的工具。在這里,我們主要使用 2 個主要特性;

把容器放到各種主機(jī)并把它們放到同一子網(wǎng)下面的能力(虛擬 2 層有效廣播域)

為 Docker 容器連接到 Weave 網(wǎng)絡(luò)的自動路徑發(fā)現(xiàn)

在設(shè)置完 weave 后,解決方案看起來像這樣:

 

在從服務(wù)器 1 到 服務(wù)器 3 的路徑發(fā)現(xiàn)上發(fā)生了一些神奇的事情:只要服務(wù)器之間至少有一條路徑,Weave 將自動轉(zhuǎn)發(fā)數(shù)據(jù)包。Weave 將從鄰居學(xué)習(xí) MAC 地址,從這個方式的數(shù)據(jù)包學(xué)習(xí)下一跳,詳情請看這里。

關(guān)于該設(shè)置的偉大之處在于我可以帶著我的 PI 到任何地方,只要我的網(wǎng)絡(luò)(有狀態(tài)的 outboud)允許開放 tcp/udp 的 6783 端口,它將一直連接到云設(shè)施。

組成

棘手的部分是在樹莓派上運(yùn)行 Docker 和 Weave,因?yàn)樗枰钚碌膬?nèi)核和使用戶正常能工作。經(jīng)過在 odroid-u3 的 Ubuntu, Arch Linux 和 樹莓派的 Raspbian 上做過幾次試驗(yàn)后,我解決了:

  • 樹莓派模型 B
  • Raspbian Wheezy 更新到 Jessie 和 3.16 內(nèi)核(我找不到一個合適的用于 Pi 的 Jessie 鏡像)
  • 當(dāng)更新的時候,最小的 8GB SD 卡不會耗盡空間,please make this the fastest you can find, you have been warned!
  • 一批云虛擬機(jī)運(yùn)行著 Debian Jessie(或者是任何你能運(yùn)行 docker+weave 的系統(tǒng))

設(shè)置樹莓派

下載 Raspbian Wheezy 并寫入你的 SD 卡
啟動后,Pi 改變了在 /etc/apt/sources.list 中所有從 Wheezy 到 Jessie 的引用并且運(yùn)行:

  1. sudo apt-get update 
  2. sudo apt-get -y upgrade 
  3. sudo apt-get -y dist-upgrade 

休息會,這將會花費(fèi)很長時間。確保偶爾的按 y,然后繼續(xù) sleeping(按 NO 來改變 dphys-swapfile,因?yàn)樗鼘?chuàng)建 1gb swapfile & raspbian 使用一個大部分未使用的 100MB swapfile 代替 )。

確保在 Pi 上安裝了 3.16 內(nèi)核,libpcap-dev, Mercurial, Docker (我們需要 docker 來構(gòu)建 Weave) 和 Go:

  1. sudo apt-get install linux-image-rpi 
  2. sudo apt-get install libpcap-dev 
  3. sudo apt-get install mercurial 
  4. sudo apt-get install golang-go 
  5. sudo apt-get install docker.io 

Jessie 使用 systemd,確保 Docker 正在運(yùn)行:

  1. sudo systemctl start docker 

現(xiàn)在改變 /boot/config.txt 來包含(在我的示例中是 vmlinuz-3.16.0.4-rpi):

  1. kernel=/boot/vmlinuz-<version>-rpi 

下載 Weave 源碼(根據(jù) Weave 文檔)并構(gòu)建它:

  1. $ cd ~ $ mkdir go 
  2. $ export GOPATH=~/go 
  3. $ export PATH=$PATH:$GOPATH/bin 
  4. $ cd $GOPATH 
  5. $ WEAVE=github.com/zettio/weave 
  6. $ git clone https://$WEAVE 
  7. $ cd src/$WEAVE 
  8. $ make 

使用 Docker 和 Weave 配置 3 臺服務(wù)器

在云服務(wù)器安裝 Docker:

  1. sudo -i 
  2. apt-get install docker.io 

安裝 Weave 腳本:

  1. wget -O /usr/local/bin/weave https://raw.githubusercontent. ... weave 
  2. chmod a+x /usr/local/bin/weave 

一旦所有的主機(jī)都運(yùn)行了 docker,在第一臺主機(jī)上這樣做:

  1. weave launch -password <mypassword> 

任何額外的主機(jī)通過運(yùn)行相同的命令加上一個已經(jīng)配置的主機(jī) IP 地址都可以被添加,像這樣:

  1. weave launch -password <mypassword> <ip address of first host or ANY existing weave host> 

僅僅要求防火墻配置允許 TCP 和 UDP 連接到 weave 主機(jī)的 6783 端口。

現(xiàn)在在樹莓派上運(yùn)行:

  1. weave run 10.0.1.1/24 -t -i --name ApplicationA resin/rpi-raspbian:jessie /bin/bash 

并且在云主機(jī)上運(yùn)行:

  1. weave run 10.0.1.2/24 -t -i --name ApplicationB ubuntu /bin/bash 
  2. weave run 10.0.1.3/24 -t -i --name ApplicationC ubuntu /bin/bash 

連接(attach )和測試:

  1. docker attach <name> 

當(dāng)你已經(jīng)連接到 vm,你可以 ping 在 10.0.1.0/24 網(wǎng)絡(luò)的其他主機(jī)。甚至在 server 3 的容器被連接到在 server 1 的容器,盡管他們直接沒有直接連接:所有流量都是自動通過 server 2 路由的!

在 Docker 中安裝實(shí)際的應(yīng)用程序(在我的案例中主要是 owncloud 和 samba),我把這個作為練習(xí)留給讀者,玩的愉快點(diǎn)!

故障排查

  • 我一路上遇到的問題是使用舊的內(nèi)核和其他的發(fā)行版(不影響最終的配置):
  • 由于缺少 libpcap,Arch Linux 不能編譯 weave,雖然 headers 存在。沒有耐心找出依賴項(xiàng)
  • 在 /usr/local/bin/weave 腳本中有一行為 bridge 設(shè)置 MTU,在老的內(nèi)核/驅(qū)動上是不支持的,你需要獲?。?/li>
    1. RTNETLINK:該操作不支持

 

  • 我修改了該腳本來在 bridge 開始創(chuàng)建的時候設(shè)置 MTU,因?yàn)槲业脑O(shè)置支持,但是后來遇到了其他問題。
  • 大部分發(fā)行版的內(nèi)核作為鏡像分發(fā)給 raspberry/arm 是不夠新的以至于不適合運(yùn)行 docker 或者是缺少 cgroups 內(nèi)核配置。我為 Raspbian 解決了這個問題,linux-image-rpi(目前是 linux-image-3.16.0.4-rpi)包。


想法/風(fēng)險

使用 weave ,你是潛在的橋接到安全域,這可能會影響你的安全策略
我沒有詳細(xì)看關(guān)于 Weave 使用 -password 選項(xiàng)實(shí)現(xiàn)安全的細(xì)節(jié)。沒有以一個整體對該設(shè)置的安全作評論。我將深入研究,并根據(jù)需要更新。
disclaimer:在 ARM 上,docker 不是官方支持的,有潛在的問題!

這只是一個實(shí)驗(yàn)設(shè)置(目前為止)。

本文出自:http://dockerone.com/article/56

責(zé)任編輯:Ophira
相關(guān)推薦

2011-07-28 17:32:21

2022-08-30 10:33:08

LinuxUSB系統(tǒng)

2009-08-27 11:41:31

ibmdwiphone

2020-03-30 11:31:25

云計算

2023-08-23 09:00:00

區(qū)塊鏈以太坊

2021-06-22 06:33:21

DeskreenLinux

2021-01-08 15:08:53

云計算小型企業(yè)數(shù)據(jù)

2010-02-06 14:19:09

ibmdwGoogle

2024-04-11 11:37:25

人工智能機(jī)器學(xué)習(xí)自動化流程

2011-05-25 17:06:57

ibmdw云計算

2022-02-23 18:19:13

物聯(lián)網(wǎng)網(wǎng)關(guān)物聯(lián)網(wǎng)

2020-07-29 10:41:13

云計算SaaS云平臺

2020-06-01 08:43:23

機(jī)器學(xué)習(xí)函數(shù)模型

2024-04-02 11:31:33

USBAndroid

2009-08-27 11:22:30

ibmdw云計算

2022-10-21 13:41:07

云計算分布式云

2020-12-29 14:42:20

云計算5GIT

2020-01-17 10:34:31

云計算ERP現(xiàn)代化

2018-05-28 10:29:13

云計算

2015-07-30 09:42:35

云計算云服務(wù)iBM
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號