4_ESXi_安裝_OracleLinux_匯出到另一台_ESXi

Download Report

Transcript 4_ESXi_安裝_OracleLinux_匯出到另一台_ESXi

ESXi安裝Oracle Linux
阿晃
教學影片:
http://youtu.be/TDHMepxec3w?hd=1
• 兩台ESXi 各安裝Oracle Linux
– 或者,先裝一台,匯出為.ova後,再匯入另一台改
ip…
vSphere Client Login ESXi
• ESXi5-01.abc.com > New Virtual Machine >
• 硬體設定 > Custom
• Name: HA-node
• (guest os oracle linux)Storage: datastore1 (50GB hd)
•
•
•
•
若以後.ova可能匯出到ESXi4(or prev),選7,現在當然選8
Guest OS: Linux> Oracle Linux 4/5/6 (32-bit)
CPUs: 1 virtual socket, 4 cores/virtual socket
Memory: 2GB
• 4張網卡(因有4個switch所以guest os可以插4張網卡,先全部
接在 Service01)
– 因即便現在照S01 S02 DR01 DR02 順序接,linux灌好後也不
一定會照這順序配對,so灌好後再調整
• Adapter類型全部選VMXNET3 (後續裝vmware tools後可讓網
路最佳化)
• SCSI Controller: 改選VMware Paravirtual(RHEL6可用,提高CPU效能)
– 熊信彰6-11,詳見:http://www.vmware.com/pdf/vsp_4_pvscsi_perf.pdf
• vm guest os virtual disk: Create a new virtual disk
• Create a Disk
– Disk size: 10GB(若要裝vmtools,要切20GB,/切10GB)
– Disk Provisioning: Thick provision lazy zoroed (預先全部配置所有virtual disk(10gb)給vm,但不事
先zero out(zero out就是把未佔有data的disk space全部erase掉,然後全部寫0,”聽說”效能會較
好,但有一些顧忌…下一個eager就是,沒用過,不知道)
– Location: 不用改
• Advanced Options
– Virtual Device Node: SCSI (4個devices, 15 IDs/per device > 即可以有15個 partitions)
– Mode: 不需勾Independent, 若勾
•
•
Persistent: 建 Snapshot 無效,無法還原
Nonpersistent: 所有設定只有開機過程有效,關機一律恢復原狀=裝還原卡
•  Finish
HA-Active-Node > 右click > Edit Settings
• 刪Floppy
• 掛載datastore1中的OracleLinux.iso
– 注意,此時linux的Host是ESXi,Linux看不到Win7中的iso
– CD/DVD > Datastore ISO File > Browse > datastore1 >
OracleLinux.iso (檔名當然不是這樣)
– 記得要勾: Connect at power on
最後vm propertities長這樣
HA-Active-Node > Open Console > Power on
• 建議灌英文版
• 若沒有mouse cursor,或mouse抖動
–請切成全螢幕(Console:Ctrl+Alt+enter)
• 離開vm window再進來,灌好前mouse不要離開vm
window
• Create Custom Layout
–
–
–
–
/boot 200MB
/ 15000MB
SWAP 2048MB
/data Fill to maximum allowable size (即為2.9GB)
或手動給3GB左右即可.
– 就不切/home了 (在apache ha中不需要/home切獨立partition)
• 安裝為 “Desktop”需求 > Next
灌好後
• 解析度調高一點,螢幕保護,電源…
1.) 設定網路
• 拿掉密碼
關掉NetworkManager, iptables
– service NetworkManager stop
• 要先停,不然待會兒 /etc/resolv.conf會白改
– chkconfig NetworkManager off
若沒有停NM,某些情況改好的設定,又會被NM強制改回
來
– chkconfig iptables off
• 關掉selinux
– sed -i ‘s,enforcing,disabled,g’ /etc/sysconfig/selinux
or
vim /etc/sysconfig/selinux
enforcing改為disabled
先設第一張網卡
(Service網卡,接NAT)
Ifcfg-eth0
DEVICE=eth0
HWADDR=xx:xx:…
ONBOOT=yes
IPADDR=10.10.88.101
NETMASK=255.255.255.0
/etc/sysconfig/network
NETWORK=yes
HOSTNAME=ha-node.abc.com
GATEWAY=10.10.88.254
/etc/resolv.conf
search abc.com
nameserver 120.125.190.3
nameserver 168.95.1.1
/etc/hosts
10.10.88.101 ha-node.abc.com
reboot  win7 ping ha-node.abc.com
只設一張網卡,是因為OracleLinux 基本設定做完後,要匯出給cluster第
二台(standby node)來改.
2.) 修改yum設定檔?
/etc/yum.repos.d/public-yum-ol6.repo
• 不需要,因為台灣並沒有 oracle linux yum
repo的 mirror site
• yum -y install PackageName
• yum search PackageName
3.) 無法yum下載安裝 cluster packages?
• 因為原來的套件庫中,並沒有
– drbd
– heartbeat
– 也沒有 phpmyadmin
• 擴充yum套件前: yum search drbd heartbeat phpmyadmin
•
找不到(第一次search 會做某些更新, 在oracle linux會回應pacemaker含
hb套件,但centos找不到)
• 以rpm擴充yum套件數量
– 安裝RPMforge, ELRepo, EPEL套件庫(我已下載回來)
rpm -Uvh http://mylady.tw/public/ha/rpm/三個rpm檔
rpm -Uvh http://mylady.tw/public/ha/rpm/rpmforge-release-0.5.2-2.el6.rf.i686.rpm
rpm -Uvh http://mylady.tw/public/ha/rpm/elrepo-release-6-4.el6.elrepo.noarch.rpm
rpm -Uvh http://mylady.tw/public/ha/rpm/epel-release-6-5.noarch.rpm
 再 yum search drbd heartbeat phpmyadmin
 找到了
