banner

[Rule] Rules  [Home] Main Forum  [Portal] Portal  
[Members] Member Listing  [Statistics] Statistics  [Search] Search  [Reading Room] Reading Room 
[Register] Register  
[Login] Loginhttp  | https  ]
 
Forum Index Thảo luận hệ điều hành *nix Cài đặt và thiết lập OpenVZ trên Debian Squeeze x64  XML
  [Article]   Cài đặt và thiết lập OpenVZ trên Debian Squeeze x64 16/02/2011 19:13:35 (+0700) | #1 | 231193
[Avatar]
No. 47
Member

[Minus]    0    [Plus]
Joined: 26/08/2009 02:44:01
Messages: 32
Location: ••••••••••
Offline
[Profile] [PM]
Trong bài viết sau tôi sẽ hướng dẫn bạn cài đặt và thiết lập OpenVZ trên Debian Squeeze x64.
Trước tiên, tôi xin giới thiệu sơ lược về OpenVZ.
OpenVZ là một hệ điều hành ảo hoá cấp (Operating system-level virtualization) cho phép máy chủ vật lý có thể chạy độc lập cùng lúc nhiều hệ điều hành trên cùng một phần cứng được gọi là máy chủ ảo (Virtual Private Server - VPS) hay môi trường ảo (Virtual Environments - VE). Vì sao lại độc lập? Bởi tất cả hệ thống ảo đều được cấp phát một tài nguyên nhất định và hoạt động không liên quan đến nhau, khi bất kì hệ thống ảo nào xãy ra sự cố đều không ảnh hưởng đến các hệ thống còn lại kể cả máy chủ vật lý. OpenVZ tuơng tự như FreeBSD Jails và Solaris Zones. So với các giải pháp ảo hoá khác như VMware và các công nghệ Paravirtualization như Xen, OpenVZ hạn chế ở chỗ nó yêu cầu cả hai hệ điều hành máy chủ và khách đều là Linux (mặc dù bản phân phối Linux có thể khác nhau). Tuy nhiên, trên trang chủ của OpenVZ khẳng định rằng OpenVZ lợi thế về hiệu năng hoạt động so với các giải pháp khác. Theo đó, chỉ mất từ 1-3% hiệu năng hệ thống cho OpenVZ so với một máy chủ vật lý thông thường.
OpenVZ là cơ sở của Virtuozzo Containers - một sản phẩm phần mềm độc quyền cung cấp bởi Parallels, Inc. OpenVZ được phân phối dưới giấy phép GNU GPL 2 và được tài trợ cũng như hỗ trợ bởi Parallels, Inc. OpenVZ chỉ có "độc quyền" trên Linux và có thể chạy trên các vi xử lý kiến trúc x86, x86-64, IA-64, PowerPC, SPARC, ARM. Bạn có thể tham khảo thêm về giải pháp ảo hoá này tại trang chủ www.openvz.org.
Miễn trừ trách nhiệm:
Trước khi thực hiện, xin lưu ý rằng đây là một bài viết thực nghiêm của chính bản thân tác giả và cũng xin lưu ý thêm đây không chỉ là cách duy nhất để thực hiên, tác giả không chịu bất kỳ tổn thất nào với hệ thống của bạn trong quá trình thực hiện. Nếu bạn đã đồng ý, chúng ta sẽ bắt đầu thực hiện.
1. Cài đặt OpenVZ:
Để cài đặt bạn vào Terminal và gõ lệnh:
Code:
su -

để có quyền root
Hạt nhân OpenVZ và các gói vzctl, vzquota, vzdump đều có sẵn trong các kho ứng dụng của Debian, do đó, chúng ta có thể cài đặt chúng như sau:
Code:
apt-get install linux-image-openvz-amd64 vzctl vzquota vzdump

(Nếu bạn thực hiện trên nền x32 thì gói nhân có tên là linux-image-openvz-686 thay vì linux-image-openvz-amd64)
Tạo liên kết từ /var/lib/vz đến /vz để tạo tính tương thích ngược:
Code:
ln -s /var/lib/vz /vz

Mở /etc/sysctl.conf bằng lệnh:
Code:
vi /etc/sysctl.conf

