Hướng dẫn cài ubuntu bằng virtual machine wizard

Tôi cài Ubuntu trên máy ảo. Vì vậy rất cần chia sẻ file giữa máy thật với máy ảo. Bài viết này ghi lại các bước tôi thực hiện trên Ubuntu 11.10 cài trên VMWare Workstation 8

1. Trên máy thật (Windows 7):

– Khởi động VMWare Workstation

– Chọn máy cài Ubuntu mong muốn.

– Chọn Edit virtual machine settings, dialog Virtual Machine Settings xuất hiện.

– Qua tab Options, vào mục Shared Folders, chọn Always enabled.

Hướng dẫn cài ubuntu bằng virtual machine wizard

– Click Add, dialog Add Shared Folder Wizard xuất hiện, click Next.

Hướng dẫn cài ubuntu bằng virtual machine wizard

– Browse đến folder trên máy thật muốn share với máy ảo. Ở đây, tôi share Lingoes trên máy thật với máy ảo.

Hướng dẫn cài ubuntu bằng virtual machine wizard

– Click Next và chọn Enable this share. Sau đó click Finish.

– Trở lại dialog Virtual Machine Settings và click OK.

– Khởi động máy ảo như bình thường.

2. Trên máy ảo (Ubuntu 11.10)

– Kiểm tra xem vmware shared folders module có chạy không bằng lệnh sau trên Terminal:

lsmod | grep vmhgfs

Nếu Terminal hiện dấu nhắc lệnh kế tiếp mà không in gì ra cả thì nghĩa là module này chưa/không chạy. Gõ tiếp dòng lệnh sau:

modprobe vmhgfs

Nếu hiện lỗi thì nghĩa là vmware tools chưa được cài. Cần phải tiến hành cài dặt vmware tools trên Ubuntu. vmware tools đòi hỏi phải cài trên Ubuntu với quyền admin hay super user, cũng thường gọi là root user.

– Đầu tiên cần thiết lập password cho super user (root user)

sudo passwd root

– Nhập password dùng để đăng nhập vào account hiện hành để tiếp tục lệnh. Thiết lập password cho root user. Cần phải nhớ password này.

Hướng dẫn cài ubuntu bằng virtual machine wizard

– Log out và đăng nhập vào account Other với username root và password đã thiết lập cho root user.

Hướng dẫn cài ubuntu bằng virtual machine wizard

– Sau khi đăng nhập, lúc này ta ở account root, có quyền hạn tuyệt đối trong ubuntu. Mọi thay đổi đều cần cân nhắc kĩ do có thể gây ra những lỗi nghiêm trọng. Dùng Ctrl + Alt để trở lại máy thật.

– Trên VMWare, vào menu VM->Install VMware Tools …

– VMWare sẽ tạo một ổ DVD ảo trên Ubuntu có chứa 2 file là manifest.txt và VMWareTools-8.8.0-471268.tar.gz.

Hướng dẫn cài ubuntu bằng virtual machine wizard

– Click vào file .gz và giải nén vào một thư mục nào đó trên Ubuntu. Ví dụ Documents. Sau khi giải nén, trong Documents, ta nhận được thư mục vmware-tools-distrib với các thư mục con và tập tin sau:

Hướng dẫn cài ubuntu bằng virtual machine wizard

– Vào doc, sẽ thấy file INSTALL (không có đuôi), mở lên bằng bất kì trình đọc văn bản thô nào (ở đây tôi dùng gedit). Đây là file hướng dẫn cách cài vmware tools

Hướng dẫn cài ubuntu bằng virtual machine wizard

– Mở Terminal và lần đến thư mục có chứa file vmware-install.pl (trong bài này là Documents/vmware-tools-distrib). Chạy lệnh:

./vmware-install.pl

– Chờ một chút, vmware tools sẽ hỏi confirm một số câu. Các confirm này có kèm câu trả lời đề nghị đặt trong cặp “[” và “]”. Chỉ cần trả lời theo đề nghị là OK. Quá trình cài đặt hơi lâu một chút. Cần kiên nhẫn.

– vmware tools cũng hỏi confirm location một số binary file. Nhấn Enter cho những confirm này.

– Sau khi cài đặt, sẽ nhận được thông báo sau:

Hướng dẫn cài ubuntu bằng virtual machine wizard

Như vậy, quá trình cài đặt đã thành công. Để kiểm tra, mở Home Folder và lần đến File System/mnt/hgfs, ta sẽ thấy thư mục được share trên máy thật. Thư mục cài đặt của vmware tools đã giải nén trong Documents có thể xóa đi hoàn toàn mà không ảnh hưởng gì cả.

Hướng dẫn cài ubuntu bằng virtual machine wizard

– Log out và log in lại bằng account thông thường để xem kết quả. Cũng lần đến File System/mnt/hgfs, ta sẽ thấy file được share.

– Có thể kiểm tra lại xem vmware shared folders module đã chạy chưa bằng lệnh sau trên Terminal:

lsmod | grep vmhgfs

Ta sẽ nhận được thông báo sau:

Hướng dẫn cài ubuntu bằng virtual machine wizard

Vậy là vmware shared folders module đã chạy.

Trong bài viết tới, tôi sẽ trình bày các công cụ cần thiết để lập trình và biên dịch với MRPT (Mobile Robot Programming Toolkit). Suy cho cùng thì đó là mục tiêu chính của loạt bài này mừ !!!

Các tùy chọn đĩa ảo khác nhau về thời gian tạo, phân bổ block, bố cục và đánh dấu trước bằng số 0 ở block được phân bổ

Thick Provisioned Lazy-Zeroed Thick Provisioned Eager-Zeroed Thin Provisioned Thời gian tạo Nhanh. Chậm và tỷ lệ thuận với kích thước đĩa Nhanh nhất Phân bổ block Phân bổ trước đầy đủ Phân bổ trước đầy đủ Được phân bổ và Zeroed out theo yêu cầu lúc đầu ghi vào khối. Virtual disk layout Cơ hội cao hơn ghi vào các block liền kề Cơ hội cao hơn ghi vào các block liền kề Bố cục thay đổi tùy theo trạng thái động của block tại thời điểm phân bổ khối. Zeroing out of allocated file blocks File blocks được zeroed out khi mỗi khối được ghi vào lần đầu tiên.” File blocks được phân bổ và zeroed out khi đĩa được tạo File blocks được zeroed out khi blocks được cấp phát.

10. Virtual Networks

Máy ảo và máy vật lý giao tiếp thông qua mạng ảo

Khi bạn cấu hình mạng cho một máy ảo, bạn chọn hoặc thay đổi các cài đặt sau: • Loại Network adapter • Port group để kết nối • Trạng thái kết nối mạng • Có kết nối với mạng khi máy ảo bật nguồn hay không

11. Virtual Network Adapters

Khi bạn cấu hình một máy ảo, bạn có thể thêm network adapters (NIC) và chỉ định loại adapter. Bất cứ khi nào có thể, hãy chọn VMXNET3

Network Adapter Type Description E1000-E1000E Phiên bản mô phỏng của Intel Gigabit Ethernet NIC, với trình điều khiển có sẵn trong hầu hết các Guest OS VMXNET3 Chỉ có sẵn với VMware Tools. Flexible Có thể hoạt động như một Vlance hoặc VMXNET adapter. SR-IOV pass-through Cho phép VM và physical adapter trao đổi dữ liệu mà không cần sử dụng VMkernel làm trung gian. vSphere DirectPath I/O Cho phép VM truy cập vào các physical PCI network với I/O memory management unit. PVRDMA Thiết bị ảo hóa cung cấp hiệu suất thiết bị ảo được cải thiện. Nó cung RDMA-like interface cho vSphere guests.

12. Virtual Devices khác

Máy ảo phải có vCPU và RAM ảo. Việc bổ sung các thiết bị ảo khác làm cho VM hữu ích hơn:

• Ổ đĩa CD / DVD: Để kết nối với đĩa CD, DVD hoặc ISO image . • USB 3.0 và 3.1 • Ổ đĩa mềm: Để kết nối máy ảo với ổ đĩa mềm hoặc hình ảnh đĩa mềm. • Generic SCSI devices: Một máy ảo có thể được kết nối với SCSI adapters. • vGPUs: Máy ảo có thể sử dụng GPU trên máy chủ vật lý cho các hoạt động tính toán cao.

Hướng dẫn cài ubuntu bằng virtual machine wizard

13. Virtual Machine Console

VM console cung cấp các tính năng chuột, bàn phím và màn hình để điều khiển máy ảo.

Bạn có thể sử dụng VMware Remote Console Application (VMRC) để kết nối với các thiết bị khách

Hướng dẫn cài ubuntu bằng virtual machine wizard

III. Giới thiệu về Container

1. Phát triển ứng dụng truyền thống

Trong trung tâm dữ liệu, các ứng dụng truyền thống được tăng cường với các khả năng và mô hình ứng dụng hiện đại. Nhưng phát triển ứng dụng truyền thống khác với phát triển ứng dụng hiện đại

Traditional Application Development Waterfall development (Mô hình thác nước) Chu kỳ phát triển tương đối dài (vài tháng). Các yêu cầu có thể thay đổi theo thời gian Handover to the operations team (Bàn giao cho đội vận hành) Nhóm vận hành chịu trách nhiệm cho code trong production. Đào tạo không được cung cấp. Monolithic applications (Ứng dụng nguyên khối) Tất cả các chức năng được xử lý bởi một ứng dụng lớn duy nhất. Thông thường, các ứng dụng nguyên khối chỉ có thể được thu nhỏ theo chiều dọc, không theo chiều ngang. Riêng biệt môi trường development, staging, và production environments Sự không nhất quán giữa các môi trường.

2. Phát triển ứng dụng hiện đại