4.) 安裝ha cluster需要的套件
• yum -y install
– gcc
– drbd83-utils kmod-drbd83
– heartbeat heartbeat-devel heartbeat-libs
• 若不能yum
– ps -aux | grep yum
把前一個yum kill掉
• 若還是找不到drbd package,我已抓回來,安裝如
下:
rpm -Uvh http://mylady.tw/public/ha/rpm_drbd/drbd83-utils-8.3.15-1.el6.elrepo.i686.rpm
rpm -Uvh http://mylady.tw/public/ha/rpm_drbd/kmod-drbd83-8.3.12-2.el6.elrepo.i686.rpm
5.) umount /data
• df
• 因後續/data (apache的/var/www/html改成
/data)
– 由drbd管理
– 不是由/etc/fstab管理
– 也就是HA node roll為primary時,才會mount
/data
• umount /data
• 把/etc/fstab中/data打#註解掉
6.) 安裝vmware tools
• 要先安裝:
– yum -y install gcc
– yum -y install kernel-uek-devel-`uname -r`
不然 vmtools安裝過程,會找不到應有的路徑
• 要先把光碟機內的 OracleLinux.iso 先umount掉 (df 找一下很像光碟那
個device)
– umount /dev/sr0
• ESXi console VM  Guest 
Install/Upgrade Vmware Tools
– 再df就看到VMware tools了
• cd /media/VM(tab)
• rp -rf /tmp/*; cp /media/VM(tab)/* /tmp/.
(因為/media/VM(tab)是唯讀的)
• cd /tmp; tar -xvz -f *.tar.gz; cd vmware-tools-distrib
• ./vmware-install.sh
– 按enter到底  reboot 即可用
7.) 記錄70-persistent-net.rules中4張
網卡的mac
• 記錄eth0~eth3的mac
– Liunx 關機
– 調整vm與vSwitch的對應
8.)調整vm與vSwitch的對應
• Linux上的
– eth0應接到Service01 vSwitch
– eth1應接到Service02 vSwitch
– eth2應接到DRBD-Heartbeat01 vSwitch
– eth3應接到DRBD-Heartbeat01 vSwitch
• VM console  VM  Edit Settings  Hardware
最後應調整成這樣
(你的可能跟我的不一樣)  調完後, reboot
9.) 網卡bonding
• eth0+eth1  bond0 for client Service
– bond0: 10.10.88.101
(原eth0 ip 給 bond0用)
• eth1+eth2  bond1 for DRBD & Heartbeat
– bond1: 192.168.88.101
#ifcfg-bond0
DEVICE=bond0
ONBOOT=yes
IPADDR=10.10.88.101
NETMASK=255.255.255.0
#ifcfg-eth0
DEVICE=eth0
#(不要給mac)HWADDR=沒有此行
ONBOOT=yes
MASTER=bond0
SLAVE=yes
#ifcfg-eth1
DEVICE=eth1
#/etc/resolv.conf
nameserver 168.95.1.1
# 南亞校內請用 120.125.190.3
#(不要給mac)HWADDR=沒有此行
ONBOOT=yes
MASTER=bond0
SLAVE=yes
/etc/sysconfig/network
NETWORKING=yes
GATEWAY=10.10.88.254
#/etc/modprobe.d/bonding.conf
alias bond0 bonding
options bond0 miimon=100 mode=6
alias bond1 bonding
options bond1 miimon=100 mode=6
# miimon: 偵測對方網卡是否還活著的時
間(100毫秒)
lsmod | grep bonding  沒有載入 bonding module存檔後  reboot  lsmod | grep bonding
#ifcfg-bond1
DEVICE=bond1
ONBOOT=yes
IPADDR=192.168.88.101
NETMASK=255.255.255.0
#ifcfg-eth2
DEVICE=eth2
#(不要給mac)HWADDR=沒有此行
ONBOOT=yes
MASTER=bond1
SLAVE=yes
#ifcfg-eth3
DEVICE=eth3
#/etc/modprobe.d/bonding.conf
alias bond0 bonding
options bond0 miimon=100 mode=6
alias bond1 bonding
options bond1 miimon=100 mode=6
# miimon: 偵測對方網卡是否還活
著的時間(100毫秒)
#(不要給mac)HWADDR=沒有此行
ONBOOT=yes
MASTER=bond1
SLAVE=yes
lsmod | grep bonding  沒有載入 bonding module存檔後  reboot  lsmod | grep bonding
bonding完後,若有某ethX或bondX出現:Some
other host already uses address...
• 啊?該ip被用掉了 換ip也沒用啦,這在ESXi
中很常見,解法如下.
若是bond1網卡出現此error:
• 把ifcfg-eth2 & ifcfg-eth3 & ifcfg-bond1 都刪掉
• halt
• 到vShpere Client中對此linux vm > right click >
Edit settings > 剛對應DRBD兩張網卡都刪掉 >
Close > 再 進來Edit settings > 再新增兩張網卡
分別對應到DRBD-Heartbeat01 & DRBDHeartbeat02 (待會兒開機進去linux後,還是要先
核對一下eth2&eth3 mac 是不是對應到DR…01
& DR…02)
• 重建ifcfg-eth2 & ifcfg-eth3 & ifcfg-bond1
• 重啟網路 就全通了
bonding: mode 6,當SLAVEs都正常時,
傳送跟接收都可以分散至所有SLAVE 網卡
•
•
模式 5,自動調整傳輸負載平衡 (Adaptive transmit load balancing, balance-tlb):
從字面上的意思來看,這種模式主要就是針對『傳送』合併頻寬所設計的,但是接收恐怕就沒有辦
法做到合併頻寬了。這種模式得要分傳送與接收來說明。 在傳送方面,這種模式會將封包分散在各
個可用的 bonding 網卡上送出,因此傳送才能夠達到合併頻寬。不過在接收封包時,由於考慮到
switch 的 MAC 記憶能力,因此僅有一個網卡的 MAC 會被紀錄於 switch 上頭,簡單的說,就是僅有
一張網卡會用於接收!除非該接收網卡掛點, 否則其他網卡不會被用在接收上。
因為一般伺服器就是服務提供者,主要負責餵資料給用戶,至於接收部分,又由於 switch 僅要負責
一張網卡的 MAC 記憶,伺服器透過 switch 接收是相對穩定的。所以這種模式也很適合於服務提供
者的角度上。但如果考慮到區域網路的雙向溝通,這種模式總覺得好像缺少了些什麼的感覺~
•
•
模式 6,自動調整全負載平衡 (Adaptive load balancing, balance-alb):
這個模式包括了模式 5,除了傳送可以合併頻寬之外,連接收也可以合併頻寬了。當伺服器要傳資
料出去給用戶端時,bonding 模組會主動的攔截封包, 並透過 ARP 協商機制 (ARP 就是透過 IP 去找
出 MAC 的通訊協定),將不同的網卡要送出到同一個用戶端的封包,都改寫成單一一個固定的發送
端 MAC 位址, 如此一來,發送有合併頻寬的功能了,但接收卻還是只有一個 MAC 而已對吧?那怎
麼說接收有合併頻寬的負載平衡機制呢?
原因是這樣的:當有資料封包要送出到多個不同的用戶端時,此模式的 bonding 模組就會透過 ARP
協商機制,找出 bonding 管理的比較閒置的網卡 MAC 分配給下個用戶端,如此一來,不同的用戶端
回傳給伺服器的資料,就可以透過不同的網卡來接收,就能達到接收也合併頻寬的功能了。
這個模式不需要特別的 switch 支援,而且設定簡單,可以在接收、傳送都達成合併頻寬的能力,且
也具有基本的網路容錯功能, 是目前鳥哥最愛使用的 bonding 模式啦!
10.) 將vm匯出為.ova
11.) 再安裝一台ESXi:
ESXi5-02.abc.com
• .vmx 最後補上 …backdoor = “True”
• 改ip, hostname
• vSphere client
– dns & routing, time, license
– 改vmnic0 名稱: Service01
– 新增三台vSwitch
• vmnic1 網卡接Service02 vSwitch
• vmnic2 網卡接DRBD-Heartbeat01 vSwitch
• vmnic1 網卡接DRBD-Heartbeat02 vSwitch
12 )把第一台ESXi的OracleLinux的.ova
匯入第二台ESXi
• 開機後,改 bond0 & bond1 ip