您好,登錄后才能下訂單哦!
1. 大數據和Hadoop
研究學習大數據,自然要從Hadoop開始。 Hadoop不是一個簡單的軟件,而是有一些列軟件形成的生態,其核心思想來自Google當初發布的三篇論文,后來做了開源的實現, 谷歌的實現和Hadoop的實現大致可以做這樣的對應:
Google Map/Reduce <---> Hadoop MapReduce Google GFS <---> Hadoop HDFS Google BigTable <---> Hadoop HBase
Hadoop生態的所有組成部分,都是跑在linux環境下的,自然我們首先需要搭建linux環境。另外Hadoop之所以能處理“大”數據,是因為其分布式的特性,可以利用分布式計算構建服務器集群,并可根據需要擴展。為了學習,我們先在本地計算機上利用虛擬機搭建linux環境,要模型集群環境,就多創建幾個虛擬機就可以了。
為了玩兒這套東西,因為要創建幾個虛擬機,所以的你的電腦內存最好不小于8G,因為跑Hadoop一般一個虛擬機需要2G,隨便開3臺虛擬機就占不少內存了。 不過前期為了學習,我先只給每臺虛擬機分配1G內存,后面不夠了在調整就行了。
2. 為什么選VirtualBox?
提起虛擬機,自然首先想到的就是大名鼎鼎的VMware。 VMware是老牌虛擬機軟件,網上教程也很多。我之所以選用VirtualBox,主要是因為license的問題。 我手頭只有一臺MacBook pro, 不想話太多時間在軟件license上折騰,所以選擇了免費的VirtualBox. VirtualBox的安裝過程乏善可陳,就是常規操作,不說了。
3. 虛擬機中安裝CentOS
前面提到,我的主力計算機是一臺MacBook Pro. 之前為方面,利用Parallel Desktop虛擬了一臺Windows 出來,這里不提。
linux系統我選擇了CentOS,首先從CentOS官網下載系統的ISO文件。在VirtualBox里新建一個虛擬機,類型選Linux,版本隨便選一個就行了,因為里面沒有看到有CentOS,不過隨便選一個也沒問題。 注意最好選一下文件夾,也就是虛擬機文件存放的位置,因為隨著裝的東西越來越多,虛擬機文件可能會越來越大。我的電腦硬盤都快撐滿了,所以掛了個外接硬盤,把虛擬機文件放在了外接硬盤上,需要時插上用,雖然不方便,但也只好將就了。
其他參數可以都按默認,虛擬機創建成功后,點設置,切換到存儲,在光驅那里選擇下載的CentOS系統的ISO文件,這樣虛擬機啟動后就可以進入CentOS的安裝了。
安裝CentOS7 操作系統也不說了,都是圖形化界面,沒什么難度。
4. 網絡環境配置遇到的坑
Linux安裝成功后的網絡設置這里需要說一下,我在這上面踩了不少坑。我希望我的網絡環境是這樣的。首先我們希望Linux虛擬機能夠連接互聯網,這樣以后需要下載什么組件時能方便些。其次希望能用Host機器也就是MacBook中訪問到Linux虛擬機,以便ssh登錄上去。VirtualBox默認的小窗口實在很小,看著眼花,雖然也可以調大,但畢竟在宿主下操作更方便些,所以還是需要從MacBook上ssh過去。但是請注意,CentOS剛剛安裝完成后是不能聯網的,還需要做相關的設置才行。
4.1 Linux虛擬機連接互聯網
虛擬機的網絡設置默認可選用“網絡地址轉換NAT” ,虛擬機會創建一個NAT網絡。
虛擬機安裝后默認沒有開啟網絡,所以不能聯網,需要啟動虛擬機,登錄后更改網絡配置。
vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
把ONBOOT修改為yes,以便讓linux 啟動后即啟動網絡。 更改后按ESC,然后 :wq 退出保存。可以不用重啟,通過下面的命令重啟網絡服務,以便使更改生效。
systemctl restart network
這時候可以通過命令 ``` ip addr``` 查看,你會看到網絡已經有了一個IP地址,比如我的是 10.0.2.15。如圖:
現在你如果 ping www.baidu.com
,應該發現已經能夠聯網了。
4.2 從宿主機Macbook訪問Linux虛擬機
另外,但從主機Macbook還是不能ping通這個地址,就是說主機還不能訪問虛擬機。要讓主機MacBook和虛擬機linux互通,就需要讓這兩個機器在同一個網段里。 VirtualBox里的“管理”菜單下,打開“主機網絡管理器”,創建一個,如圖,可以看到創建了一個192.168.56.1的虛擬網卡。
這時候如果你在MacBook的終端中使用ifconfig命令查看,你會發現,多出來一個vboxnet0的網卡,ip地址就是192.168.56.1
danieldu@daniels-MacBook-Pro-857 ~ ifconfig lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384 options=1203<RXCSUM,TXCSUM,TXSTATUS,SW_TIMESTAMP> inet 127.0.0.1 netmask 0xff000000 inet6 ::1 prefixlen 128 inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1 nd6 options=201<PERFORMNUD,DAD> gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280 stf0: flags=0<> mtu 1280 en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500 ether ac:bc:32:c1:ed:dd inet6 fe80::1c82:47a:64f:460f%en0 prefixlen 64 secured scopeid 0x4 inet 192.168.31.46 netmask 0xffffff00 broadcast 192.168.31.255 nd6 options=201<PERFORMNUD,DAD> media: autoselect status: active ....
vboxnet0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500 ether 0a:00:27:00:00:00 inet 192.168.56.1 netmask 0xffffff00 broadcast 192.168.56.255 utun1: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380 inet6 fe80::f655:9c6f:ca10:240e%utun1 prefixlen 64 scopeid 0xc nd6 options=201<PERFORMNUD,DAD>
...
然后需要VirtualBox中對應的虛擬機設置中,增加一個網卡2. 選擇“僅主機(Host-Only)網絡”,界面名稱就是之前看到的vboxnet0.
然后登錄到虛擬機, 利用“ip addr” 命令查看,你會發現多出來一個網卡enp0s8。 從enp0s3 復制一個,然后編輯這個文件,這次更改為固定IP地址。
cp /etc/sysconfig/network-scripts/ifcfg-enp0s3/etc/sysconfig/network-scripts/ifconfig-enp0s8
然后 重啟網絡 "systemctl restart network". 這時候就可以從主機Macbook 訪問虛擬機了。
4.3關閉Linux防火墻
從上面的設置看到, 主機MacBook 的IP是 192.168.56.1, 虛擬機Linux設置了靜態地址為 192.168.56.100. 現在已經在一個網段內了,應該內ping通。如果你ping不通,那很可能是防火墻的問題。 首先MacBook要關閉防火墻。
然后確保虛擬機Linux的也關閉防火墻,默認防火墻是開著的。
檢查一下ssh服務,默認應該是開著的
你現在應該能從mac的終端通過ssh登錄到linux了。
總結
以上所述是小編給大家介紹的在Mac上利用VirtualBox搭建本地虛擬機環境的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。