jvm_虚拟机概念
1. 所謂虛擬機,就是一臺虛擬的機器,他是一款軟件,用來執(zhí)行一系列虛擬計算機指令,虛擬機我們可以分為兩大塊,一個叫系統(tǒng)虛擬機,還有一大塊是程序虛擬機,系統(tǒng)虛擬機是什么概念呢,程序虛擬機又是什么概念呢,比如系統(tǒng)虛擬機,比如大名鼎鼎的Visual Box, Vmare這兩款都是咱們比較主流的系統(tǒng)級虛擬機, VBox可能用的少,但是Vmare我現(xiàn)在就在用,你去阿里買它的云服務,它不是一個真正的物理機,都是虛擬化出來的,它不是真正的物理機他后端掛了一堆物理機,他前端給你的是虛擬化出來的,我要買個4核的CPU,配置16G內存,2T的固態(tài)硬盤,還有帶寬,你買這些東西,根據(jù)你自己的需要去買,我想買4核就買4核,想買8核就買8核,內存我想買16G就買16G的,甚至64G的這些東西都是根據(jù)客戶需求動態(tài)的調整的,我買你的服務都是動態(tài)去調整,你想想物理節(jié)點能行嗎,物理節(jié)點內存固定的,你CPU4核再加4核,不可能能加上,把CPU拆開,內存16G的現(xiàn)在想換32G的,你把電腦拆開,再加內存,也就是我們開源的廠商,開源的廠商有這種開源的框架,比較流行的就是openstacks,kvm虛擬化的方向,收費的就是vmare可能你用的是個人版的,自己玩的Vmare,當然商用的肯定是特別穩(wěn)定,這是基于系統(tǒng)級別的虛擬化,我們可以通過簡單的配置去把多個服務器,我們可以簡單的通過一些配置,就相當于配置一些參數(shù),這個就是一個虛擬化的一個產(chǎn)品,虛擬1G內存,單核處理器,20G的硬盤,網(wǎng)絡適配器模式可以選橋接模式,Vmare一共有幾種模式橋接模式什么概念,我的虛擬機和本地,我們兩個肯定是在同一個網(wǎng)段,網(wǎng)關也好,DNS也好,肯定都是一致的,只不過是我們兩個的IP不一樣,但是網(wǎng)段肯定是在一個網(wǎng)段的,這樣我們就可以通過本地區(qū)訪問遠程的,我的虛擬機,并且橋模式的打開的還是那塊網(wǎng)卡,一般使用橋接或者 host-only,如果使用 NAT,根據(jù)不同的模式選擇不同的連接方式,底層的通信是不一樣的, hostonly表示虛擬機可以和本地拼通,虛擬的4個是沒有網(wǎng)絡的,不能訪問外網(wǎng),
也就是hostonly僅主機,僅僅虛擬機之間能夠連接通,跟我自己的主機主節(jié)點也能連通,但是主機能訪問了無所謂,hostonly就是虛擬化出來的不能訪問外網(wǎng),還有一種模式叫NAT,用于共享主機的IP地址, NAT網(wǎng)絡地址轉換Network Address Translation,主機可以訪問虛擬機,舉個場景吧,比如說靜態(tài)ip 192.168.1.*,比如在家里做一個集群,我舉個例子比如家里的ip是 192.168.1.100,可能一開始橋接的模式,本地是windows,===>192.168.1.21/22/23 三個節(jié)點,來一個zookeeper集群,總之是一個集群,21,22,23三個節(jié)點,相互之間能夠訪問并且外網(wǎng)訪問,然后本機也可以和虛擬機連通,這回我又去公司了,假如我們公司提供的不是1網(wǎng)段的,比如192.168.2.85 網(wǎng)段的,比如說在公司,好不容易昨天網(wǎng)上搭建環(huán)境做了一個實驗,搭建好了一個集群,上班的時候就像用一個集群去做壓力測試,學習API看一下,你原先1網(wǎng)段的東西,和你現(xiàn)在2網(wǎng)段的東西肯定連不上了,因為你之前的橋接模式是連不上的,這個時候你就需要我們的NAT模式,網(wǎng)絡轉換的模式,你要配置vmnet8這塊網(wǎng)卡,才能用21,22,23,然后虛擬機需要選擇NAT模式才行,也就實現(xiàn)虛擬機,在家里部署一次,然后到公司是2網(wǎng)段了,我只需要用NAT模式就行了,虛擬網(wǎng)絡編輯器,發(fā)現(xiàn)默認提供三種方式,wmnet0是橋接,vmnet1是hostonly,vmnet8是NAT模式的,net0是橋,但是在這之前有幾個事在這里要設置,首先子網(wǎng)IP是什么意思,是在你自己虛擬網(wǎng)絡上的IP,比如你都是119網(wǎng)段的,我的虛擬機都是119.1,119.2,119.3,你規(guī)劃一下你的子網(wǎng)是什么,如果你虛擬機已經(jīng)配好了,網(wǎng)關應該是和你搭建好的虛擬機一致的,我網(wǎng)關是2的話,你所有的虛擬節(jié)點,將本地的IP地址分配給虛擬機,我想分配多少個,這個你自己去設,你可接受的IP是有限的,比如你的機器想換nat模式的話
剛才我們扯的都是系統(tǒng)虛擬機,現(xiàn)在我們來扯一下程序虛擬機,最典型的就是JAVA虛擬機,就是JVM,一個是面向操作系統(tǒng)的,一個是面向程序的,我們很多這種腳本的語言,python,ruby,其他的groovy一堆,都可以往JVM上扔,包括JVM可以跨平臺,我在其他的平臺上都可以去跑,在JAVA虛擬機中執(zhí)行的指令就是我們成為JAVA字節(jié)碼指令,無論是系統(tǒng)虛擬機還是程序虛擬機,在上面運行的軟件都被限制于虛擬機提供的資源中,當今的JAVA已經(jīng)有很多的虛擬機,當然JAVA虛擬機也有很多款,比較古老的就是SUN出品的,你可以通過 java -version 命令可以查看到都是 HotSpot 的虛擬機現(xiàn)在都是這種,HotSpot都被Oracle收入旗下,大有整合的趨勢,還有BEA的Rocket.Oracle現(xiàn)在就是干整合這個事
?
總結
- 上一篇: Github Pages 搭建网站
- 下一篇: jvm_虚拟机组成部分概述