Sự phát triển ứng dụng hiện đại đang làm thay đổi mô hình kinh doanh

Modern Application Development Thường sử dụng microservices kiến trúc. Các ứng dụng nguyên khối được chia thành nhiều chức năng hoặc dịch vụ mô-đun độc lập nhỏ hơn giúp các nhà phát triển dễ dàng đổi mới và thay đổi code Giảm thiểu thời gian triển khai Tăng tốc quá trình triển khai code vào môi trường staging để thử nghiệm Xác định và giải quyết các lỗi gần như ngay lập tức. Triển khai nhanh chóng ở quy mô nhỏ, gia tăng trong môi trường production và dễ dàng rút lui nếu có vấn đề phát sinh. “ Cung cấp các bản cập nhật và tính năng một cách nhanh chóng. Giảm thiểu thời gian xây dựng, thử nghiệm và phát hành các tính năng mới. Tăng chất lượng sản phẩm và tránh rủi ro. Tự động hóa các bài kiểm tra, nhận phản hồi của người dùng và cải tiến phần mềm theo cách lặp đi lặp lại. Ít yêu cầu tài nguyên hơn và năng suất cao hơn. Áp dụng continuous development and continuous để giảm bớt nhân lực

3. Lợi ích của Microservices và Containerization

Container là một công nghệ lý tưởng để hỗ trợ microservices vì mục tiêu của container (nhẹ, dễ đóng gói, có thể chạy ở mọi nơi) phù hợp với mục tiêu của kiến trúc microservices.

Hướng dẫn cài ubuntu bằng virtual machine wizard

4. Container thuật ngữ

Term Định nghĩa Container Một application được đóng gói với dependencies Container engine Một runtime engine quản lý các containers Docker Là một runtime engine, được công nhận nhiều nhất, hỗ trợ container và nó thường được sử dụng như một từ đồng nghĩa với nhiều khía cạnh của công nghệ container Container host Máy ảo hoặc máy vật lý mà trên đó có containers và container engine đang chạy Kubernetes Google-developed orchestration cho containers

5. Giới thiệu Containers

Container là sự đóng gói của ứng dụng và các mã nhị phân và thư viện phụ thuộc. Ứng dụng được tách khỏi hệ điều hành và trở thành serverless function

Hướng dẫn cài ubuntu bằng virtual machine wizard

Các lý do mà Container được sử dụng phổ biến bởi các nhà phát triển phần mềm là: • Chúng làm cho việc viết mã dễ dàng hơn, cục bộ và ở bất kỳ đâu. • Bạn có thể triển khai và kiểm tra các ứng dụng một cách nhanh chóng trong môi trường staging. Không cần hệ điều hành hoặc tải

6. Container Hosts

Container host, chạy hệ điểu hành (OS), là nơi container hoạt động

Container host có thể thuộc các loại sau: • Hệ điều hành tiêu chuẩn với container engine được cài đặt sẵn: – Ubuntu với Docker • Hệ điều hành được phát triển đặc biệt với các containers: – Hệ điều hành Photon – Fedora CoreOS • Máy ảo hoặc máy vật lý: – Trong số nhiều lợi ích của việc sử dụng VM là dễ dàng quản lý và khả năng mở rộng.

Hướng dẫn cài ubuntu bằng virtual machine wizard

7. Containers at Runtime

Containers có các đặc điểm sau: • Một Container có thể chạy trên bất kỳ máy chủ chứa nào có cùng nhân hệ điều hành được chỉ định bởi container đó. • Một container đang chạy được truy cập bằng FQDN hoặc địa chỉ IP duy nhất của nó. • Mỗi container chỉ có thể truy cập tài nguyên của chính nó trong môi trường chia sẻ. Khi bạn đăng nhập vào container bằng Terminal (chẳng hạn như SSH), bạn không thấy dấu hiệu nào cho thấy các container khác đang chạy trên cùng một máy chủ.

8. Container Engines

Container engine là một control plane được cài đặt trên mỗi container host. Control plane quản lý các containers trên máy chủ đó.

Hướng dẫn cài ubuntu bằng virtual machine wizard

Container engines thực hiện một số chức năng: • Xây dựng container images từ source code (ví dụ: Dockerfile). Ngoài ra, load container images tù repository. • Tạo running containers dựa trên container image.. • Commit a running container to an image • Lưu image và đẩy nó vào một kho lưu trữ. • Dừng và loại bỏ các containers • Tạm dừng và khởi động lại các containers • Báo cáo tình trạng container.

9. Virtual Machines vs Containers

Máy ảo cung cấp phần cứng ảo mà hệ điều hành khách sử dụng để chạy các ứng dụng. Nhiều ứng dụng chạy trên một máy ảo duy nhất nhưng chúng được tách biệt và cô lập về mặt luận lỳ

Với containers, các nhà phát triển sử dụng hệ thống tệp hệ điều hành và chỉ lớp trên các mã nhị phân và thư viện mà ứng dụng phụ thuộc vào.