và đảm bảo rằng tệp đang được mở có các thiết lập sau:
Code:
[...]
net.ipv4.conf.all.rp_filter=1
net.ipv4.icmp_echo_ignore_broadcasts=1
net.ipv4.conf.default.forwarding=1
net.ipv4.conf.default.proxy_arp = 0
net.ipv4.ip_forward=1
kernel.sysrq = 1
net.ipv4.conf.default.send_wwwects = 1
net.ipv4.conf.all.send_wwwects = 0
net.ipv4.conf.eth0.proxy_arp=1
[...]

Nếu cần thay đổi, hãy gõ:
Code:
sysctl -p

Chú ý: Các bước sau đây rất quan trọng nếu địa chỉ IP của máy ảo của bạn là từ một subnet khác với địa chỉ IP của hệ thống máy chủ. Nếu bạn không làm các bước này, mạng trong các máy ảo sẽ không làm việc!
Mở /etc/vz/vz.conf và thiết đặt NEIGHBOUR_DEVS thành all:
Code:
vi /etc/vz/vz.conf

[...]
# Controls which interfaces to send ARP requests and modify APR tables on.
NEIGHBOUR_DEVS=all
[...] 

Cuối cùng, bạn hãy khởi động động lại hệ thống bằng lệnh:
Code:
reboot

Nếu hệ thống khởi động lại một cách bình thường đồng nghĩa mọi việc đều ổn!
Tiếp đến bạn hãy vào Terminal và gõ lệnh:
Code:
uname -r

để xem phiên của bản nhân Linux. Bạn sẽ nhận được kết quả tương tự như sau:
root@debian:~# uname -r
2.6.32-5-openvz-amd64
root@debian:~# 

2. Sử dụng OpenVZ:
Trước khi chúng tôi có thể tạo máy ảo với OpenVZ, bạn cần có khuôn mẫu (template) của bản phân phối Linux muốn dùng http://wiki.openvz.org/Download/template/precreated.
Chú ý: Nếu phiên bản phân phối Linux của máy tính bạn là bản 32 bit thì bạn chỉ có thể sử dụng khuôn mẫu 32 bit
Các lệnh cơ bản của OpenVZ:
Ví dụ để thiết lập một VPS từ mẫu debian-6.0 amd64-minimal hãy thực hiện lệnh sau:
Code:
vzctl create 101 --ostemplate debian-6.0-amd64-minimal --config basic

Số 101 là số hiệu ID duy nhất mà mỗi máy ảo đều phải có. Bạn có thể sử dụng phần cuối của địa chỉ IP của máy ảo cho nó. Ví dụ, nếu địa chỉ IP của máy ảo là 192.168.0.101, bạn sử dụng 101 để làm số hiệu ID.
Nếu bạn muốn máy ảo tự chạy ngay khi hệ thống khởi động xong hãy gõ lệnh:
Code:
vzctl set 101 --onboot yes –save

Để thiết lập một tên máy và địa chỉ IP cho máy ảo, bạn có thể dùng lệnh sau:
Code:
vzctl set 101 --hostname test.example.com --save
vzctl set 101 --ipadd 192.168.0.101 –save

Tiếp theo, bạn có thể thiết lập số socket thành 120 và chỉ định máy chủ định danh (nameservers) gõ:
Code:
vzctl set 101 --numothersock 120 --save
vzctl set 101 --nameserver 145.253.2.75 --nameserver 8.8.8.8 --save

(Ngoài cách thiết lập trên, bạn cũng có thể truy cập vào thư mục /etc/vz/conf và chọn số hiệu ID bạn muốn thiết lập. Ví dụ bạn muốn thiết lập máy ảo có số hiệu ID là 101 thì dùng trình biên tập bất kì mở tệp 101.conf với đường dẫn cụ thể là /etc/vz/conf/101.conf.)
Để chạy một máy ảo dừng lệnh:
Code:
vzctl start 101

Để thiết lập mật khẩu của máy ảo, thực hiện lệnh
Code:
vzctl exec 101 passwd

Bây giờ bạn có thể kết nối với máy ảo qua SSH hoặc vào trực tiếp bằng lệnh:
Code:
vzctl enter 101

Để thoát giao diện điều khiển gõ:
Code:
exit

Để dùng gõ:
Code:
vzctl stop 101

Để khởi động lại gõ:
Code:
vzctl restart 101

Để xoá một máy ảo nào đó từ trong đĩa cứng (máy ảo đó phải được tắt từ trước) gõ:
Code:
vzctl destroy 101

Để xem danh sách và trạng thái của máy ảo gõ:
(Với 101 là số hiệu ID máy ảo bạn muốn chạy.)
Code:
vzlist -a

Bạn sẽ nhận được danh sách tương tự như sau:
root@debian:~# vzlist -a
CTID NPROC STATUS IP_ADDR HOSTNAME
101 8 running 192.168.0.101 test.example.com
root@debian:~# 

Để xem tài nguyên được cấp cho một máy ảo nào đó gõ:
Code:
vzctl exec 101 cat /proc/user_beancounters

Bạn sẽ nhận được kết quả tuơng tự như sau:
Code:
Version: 2.5
       uid  resource           held    maxheld    barrier      limit    failcnt
      101:  kmemsize         500737     517142   11055923   11377049          0
            lockedpages           0          0        256        256          0
            privvmpages        2315       2337      65536      69632          0
            shmpages            640        640      21504      21504          0
            dummy                 0          0          0          0          0
            numproc               7          7        240        240          0
            physpages          1258       1289          0 2147483647          0
            vmguarpages           0          0      33792 2147483647          0
            oomguarpages       1258       1289      26112 2147483647          0
            numtcpsock            2          2        360        360          0
            numflock              1          1        188        206          0
            numpty                1          1         16         16          0
            numsiginfo            0          1        256        256          0
            tcpsndbuf         17856      17856    1720320    2703360          0
            tcprcvbuf         32768      32768    1720320    2703360          0
            othersockbuf       2232       2928    1126080    2097152          0
            dgramrcvbuf           0          0     262144     262144          0
            numothersock          1          3        120        120          0
            dcachesize            0          0    3409920    3624960          0
            numfile             189        189       9312       9312          0
            dummy                 0          0          0          0          0
            dummy                 0          0          0          0          0
            dummy                 0          0          0          0          0
            numiptent            10         10        128        128          0

Cột failcnt rất quan trọng, nếu mọi thứ đề tốt đẹp giá trị của nó bằng 0. Ngược lại, nếu giá trị khác 0 đồng nghĩa máy ảo đó cần được cấp nhiều tài nguyên hơn. Bạn phải vào /etc/vz/conf để thiết lập lại.
Để biết thêm về lệnh vzctl bạn có thể gõ:
Code:
man vzctl

Nguồn: http://howtoforge.com/installing-and-using-openvz-on-debian-squeeze-amd64
http://en.wikipedia.org/wiki/OpenVZ
http://en.wikipedia.org/wiki/Operating_system-level_virtualization
"Sự vô tâm rất gần vô cảm, sự vô cảm rất gần sự độc ác"
[Up] [Print Copy]
  [Article]   Cài đặt và thiết lập OpenVZ trên Debian Squeeze x64 16/02/2011 19:23:14 (+0700) | #2 | 231194
[Avatar]
No. 47
Member

[Minus]    0    [Plus]
Joined: 26/08/2009 02:44:01
Messages: 32
Location: ••••••••••
Offline
[Profile] [PM]
Do kiến thức còn hạn hẹp nên ắc hẳn sẽ có nhiều sai sót trong quá trình dịch thuật vì thế các bro nào thấy sai sót trong bài viết vui lòng thông báo và bỏ qua cho smilie. Đây là bài viết tôi viết riêng cho các thành viên HVA, những ai sao chép vui lòng tôn trọng tôi bằng cách ghi rõ nguồn góc và tên tác giả bài viết.
"Sự vô tâm rất gần vô cảm, sự vô cảm rất gần sự độc ác"
[Up] [Print Copy]
  [Article]   Cài đặt và thiết lập OpenVZ trên Debian Squeeze x64 16/02/2011 20:37:27 (+0700) | #3 | 231196
[Avatar]
quanta
Moderator

Joined: 28/07/2006 14:44:21
Messages: 7265
Location: $ locate `whoami`
Offline
[Profile] [PM]
Vừa mở đầu đã có một "hạt sạn" bạn à:
OpenVZ là một hệ điều hành ảo hoá cấp (Operating system-level virtualization)... 
Let's build on a great foundation!
[Up] [Print Copy]
  [Article]   Cài đặt và thiết lập OpenVZ trên Debian Squeeze x64 16/02/2011 21:12:37 (+0700) | #4 | 231199
[Avatar]
No. 47
Member

[Minus]    0    [Plus]
Joined: 26/08/2009 02:44:01
Messages: 32
Location: ••••••••••
Offline
[Profile] [PM]

quanta wrote:
Vừa mở đầu đã có một "hạt sạn" bạn à:
OpenVZ là một hệ điều hành ảo hoá cấp (Operating system-level virtualization)... 
 

Cảm ơn quanta đã quan tâm. Nói thật, tôi suy nghĩ mãi mà cũng không biết nên dịch như thế nào là đúng. Thấy "Hệ điều hành ảo hoá cấp" gần giống nghĩa "Operating system-level virtualization" nên chọn. Bạn có thể đề xuất giúp tôi sửa lỗi này không?
Ngoài lỗi trên bạn còn phát hiện ra lỗi nào khác không?
PS: Lỗi bao gồm chính tả, các dùng từ, đặt câu smilie .
"Sự vô tâm rất gần vô cảm, sự vô cảm rất gần sự độc ác"
[Up] [Print Copy]
  [Article]   Cài đặt và thiết lập OpenVZ trên Debian Squeeze x64 16/02/2011 21:34:36 (+0700) | #5 | 231202
[Avatar]
quanta
Moderator

Joined: 28/07/2006 14:44:21
Messages: 7265
Location: $ locate `whoami`
Offline
[Profile] [PM]
Mình thấy câu "hệ điều hành ảo hoá cấp" không có nghĩa gì cả.

1. OpenVZ có phải là một hệ điều hành không?
2. Theo cái link trên Wiki thì bạn dịch thiếu từ "technology". Mình đề nghị dịch là "công nghệ ảo hoá ở mức hệ điều hành". Vậy những cái như VMWare, VirtualBox hay Xen thì xếp vào loại nào, bạn có thể đọc cái này: http://wiki.openvz.org/Introduction_to_virtualization. Mình nghĩ cứ lên trang chủ đọc sẽ chuẩn hơn là Wiki.

Let's build on a great foundation!
[Up] [Print Copy]
  [Article]   Cài đặt và thiết lập OpenVZ trên Debian Squeeze x64 16/02/2011 21:53:09 (+0700) | #6 | 231203
[Avatar]
No. 47
Member

[Minus]    0    [Plus]
Joined: 26/08/2009 02:44:01
Messages: 32
Location: ••••••••••
Offline
[Profile] [PM]

quanta wrote:
Mình thấy câu "hệ điều hành ảo hoá cấp" không có nghĩa gì cả.
 

Hoàn toàn đồng ý. Theo tôi thì từ góc (Operating system-level virtualization)là một cụm từ hoàn toàn không rõ nghĩa trong tiếng Việt nên Việt hoá dù ích nhiều gì cũng không chính xác, rõ nghĩa như nghĩa góc tiếng Anh. Cũng có thể tôi sai do kiến thức cả về tiếng Việt lẫn thuật ngữ về tin học còn yếu kém. Vì thế khoản này cần thêm ý kiến của anh em.
1. OpenVZ có phải là một hệ điều hành không?
2. Theo cái link trên Wiki thì bạn dịch thiếu từ "technology". Mình đề nghị dịch là "công nghệ ảo hoá ở mức hệ điều hành". Vậy những cái như VMWare, VirtualBox hay Xen thì xếp vào loại nào
 

OpenVZ không phải là hệ điều hành nhưng...
root@debian:~# uname -r
2.6.32-5-openvz-amd64
root@debian:~# 

Vấn đề là ở đây. Nó khác với "các giải pháp ảo hoá khác như VMware và các công nghệ Paravirtualization như Xen" vì thế công nghệ của OpenVZ có tên là Operating system-level virtualization.
Tôi nhặt được đoạn này:
Further, in most situations, different operating systems are not required on the same server, merely multiple instances of a single operating system. OS-level virtualization systems have been designed to provide the required isolation and security to run multiple applications or copies of the same OS (but different distributions of the OS) on the same server 

Kiến thức có hạn, chưa hiểu ý của quanta lắm. Mong được tiếp tục thảo luận!
Cảm ơn quanta đã giúp đỡ smilie
"Sự vô tâm rất gần vô cảm, sự vô cảm rất gần sự độc ác"
[Up] [Print Copy]
  [Article]   Cài đặt và thiết lập OpenVZ trên Debian Squeeze x64 16/02/2011 22:02:36 (+0700) | #7 | 231205
[Avatar]
No. 47
Member

[Minus]    0    [Plus]
Joined: 26/08/2009 02:44:01
Messages: 32
Location: ••••••••••
Offline
[Profile] [PM]
Paravirtualization
This technique also requires a virtual machines monitor, but most of its work is performed in the guest OS code, which in turn is modified to support this virtual machines monitor and avoid unnecessary use of privileged instructions. The paravirtualization technique also enables running different OSs on a single server, but requires them to be ported, i.e. they should «know» they are running under the hypervisor. The paravirtualization approach is used by products such as Xen and UML.  

Có lẽ VirtualBox, VMWare Workstation, Xen khác OpenVZ là ở đó. Tôi xin đính chính lại, theo tài liệu quanta cung cấp, ảo hoá gồm ít nhất 3 loại:
  • Virtual machines: VMWare Workstation, QEMU...
  • Paravirtualization Xen và UML
  • Virtualization on the OS level: OpenVZ, Virtuozzo, Linux-VServer, Solaris Zones và FreeBSD Jails

Để có thông tin đầy đủ tham khảo thêm tại: http://en.wikipedia.org/wiki/Platform_virtualization
"Sự vô tâm rất gần vô cảm, sự vô cảm rất gần sự độc ác"
[Up] [Print Copy]
  [Article]   Cài đặt và thiết lập OpenVZ trên Debian Squeeze x64 17/02/2011 13:34:16 (+0700) | #8 | 231244
dnv2006
Member

[Minus]    0    [Plus]
Joined: 08/02/2009 02:27:30
Messages: 96
Offline
[Profile] [PM]
Thank no. 47. Có lẽ không nên nặng về câu cú, văn phạm, quan trọng là giải pháp ảo hoá được trình bày ở đây. Bác cứ mạn dạn mà share cái bác biết cho anh em mở rộng tầm mắt, không cần miền trừ trách nhiệm đâu smilie
[Up] [Print Copy]
  [Article]   Cài đặt và thiết lập OpenVZ trên Debian Squeeze x64 18/02/2011 07:51:00 (+0700) | #9 | 231295
[Avatar]
conmale
Administrator

Joined: 07/05/2004 23:43:15
Messages: 9353
Location: down under
Offline
[Profile] [PM]
Tôi nghĩ cụm "Operating system-level virtualization" nên dịch (nếu buộc phải dịch) là: Ảo hoá cấp độ hệ điều hành. Lý do, "virtualization" là việc "ảo hoá" và "operating system level" là "ở cấp độ hệ điều hành".

Thật ra, "virtualization" nếu dịch ra thành "ảo hoá" cũng không đúng lắm bởi vì "virtual" không hẳn là "ảo" đúng theo tiếng Việt. "Ảo" trong tiếng Việt mang ý nghĩa cái gì đó "không thật" hoặc "không có thật" (ví dụ: ảo tưởng, ảo giác, mờ ảo....). Trong khi đó, "virtual" theo tinh thần tiếng Anh, đặc biệt trong computing thì nó chỉ cho vật thể không mang tính vật lý. Ví dụ, hard disk bình thường là một ổ cứng có chứa thông tin nhưng "virtual hard disk" lại là một "ổ cứng" được software tạo ra và hiển thị như một ổ cứng lấy từ một nguồn nào khác. Bạn có thể biến một tape drive, một optical drive, một USB drive hiển thị như một "hard drive" xuyên qua một software nào đó, đó gọi là "virtual hard drive" (còn được gọi là đĩa ảo theo tiếng Việt).

Nếu không có từ tương đương tiếng Việt để dịch thì có lẽ cách tốt nhất giữ nguyên tiếng Anh (thật ra tiếng Việt mình cũng đã vay mượn rất nhiều rồi vì những từ vựng về kỹ thuật tiếng Việt mình khá hạn chế).
What bringing us together is stronger than what pulling us apart.
[Up] [Print Copy]
[digg] [delicious] [google] [yahoo] [technorati] [reddit] [stumbleupon]
Go to: 
 Users currently in here 
1 Anonymous

Powered by JForum - Extended by HVAOnline
 hvaonline.net  |  hvaforum.net  |  hvazone.net  |  hvanews.net  |  vnhacker.org
1999 - 2013 © v2012|0504|218|