Cách sửa lỗi upload file lên VMFS datastore trong vCenter nhưng bị báo lỗi “The operation failed”


Tôi gặp phải một vấn đề là khi cố gắng sao chép (tải lên) bất kỳ tệp nào (ISO, vmdk, OVA / OVF, v.v.) vào Kho dữ liệu VMFS trong VMware vSphere (6.5 hoặc 6.7). Khi tôi nhấp vào nút “Tải lên tập tin” Tải lên trong giao diện vSphere Client, lỗi thông báo xuất hiện “The operation failed” – Lỗi “Hoạt động không thành công“.

Cửa sổ thông báo lỗi xuất hiện:


Phân tích nguyên nhân:

Như bạn có thể thấy từ thông báo lỗi trên, sự cố liên quan đến chứng chỉ SSL không tin cậy được sử dụng trên máy chủ vCenter (chứng chỉ được tự ký “Self Issue” hoặc cấp bởi cơ quan/tổ chức chứng nhận không tin cậy “tự tạo”). Để giải quyết vấn đề này, bạn cần làm theo các hướng dẫn trong bài viết Cảnh báo bảo mật Chứng chỉ SSL SSL trên vSphere “SSL Certificate security warning on vSphere“.

 

Trong vSphere 6.5 và 6.7, việc thêm chứng chỉ vCenter vào chứng chỉ tin cậy trong trình duyệt của bạn là chưa đủ. Nếu chứng chỉ tự ký không được thêm vào tự động Trusted Root Certification Authorities Store trên máy tính cá nhân của bạn, vSphere Web Client sẽ không cho phép tải tệp lên kho dữ liệu VMFS.

 

Để thêm chứng chỉ vCenter vào danh sách chứng chỉ tin cậy, hãy truy cập trang vSphere start và nhấp vào Tải xuống chứng chỉ CA gốc đáng tin cậy ở góc dưới bên phải.

Hoặc bấm phải chuột ở nút Tải xuống chứng chỉ CA

 


Hoặc Bấm phải chuột Save as link vậy


Dùng 7.zip mở tới thư mục ..\certs\win  (there are separate folders for Windows, Linux and Mac certificates).

Hãy bấm đúp chuột trái vào file *.crt  và bấm tiếp nút “Install Certificate”.

Dùng trình điều khiển “Certificate Import Wizard” để đặt chọn “place all certificates in the following store” trong máy tính client (Local Machine -> Trusted Root Certification Authorities).


Sau khi cài xong chữ ký số, bạn có thể mở giao diện vCenter web lại và để đảm bảo không còn thông báo “untrusted certificate”.

Bây giờ bạn có thể upload các files trở lại VMFS datastore của bạn.

Lưu ý:

Trường hợp dùng Firefox, bạn cần thêm trong Settings “vSphere certificate to trusted (exception)” thêm danh sách trong trình duyệt FF của bạn hoặc chuyển Firefox sang dùng certificates từ Windows certificate store: about: config -> security.enterprise_roots.enabled = True (Bạn có thể tham khảo lỗi: Secure Connection Failed).

FireFox, không giống các trình duyệt khác (Chrome, Opera, IE) ngầm định FF ngầm định xác thực chữ ký số theo danh sách “its own trusted certificate list”.

Công cụ xác định lỗi ổ cứng và SCSI trên nền VMware ESXi SCSI Sense Code Decoder


Giới thiệu các bạn các công cụ để xác định tình trạng hoạt động của SCSI: https://www.t10.org/lists/2status.htm

và tình trạng dữ liệu đang đọc ghi qua SCSI : https://www.t10.org/lists/2sensekey.htm

và trang tra cứu lỗi các hệ số: H: D: P: https://www.virten.net/vmware/esxi-scsi-sense-code-decoder/?host=2&device=0&plugin=0&sensekey=0&asc=0&ascq=0&opcode=28

  • Đây là tool nhằm xác định lỗi hoặc cảnh báo SCSI trong có trong Log của ESXi được hiển thị với 6 mã trạng thái. Trang này chuyển đổi các mã SCSI Sense từ ESXi Hosts thành thông tin trạng thái có thể giúp các Quản trị Troubleshoot đọc được.

 

Trong tệp nhật ký hệ thống vmkernel.log từ máy chủ ESXi 5.x hoặc 6.x, bạn thấy các mục tương tự như sau. Nhập các số màu vào Form và nhấn nút Submit .    

Ví dụ: ScsiDeviceIO: […] Cmd 0x1a […] to dev “naa.x” failed H:0x0 D:0x2 P:0x0 Valid sense data: 0x5 0x24 0x0.

 

  • Mình hay gặp phải các lỗi kiểu như: ESXi host 6.x đang chạy hơn 1 năm ổn định, trải qua khoảng hơn 5 lần update của VMware, Windows nhưng mình không vá lỗi, update gì cả.
  • Cho tới 1 ngày cách đây 1 năm, có 2 con ESXi có cấu hình phần cứng và phần mềm giống hệt nhau, cùng 1 phiên bản ESXi 6.x nhưng chỉ có 1 con ESXi Physical chạy ổn định, còn con kia thỉnh thoảng treo.
  • Phải dùng ILO /IPMI cài cấu hình và điều khiển từ xa, reboot lại Host thì hệ thống mới chạy lại bình thường. Sauk hi khởi động lại bình thường, mình dùng WINSCP và PuTTy kết nối qua SSH port 22 và download, đọc file Log.

Dưới đây là nội dung file Log:

2020-03-05T02:37:41.410Z cpu1:68233)WARNING: LRO: 977: cannot aggr pkt from port 0x2000004 as lro session port is 0x2000002

  • Log đang báo có vẻ là: ổ SATADOM2 đang đọc chậm, khi CPU xử lý đã không thể ghi cache xuống ổ SATADOM2.


dòng bôi đỏ, search của VMware có trang nhập các code lỗi:

https://www.virten.net/vmware/esxi-scsi-sense-code-decoder/?host=2&device=0&plugin=0&sensekey=0&asc=0&ascq=0&opcode=28

Nhập các mã số khớp với hình:


Điều này chứng tỏ lỗi ở Host là Device HBA –> cái này là cho ổ cứng chạy các VMs, không phải là lỗi ổ SATADOM2.

Giải pháp xử lý:

  • Cách tốt nhất là có bản backup cho các VMs ra ổ disk-box cắm ngoài trước hoặc vMotion tất cả các VMs có liên quan sang máy chủ khác, xong rồi sẽ update bản vá ESXi host từ 6.x lên 6.x u3 (bản cao nhất của các dòng phần mềm ESXi 6.x), nó vá lỗi HBA Device.

Cách sửa bằng lệnh ổ cứng SSD based disks/LUNs khi không được cấu hình SSD trên vSphere


Tiếp theo bài viết “Tại sao ổ cứng SSD chạy trên RAID 0/1/5/6/10 lại báo trên vSphere là ổ Non-SSD?”


https://thangletoan.wordpress.com/2020/02/25/tai-sao-o-cung-ssd-chay-tren-raid-0-1-5-6-10-lai-bao-tren-vsphere-la-o-non-ssd/

Cách dùng lệnh bằng SSH kết nối console DCUI của ESXi host sẽ giúp cho các bạn sẽ không phải shutdown các VM hoặc vMotion các VMs không thể gián đoạn.

Bước 1. Dùng PuTTy kết nối bằng user root trên ESXi HostL

Bước 2. Dùng lệnh SSH và ESXi Shell để kiểm tra các loại ổ cứng đang kết nối trên ESXi này:

esxcli storage nmp device list

Ví dụ: chúng ta sẽ tìm được kiểu ổ SATP thường có tên gọi: VMW_SATP_CX hoặc VMW_SATP_LOCAL. Cần đảm bảo là chọn đúng kiểu SATP và name của nó.

Bước 3. Dùng lệnh tiếp theo để chuyển tình trạng của ổ SSD đang bị disable sang enable:

Mẫu lệnh: esxcli storage nmp satp rule add –satp SATP_TYPE –device naa.ID –option “enable_ssd”

Ví dụ:

esxcli storage nmp satp rule add satp “VMW_SATP_LOCAL” –device “naa.64cd98f0942ce90025d713e10aecbb45” –option “enable_local enable_ssd”

 

Nếu vẫn bị lỗi ta có thể thực hiện chạy thêm 3 lệnh sau:

Lệnh 1:
esxcli storage core claimrule load

Lệnh 2:
						esxcli storage core claimrule run

Lệnh 3:
						esxcli storage core claiming reclaim -d <naa.ID>

 

Sau khi chạy xong 3 lệnh liên tiếp trên, ta nhập lệnh sau đây để kiểm tra kết quả:

esxcli storage core device list -d <naa.ID> |grep SSD

 


Kết quả:

This should return:

Is SSD: true

 

Chúc các bạn thành công!

Cách nâng cấp vá lỗi vSphere 6.7 từ GA (8169922) lên Update 3 (14320388)


Có rất nhiều nguyên nhân gây lỗi, dấu hiệu lỗi trên hệ thống VMware vSphere 6.7.

Bài viết này minh chỉ tóm lược các bước tìm phiên bản nâng cấp, Sau đó download và ra lệnh cài nâng cấp phiên bản vá lỗi cho ESXi 6.7 lên Update 3.

 

Bước 1. Truy cập trang:

https://esxi-patches.v-front.de/vm-6.7.0.html

 

Bước 2. Tìm phiên bản cần nâng cấp:


 

Bước 3. Truy cập địa chỉ: vmware.com/go/patch để tìm và Download bản update:


Chọn đúng phiên bản cần nâng cấp:

 

Bấm nút Download.

Bước 4. Dùng WINSCP để truy cập ESXi và Upload lên vùng volume của ESXi 6.7:


 

Bước 5. Mở PuTTy và nhập lệnh nâng cấp:

esxcli software profile update -p ESXi-6.7.0-20190802001-standard -d /vmfs/volumes/54a6a7pathpathpath/update-from-esxi6.7-6.7_update03.zip

Cuối cùng, ESXi CLI báo yêu cầu Reboot Required: true. Bạn sẽ cần khởi động lại để cho ESXi áp dụng phiển bản nâng cấp mới.

Chúc các bạn Thành công!

Tại sao ổ cứng SSD chạy trên RAID 0/1/5/6/10 lại báo trên vSphere là ổ Non-SSD?


Khi chúng ta cấu hình RAID Controller 0/1/5/6/10 với các ổ đĩa SSD, nhưng khi vận hành trên vSphere ESXi lại hiển thị kiểu ổ đĩa là Non-SSD,

Như đã nêu ra ở trên, nếu bạn muốn sử dụng vFlash Read Cache, Host Cache, VM cache hoặc vSAN, bạn phải cho hệ thống vSphere hiển thị là ổ SSD.

Trong các trường hợp khác, bạn sẽ không thấy nhiều ảnh hưởng hiệu suất.

Đây là do nguyên nhân của RAID Controller kết nối và xử lý ổ SSD đang truyền tín hiệu qua cable chuẩn SCSI/SAT/SATA2/SATA3/SAS chỉ đánh dấu tín hiệu tới vSphere là HDD

(các tín hiệu qua PCI/PCI-E/ SATADOM là Flash SSD).


 

Tham khảo:
https://kb.vmware.com/s/article/2013188

Nếu không dùng vCenter, bạn dùng web vsphere client sẽ không có công cụ “ĐÁNH DẤU Ổ ĐĨA LÀ KIỂU: FLASH Disk”.

Lựa chọn đơn giản này chỉ có ở vCenter Appliance / vCenter Windows.    


 

Trong trường hợp đang điều khiển vCenter Web vSphere, nếu bạn chọn đúng Storage là SSD và đánh dấu chọn ổ đĩa đó là Fash Disk,

Nếu trong lúc đánh dấu ổ đĩa đó lại có nhiều VMs đang bật chạy sẽ có thể dẫn tới lỗi báo không thể chuyển đổi thành công khi ổ đĩa đang được dùng.


Bạn sẽ phải dùng các tính năng như vMotion Storage / Migration để di chuyển các VMs có ổ đĩa ảo đang dùng trên ổ đĩa nói trên sang các Storage khác

Hoặc tắt các VMs đó tạm thời (nếu được phép hoặc không quá quan trọng khi offline tạm thời).


Sau khi vMotion hết các VMs có trong ổ SSD đó hoặc Shutdows Guest OS của VMs đang chạy trên ổ SSD đó.

Chúng ta chỉ cần quay lại mục Configure > Storage > Storage Devices và chọn đúng Storage cần và bấm nút “Mark as HDD Disk” để chuyển thành SSD Disk type.



và trên ESXi Host lúc này bạn cũng sẽ thấy ổ cứng đó bảo kiểu đĩa là SSD.


Ngoài cách cấu hình SSD trên vCenter thông qua Web vSphere client, các bạn cũng có thể dùng lệnh ESXi host thông qua ESXCli

Tham khảo:
https://kb.vmware.com/s/article/2013188

Chúc các bạn thành công!

Cách cấu hình iSCSI SAN trong Server 2012 R2 kết nối với ESXi Host 6.x


Phần 1. Cấu hình iSCSI SAN trong Server 2012 R2:

iSCSI (Internet Small Computer System Interface) là một giao thức được sử dụng TCP / IP cơ bản để truyền dữ liệu. Không giống như các FC (Fiber Channel) đòi hỏi phần cứng chuyên dụng như HBA (Adapters Bus Host), cáp quang.  iSCSI sử dụng các thiết bị mạng hiện tại (thiết bị định tuyến, chuyển mạch, tường lửa) khiến nó là giải pháp lưu trữ hiệu quả, chi phí rất kinh tế. Trong iSCSI, dữ liệu được chuyển giao kiểu block by block dạng VMFS giữa các máy chủ và SAN. Điều này làm cho hệ điều hành có thể kết nối các ổ cứng như Local hoặc DAS (Direct Attached Storage). Bạn có thể tạo LUN (Logical Unit Numbers) hoặc ổ đĩa ảo trong SAN và sẽ được sử dụng hệ điều hành như là một khối lưu trữ trong Local/DAS.

Lưu ý, NAS (Network Attached Storage) sử dụng các giao thức như SMB, CIFS, NFS hoặc để truyền dữ liệu giữa các hệ điều hành và thiết bị NAS. Trong bài này, tôi sẽ trình bày các bước để cấu hình iSCSI SAN trong Windows 2012 R2.

Windows Server 2012 hiện nay bao gồm các thành phần phần mềm iSCSI, có nghĩa là bạn có thể tạo SAN trong máy chủ Windows 2012. Hai thành phần chính của iSCSI là iSCSI InitiatoriSCSI Target.

ISCSI initiator là thông tin cấu hình từ máy client, máy trạm hay ESXi Host có hệ thống sẽ được sử dụng lưu trữ từ SAN.

ISCSI Target là hộp lưu trữ hoặc vùng lưu trữ SAN hoặc máy chủ, nơi thành phầnSCSI được cài đặt. Bạn có thể sử dụng Server 2012 tính năng iSCSI SAN để cấu hình lưu trữ chia sẻ cho fail-over cho clustering Hyper V và VMware vSphere.

Bước 1. Cài máy chủ Windows 2012 R2

Máy được cấu hình với 3 ổ cứng:

Ổ 1: Logic C: 64Gb dùng cho cấu hình OS và một số Application System.

Ổ 2: Logic D: 160Gb cho cấu hình iSCSI SAN.

Ổ 3: Logic E: 10Gb dùng cho cấu hình NFS/SMB NAS (bài hướng dẫn tiếp theo).

hoặc dựng làm Labs chỉ có 1 ổ cứng 170Gb gồm cả OS, Apps, cấu hình 1 thư mục 145Gb làm cấu hình iSCSI SAN và 10Gb thư mục làm NAS.


Bước 2. Cài bổ sung dịch vụ iSCSI:  mở Server Manager > Local Server


 

Từ Server Manager, chọn Manage và nhấn vào Add Roles and Features


Click Next trên
Trước khi bắt đầu trang.

Trên trang chọn kiểu cài đặt, chọn Role-based hoặc cài đặt dựa trên tính năng và kích nút Next.


Chọn máy chủ cần cài dịch vụ mới:


Chọn Server Roles: Roles > Hãy chọn File and iSCSI Services > Chọn File Server và chọn thêm iSCSI Target Server


Chọn Next để mở tiếp trang xác nhận các phần tính năng mới cần cài

Bấm Finish để hoàn thành việc cài tính năng mới


Bây giờ chúng ta đã cài xong dịch vụ “iSCSI target” trên máy chủ windows 2012 R2.

Trước khi tạo bất cứ ổ đĩa ảo “virtual disks” hoặc ổ Logic “LUNs” chúng ta cần đem các ổ đĩa về trạng thái “Online” và tạo định dạng “NTFS partition” cho các đĩa.

Bước 3. Định dạng ổ đĩa Online:

Mở Server Manager, bấm mục “File and Storage services”, chọn  “Disks”, ở đây bạn sẽ thấy list các ổ đĩa. Bây giờ hãy bấm phải chuột trên ổ đĩa và bấm chọn “Bring Online”. Cứ nặp lại với các ổ đĩa khác nếu có. Bạn sẽ nhận được dòng thông báo ngắn sau khi bạn bấm vào mục “Bring Online”, hãy đọc nó và bấm Yes.


 

Bước 4. Tạo Disk Volumes: Bây giờ tạo volumes cho các ổ đĩa. Từ cửa sổ này bấm nút phải chuột vào ổ đĩa và bấm chọn “New Volume”.


 

Cửa sổ gợi ý việc tạo “New volume” xuất hiện. Bấm “Next” Chọn ổ đĩa và tên máy chủ cần tạo và bấm “Next”.


Nhấn OK trên thông báo.


Bây giờ xác định kích thước của ổ cứng cần dùng và bấm Next.


Gán ký tự ổ đĩa cho ổ đĩa mới và nhấn Next.


Chọn hệ thống tập tin và nhấn Next.


Xem lại các trang xác nhận và nhấn nút Create.


Lặp lại các bước tương tự cho đĩa khác để tạo ra một Volume disk. Để xem Volume disk, bấm vào mục “Volumes“.


Bây giờ các Volume disk đã sẵn sàng để được cấu hình thành LUN hoặc ổ đĩa ảo.

Bước 5. Tạo LUN:

Bây giờ là bước cuối cùng tạo ra LUN hoặc ổ đĩa ảo. Mở Server Manager, chọn “File and Storage Services” và sau đó nhấp vào tab “iSCSI”. Nhấn vào Tasks và chọn New iSCSI Virtual Disk.


 

ISCSI Wizard đĩa ảo mới sẽ mở ra. Chọn máy chủ và chọn Volume và kích “Next”.


Chọn tên ổ đĩa ảo để lưu. Ở đây, tôi chọn E:, nhập tên thư mục và tên file để lưu “ví dụ: LUN-1”  và nhấn Next. 1 tên file có đuôi VHDX xuất hiện, các định dạng file này là chuẩn Hyper V sử dụng cho các ổ đĩa ảo của máy ảo Hyper V.


Xác định kích thước đĩa ảo. Chọn loại đĩa, ở đây tôi đã chọn Dynamically expanding để không gian đĩa sẽ không được sử dụng hơn. Nhấn Next.


Trong trang “Assign iSCSI target“, chọn “new iSCSI target” và bấm “Next”.


Nhập tên mới cho Target Server (ví dụ: LUN1)


Trong tab “Access Server”, nhấn nút Add. Thêm hộp thoại “Initiator id” sẽ mở ra.

Có ba cách để bạn có thể xác định “Initiator” (thiết bị sẽ sử dụng ổ đĩa ảo này). Ở đây tôi sẽ chọn IP và nhập IP của Initiator machine: ví dụ 172.60.13.10. Sau đó bấm OK.


Ở đây bạn có thể nhìn thấy danh sách của iSCSI Initiator. Để thêm Initiator iSCSI khác bấm Add và lặp lại các bước trên. Sau đó nhấn Next.


Trong trang Authenticate Enable, bạn có tùy chọn để sử dụng CHAP hoặc  CHAP cả 2 chiều để xác thực Initiator iSCSI và iSCSI Target. Ở đây, tôi sẽ để trống và nhấn Next.


Bây giờ xem lại cấu hình và nhấn Create để tạo một đĩa ảo mới hay LUN.


Sau khi cài đặt, bạn có thể xem các đĩa ảo trong tab iSCSI.


Bây giờ bạn có thể sử dụng các đĩa ảo trong Hyper-V hoặc vSphere cho các mục đích khác nhau sẵn sàng cao.

Bước 6. Kết nối Storage Adapter trên ESXi Host:

– Tạo mạng ảo chuẩn VMKernel Port để Switch ảo có thể kết nối giữa iSCSI SAN với ESXi Host (ngầm định không tạo Portal này, hệ thống sẽ tranh chấp tài nguyên băng thông iSCSI với Management Network là 1 VMkernel Portal default được tạo ra ngay từ lần đầu tiên ảo hóa máy chủ ESXi Host).

– Cài đặt Mạng ảo trên ESXi Server cho iSCSI kết nối:

Mở vSphere Client và truy cập ESXi Host cần kết nối với iSCSI SAN và tiến hành cấu hình, nối mạng và nhấn Add Networking.


Chọn VMKernel và bấm Next.


Tạo một switch ảo mới và chọn một NIC nằm trên một subnet khác đã có phân VLAN.

Nhập tên của mạng cho dải mạng ảo mới này (ví dụ: iSCSI) và bấm Next


chọn Use the following IP settings: và nhập các thông tin IP Address, Subnet mask, VMkerrnel Default Gateway: rồi bấm Next. (ví dụ: xem hình bạn nên nhập địa chỉ IP tĩnh và nó thuộc dải IP mà máy chủ iSCSI SAN có thể ping/telnet ip port 3260 thông).


Xác nhận tất cả các cấu hình trên là đúng và bấm Finish để hoàn thành cài đặt.

 Bước 7. Kết nối iSCSI Initiator trên ESXi Host với chế độ Multipath:

Phần này sẽ hướng dẫn các Admin kết nối iSCSI Target trên iSCSI SAN với máy chủ ESXi host với nhiều kết nối đồng thời >= 256 “Multipath”.

Trong tab Configuration, bấm vào Adapters Storage, chọn phần mềm iSCSI adapterchọn Properties.


Trong ví dụ này, iSCSI Initiator bị vô hiệu hóa. Nhấn vào Configure để cấu hình các thiết lập của iSCSI Initiator.


Hãy chắc chắn rằng các iSCSI Initiator Enabled.

Một khi iSCSI Initiator được kích hoạt,

bấm vào mục Tab “Network Configuration”. sau đó bấm Add… để thêm đúng VMkernel port “iSCSI” đã tạo từ bước trên.


Bấm nút “OK” của sổ Bind with VMkernel Network Adapter đóng lại, bấm vào mục Tab “Dynamic Discovery” để tiếp tục cấu hình gọi máy chủ iSCSI SAN


Nhấn Add và nhập vào địa chỉ IP / tên máy chủ iSCSI SAN, nếu có cấu hình 2 /4 Card mạng NIC Teaming (IP Bond) từ trước cho iSCSI SAN thì bạn nên nhập IP Bond của iSCSI SAN đó.


Xác nhận để quét lại các Host Bus Adapter.

Trong Paths, iSCSI Initiator đã phát hiện các iSCSI Target có trong iSCSI SAN.


Nhấp chuột phải vào các mục tiêu và chọn
Manage
Paths.


Chọn Round Robin (VMware).

Lưu ý: Trong việc quản lý “Management Paths” máy chủ ESXi Host thường dùng 2 đường kết nối “two paths” (thông qua hai mạng con “via two subnets”) để kết nối tới iSCSI Target cùng đồng thời.


 Bước 8. Tạo Disk/Lun để sử dụng tài nguyên lưu trữ của iSCSI Initiator trên ESXi Host:

Chọn Configuration > Storage> bấm “Add Storage…”


Cửa sổ Add Storage hiện ra, bạn chọn tiếp Disk/LUN


Hãy chọn ổ đĩa đã được kết nối từ Storage Adapter:


Chọn kiểu phân vùng GPT và phân vùng dữ liệu trống “Free space” để định dạng cho sử dựng chứa VM:


Bước tiếp theo rất đơn giản, chỉ cần bạn đặt tên cho kết nối lưu trữ trên (ví dụ: iSCSI-SAN)


Bước tiếp theo là định dạng ổ cứng Lun cần lưu trữ với kích thước là bao nghiêu (ngầm định là kích thước tối đa)


Xác nhận cuối cùng trước khi định dạng và đem ổ cứng ảo đó vào sử dụng


 

Như vậy, chúng ta đã hoàn thành việc cài, cấu hình, kết nối và sử dụng hệ thống iSCSI SAN (software SAN) với hệ thống ESXi Host ảo hóa của VMware.

 

Chúc các bạn thành công!

Tác hại của sự khác VM Hardware version và cách hạ cấp version trong Data Center Virtualization


VMware đưa ra phương thức quản lý các máy ảo chạy trên các phiên bản vSphere từ cũ tới các phiên bản mới nhất, bằng cách gán

trên các Host cũng gán các phiên bản của ESXi host.

Và gán vào file cấu hình máy ảo [VM’s name].vmx các thẻ tag có số hiệu phiên bản

Version được ghi trong nội dung file .vmx

Vấn đề nằm ở chỗ, chúng ta phát triển các máy ảo trên nền VMware vsphere, vSphere Web client chỉ cho chúng ta các lựa chọn ngầm định khi tạo 1 máy ảo à

  1. VM Hardware là tương thích, tương ứng và thường chọn ngầm định phiên bản cao nhất.
  2. Nếu bạn sản xuất phần mềm hoặc máy ảo Appliance cho khách hàng, bạn phải điều chỉnh lại VM Hardware version thấp hơn để phù hợp với các vSphere 4.x, vSphere 5.x và vSphere 6.x
  3. Trong hạ tầng Doanh nghiệp của bạn lại có nhiều phiên bản vSphere khác nhau từ 4.x, 5.x tới 6.x thì khi có sự cố các VM cần vMotion sang nhau hoặc cần di chuyển chủ động làm DRS/HA.
  4. Các bạn cần Sao lưu/ khôi phục các VMs trên các hạ tầng Ảo hoá khác phiên bản, khác hệ thống ảo hoá (như từ vSphere sang Hyper-V, KVM …).

Tác hại của việc khác phiên bản, nó còn thể hiện ngay cả ở phần mềm khác nhau và rất khó chịu, mất thời gian:

  1. Dùng Veeam backup and replicate Free License for windows 9.5 không cài được trên windows server 2008 R2 Enterprise, Veeam yêu cầu phải nâng cấp windows 2008 R2 Server lên bản SP1 hoặc SP2.
  2. Khi dùng bản Veeam backup and Replication 9.5 add Server ESXi Host vSphere 6.7 thì được, Khôi phục (Restore các VM vào ESXi host 6.7 này) thì thành công nhưng khi Backup các VM trên đó lại báo lỗi không support:

“Error: Object reference not set to an instance of an object after manually deleting a replica VM”.

Lỗi trên có thể hiểu đơn giản là phải nâng cấp bản Veeam Backup and Replication từ 9.5 GA lên bản update 3a là support với vSphere 6.7.

  1. Khi nâng cấp Veeam backup and Replicate lên bản 9.5 update 3a, thì chúng ta lại sao lưu được các VM (có hardware version từ 13 /14) có trên vSphere 6.7, nhưng khi khôi phục các VMs đó sang các vSphere khác có Verison thấp hơn như: vsphere 5.5,6.0,6.5 thì lại gặp lỗi không hỗ trợ Restore:

“Error VM hardware version 13 is not supported by destination host (version 6.0) (System.Exception) “ .

Tham khảo:


  1. Build numbers and versions of VMware ESXi/ESX (2143832)
  2. Veeam Backup & Replication support for VMware vSphere

Giải pháp: ngược với nâng cấp phiên bản là hạ cấp phiên bản:

Đôi khi, bạn sẽ thấy mình cần phải dùng cách hạ cấp phiên bản phần cứng của máy ảo chỉ để giúp bạn có thể di chuyển phiên bản ESXi mới hơn sang phiên bản cũ hơn. Nâng cấp khả năng tương thích phần cứng của máy ảo cũng đơn giản như nhấp chuột phải vào nó và chọn tùy chọn, nhưng ngược lại không phải là cách dễ dàng.



Ví dụ: mình gặp phải các trường hợp y hệt như trên và mình sẽ sửa lại phiên bản của máy ảo của con cloudgateway:

Có 2 cách chính để hạ phiên bản (downgrade version hardware VMX-13 của VM trên vsphere 6.7) xuống VMX-10/11 cho vSphere 5.5/ vSphere 6.0 support:

Cách 1:
dùng VMware Converter để converter migration máy ảo từ Host có vSphere version cao (6.7).

Tỉ lệ thành công và thất bại ở cách 1 là ~ 85/15% và trong trường hợp của mình là thất bại bởi VM có Guest OS Linux Ubuntu 16.04

Cách 2: dùng cách sửa nội dung phiên bản của file cấu hình máy ảo .VMX

Lưu ý:

  • Khi bật VM lên thì VMDK lại dùng NVRAM sửa lại làm thay đổi nội dung trên file .VMX.
  • hoặc vCenter Inventory của ESXi host sẽ dùng DRS/HA để sửa thông tin của VMX khi có thay đổi cấu hình VM hoặc do vMotion làm thay đổi vị trí Host, Storage…

Do vậy, chúng ta sẽ làm theo 5 bước sau cho an toàn và nhanh gọn:

Bước 1: bật nguồn máy ảo.

Bước 2. Mở Datastore browser và download file .VMX về máy PC.

 

Bước 3. Dùng Notepad để sửa được VMX.

Bước 4. Tiếp theo Un-register VM và vào xoá file VMX cũ.

Bước 5. Upload lại file VMX đã sửa, rồi Register lại VM

và bật nguồn cho máy ảo chạy

Tác dụng của việc hạ VM Hardware version từ 13/14 xuống version 10 là ta có thể dùng Veeam backup restore tới các vsphere 6.x/5.5 thành công :

Và khi đó các máy chủ ESXi Host vSphere 5.5/6.x đều vận hành được các VM có Hardware version 10

VM đã bật và chạy với VM version 10.

 

Chúc các bạn thành công vượt qua được các lỗi về không tương thích phiên bản Microsoft Windows, Veeam, VMware … !

Cập nhật vá lỗi, nâng cấp phiên bản cho ESXi Host 6.5, PSC và vCenter Appliance 6.5


Hiện nay, các phiên bản ESXi Host 6.5, vCenter Appliance 6.5 đang bị các lỗi liên quan tới Adobe Flash:

  • Thường xuyên bị Flash Crash.
  • Thường xuyên làm lỗi màn quản trị Web Sphere.
  • Thậm trí bộ cài phiên bản đầu tiên của vSphere 6.5 vCenter không thể Deploy trên ESXi Host được (lỗi kỳ cục về root not set password, 80% deploy thì dừng, không vMotion các VM từ Local Storage sang Share Storage, mất màn chọn Location Storage khi Migrate…)

Tôi xin hướng dẫn cách nâng cấp, vá lỗi ESXi Host 6.5 và PSC/VCVA 65 phiên bản đầu tới bản cập nhật mới nhất để chấm dứt tình trạng lỗi nói trên.

Phần 1. Nâng cập ESXi Host 6.5

Cách 1. Nếu các ESXi Host có thể truy cập internet:

Chỉ cần dùng PuTTy kết nối qua cổng SSH 22, bạn có thể truy cập user: root và nhập lệnh cập nhật qua Web service:

esxcli network firewall ruleset set -e true -r httpClient

esxcli software profile update -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml -p ESXi-6.5.0-20170702001-standard

esxcli network firewall ruleset set -e false -r httpClient

Cách 2. Nếu ESXi Host không được quyền truy cập Internet:

Bước 1. Download các bản vá lỗi ESXi host bằng cách download file .zip deposit:

 

Bước 2:

Sau khi download file zip về:

  • Dùng WINSCP truy cập cổng SSH 22 và đẩy file zip lên 1 thư mục ví dụ: /vmfs/volumes/ của ESXi Host cần nâng cấp.
  • Dùng PuTTy truy cập cổng SSH 22 của từng ESXi Host và gõ lệnh sau:

esxcli software vib update -d file:///vmfs/volumes/59edf30e-29595789-1d70-0050569e811c/ESXi650-201710001.zip

Bước 3:

Sau khi hoàn thành lệnh nâng cấp, kiểm tra phía trên kết quả log có yêu cầu reboot.

Bước 4. Dùng Web Sphere truy cập ESXi host, mục System kiểm tra phiên bản mới:

ESXi Host version build 6765664 (update 5.Oct.2017)

 

Phần 2. Nâng cập PSC hoặc VCVA 6.5

Bước 1. Download bộ cài ISO của VCVA 6 update 1b từ đường link: https://my.vmware.com/group/vmware/patch#search 

 

Bước 2. Snapshot lại 1 bản của PSC/VCVA hoặc dùng Veeam Backup full máy chủ vCenter Appliance 6.5

Bước 3. Mở PuTTy để kết nối tới SSH, Bash Shell của VCVA

Lưu ý: để dùng được các lệnh VCVA thì không áp dụng Bash Shell, nếu bạn đã mở WINSCP và cấu hình lệnh cho PuTTy dạng Shell /Bash thì cần thoát chế độ đó bằng lệnh:

chsh -s /bin/appliancesh root

PuTTy sẽ trở về dạng lệnh:

Bước 4. Dùng PuTTy mở VCVA và gõ lệnh:

software-packages install –iso –acceptEulas

Lưu ý: 

– vCenter Appliance có hạn chế thời gian được phép mở lệnh BASH qua port SSH 22 (ngầm định thời gian chễ IDE timeout: 60 giây).

– Dùng WINSCP cần phải cấu hình PuTTy mở port SSH 22 (không mở trực tiếp bằng SFTP sẽ bị báo lỗi)


– Nếu muốn mở SFTP qua cổng SSH 22 phải dùng PuTTy mở trước.

– Nếu mở PuTTy gõ lệnh ở bước 3.

Accept EULA and wait till patching/updating will be finished:

[2015-04-28T15:15:12.118] : Staging software update packages from ISO
[2015-04-28T15:15:13.118] : ISO mounted successfully
[2015-04-28 15:15:13,198] : Running pre-stage script…..
[2015-04-28T15:15:14.118] : Verifying staging area
[2015-04-28T15:15:14.118] : Validating software update payload
[2015-04-28T15:15:14.118] : Validation successful
[2015-04-28 15:15:51,055] : Processing software packages in update payload 36/36
[2015-04-28T15:16:18.118] : ISO unmounted successfully
[2015-04-28T15:16:18.118] : (34) packages staged successfully
[2015-04-28 15:16:18,694] : Running test transaction ….
[2015-04-28 15:16:24,707] : Running pre-install script…..
[2015-04-28T15:18:23.118] : Services stopped.
[2015-04-28 15:18:23,082] : Upgrading software packages ….
[2015-04-28 15:21:04,355] : Running post-install script…..
[2015-04-28T15:21:05.118] : Packages upgraded successfully, Reboot is required to complete the installation.

 

Bước 5. Dùng Web Sphere client truy cập VCVA và mount CD/DVD file ISO phiên bản nâng cấp

Ghi chú:

  • Bạn dùng trình duyệt web sphere đăng nhập cổng https://ipPSC:5480 đăng nhập bằng user “root” (không thể nâng cấp bằng user administrator@vsphere.local).
  • Nếu bạn cấu hình PSC và vCenter tách riêng thì phải nâng cấp PSC trước rồi mới nâng cấp tiếp theo là vCVA (các bước thực hiện tương tự như trên).


Chọn menu Check updates > Check CDROM


Bước 6. Dùng lệnh Reboot để khởi động lại PSC hoặc vCenter sau khi nâng cấp

shutdown reboot -r updating


 

Bước 7. Kiểm tra lại vCenter đã nâng cấp phiên bản mới:

vCenter Appliance build U1b 6816762 (update 26.Oct.2017)

Chúc các bạn thành công!


 

Phương pháp backup tốt nhất cho Hệ thống VDI VMware Server và Client


Về khái niệm VDI, hay sản phẩm Horizon View của VMware thì tạm thời không phải nói tới chi tiết, chúng ta chỉ cần bàn tới vấn đề Sao lưu, khôi phục các hệ thống dữ liệu cho máy chủ ảo, máy trạm ảo trong đó như thế nào.

Câu hỏi: Có rất nhiều người đã rất ngạc nhiên và thắc mắc rằng đã không thể nào backup được các VM, máy trạm ảo hoá khi đang vận hành trong hệ thống VDI có dùng các thiết bị kết nối theo kiểu PCIe, pass-through như GPU, Full Flash PCIe-16…

Phương án tệ nhất: Những máy ảo có sử dụng loại thiết bị kết nối này sẽ phải Shutdown máy ảo, thậm trí phải tạm thời gỡ bỏ kết nối PCIe thì mới backup được dữ liệu (gây gián đoạn).

Tìm hiểu cách thức mới:

Tôi đã tự hỏi nếu có một phương pháp sao lưu VM Guest có kết nối kiểu passthrough qua thiết bị khe cắm PCIe (như trong trường hợp của chúng tôi hay dùng cho HPC/VDI là các vGPU hoặc pGPU).
Sao lưu các loại VM trên thường xuyên lỗi, do các máy ảo có thiết bị passthrough không thể dùng các VM Snapshots “hay còn gọi là chụp nhanh dữ liệu VM”.

Có còn cách nào để bỏ qua cách chụp nhanh các bản dữ liệu ảnh “VM Snapshots hay còn gọi Backup Snapshots-base” hoặc dùng cách sử dụng VSS mà có thể giúp ta không cần phải shutdown VM Guest “tắt Power VM” ?

Có người nhìn vào câu hỏi trên và nghĩ rằng đó là do phần mềm backup sao lưu thiếu chức năng hỗ trợ cho khả năng sao lưu các dạng dữ liệu kiểu kết nối thiết bị pass-through cho PCIe ?

Thực tế các bạn đã nhầm và đã không bám sát vấn đề rất nguyên lý cơ bản của việc Sao lưu các máy ảo là theo công nghệ VM Snapshots Base, tôi có chia sẻ trước đây bài viết: https://thangletoan.wordpress.com/2017/09/08/tai-sao-vmware-snapshots-alone-khong-phai-la-sao-luu-backup-su-khac-nhau-giua-vm-snapshots-va-veeam-backup-snapshots-base/ và có nhắc tới

Điều gì sẽ xảy ra nếu môi trường của ta không thể áp dụng kiểu ảnh chụp nhanh VM Snapshots?

Rất nhiều các hạ tầng kỹ thuật ngày này sẽ không thể áp dụng kỹ thuật VM Snapshot, đơn giản vì chúng là các:

  1. Máy tính vật lý – Physical Machine.
  2. Các hệ thống siêu máy tính vật lý – HPC.
  3. Các thiết bị đòi hỏi lưu trữ tốc độ cao và có sử dụng GPU như Camera IP có phân tích nhận dạng hình ảnh bằng GPU.
  4. Các máy chủ vật lý hoặc Ảo hoá chạy trên môi trường cấu hình Cluster Failover/Cluster HA.
  5. Các hình thức lưu trữ dạng đọc ghi Quorum disk, Cluster Node Hard disk.
  6. Raw device mapping – RDM (cả ở dạng ảo hoá – vRDM hay vật lý – pRDM).
  7. Oracle RAC.
  8. MS SQL Cluster Node.
  9. Exchange DAG cluster Mailbox.

Câu trả lời được trả lời bằng câu hỏi làm rõ hơn vấn đề ?

Các dạng dữ liệu được hình thành từ kiểu kết nối Pass-through device sẽ tự động bị bỏ qua khi xử lý backup, có 2 loại là:

– Pass-through device cho Graphic processor passed to VM Direct và

– Pass-through Disk như kiểu Quorum disk/ RDM), vì chúng không thể bị chụp nhanh kiểu Snapshots base.

Vậy bạn có muốn sao lưu máy ảo trên bằng cấp độ tập tin File – Level? hay vẫn quyết tâm backup cho được máy ảo bằng VM- Level ? không được tắt các VM khi chúng đang vận hành ?

Chốt nguyên nhân: Phần mềm Sao lưu như Veeam hoặc các hãng khác đều không hỗ trợ sao lưu ở cáp độ Guest- Level mà chúng luôn xử lý sao lưu ở cấp độ Hypervisor- Level và dùng thư viện VADP libraries kiểu như VMware snapshots, do vậy cho dù bạn có dùng PowerShell Script, khai báo Virtual Host Infrastructure trong Veeam Backup Manager Console đầy đủ, hợp lệ cũng không thể backup được các VM loại này.

 

Tóm lại – Bottom line:

Bạn có thể thử sao lưu các máy ảo như vậy từ bên trong bằng cách sử dụng Veeam Endpoint Backup hoặc Veeam Agent Backup for Windows hoặc Veeam Agent backup for Linux.

 

Chúc các bạn thành công!

Lỗi gì khi đặt tên Domain SSO trong PSC 6.0 và vCSA 6.0 trùng với tên domain AD-DC


Theo thói quen của chúng ta, việc khởi tạo tên miền trong mạng nội bộ Doanh nghiệp thường gắn liền với việc quản lý và theo chuẩn HĐH.

  • Lưu ý 1: chúng ta hay dùng Microsoft Windows Server từ 2000 đến 2016 làm Domain Controller, do vậy sẽ có ít nhất 1 tên miền nội bộ.

    (thậm trí cũng có bạn lại đi đặt tên miền này trùng với tên miền web site của Doanh nghiệp, tuy không thấy lỗi gì ở trên internet nhưng nó cũng làm cho chúng ta nhiều rắc rối, nhầm lẫn khi bảo mật và phân dải tên miền trong nội bộ).

  • Lưu ý 2: Khi chúng ta ảo hóa hạ tầng Data Center của Doanh nghiệp, chúng ta lại tiếp tục cần có ít nhất 1 Domain SSO nữa cho hệ thống “Platform Service Controller và vCenter Server”.

Nếu xét về khía cạnh quản lý thì 3 cái cụm từ Domain Name này là hoàn toàn khác nhau, và chúng ta nên đặt tên khác nhau:

Gợi ý 1:

  • Domain name cho Website mà Doanh nghiệp thuê của VNNIC sẽ là 1 tên miền khác, ví dụ: datacenterA.vn.

Gợi ý 2:

  • Domain name cho Tên miền mạng nội bộ đặt tại Hệ thống Data Center của Doanh nghiệp sẽ là 1 tên miền khác, ví dụ: datacenterHanoi.local.

Gợi ý 3:

  • Domain name cho Tên miền mạng ảo hóa đặt tại Hệ thống Virtualization Data Center của Doanh nghiệp sẽ là 1 tên miền khác, ví dụ: datacenterHanoi.vsphere.

 

Nhắc nhở thế đủ rồi, giờ ta thử tình huống không làm theo 3 gợi ý trên và (3 cái tên Domain name trên đều là 1 cái tên bạn đặt) thì sẽ có vấn đề gì nhé!

  1. Cài hoàn toàn bình thường PSC, vCSA chạy ổn định.
  2. Khi nhu cầu kết nối LDAP để xác thực users/groups từ AD-DC và có quyền truy xuất hệ thống Ảo hóa thì có vấn đề kết nối.

Trên màn hình cầu hình của Vcsa 6.0 đã có 2 nhóm user ngầm định cho phép truy xuất gồm:

  • Nhóm 1: LocalOS (bao gồm 3 user thuộc kiểu Administrator Roles: root, vpxuser, dcui).
  • Nhóm 2: vsphere.local (chúng ta đã vô tình đặt tên miền này trùng với AD-DC, ví dụ: archibuslab.local).

Chúng ta cần thêm nhóm 3: Users/Groups từ AD-DC bằng kết nối giao thức Windows Authenticate (Join Domain) hoặc LDAP hoặc OpenLDAP.

Mặc dù chúng ta đã join domain thành công giữa PSC 6.0 với AD-DC ở bước 1.

Đến bước 2: chúng ta tạo kết nối từ PSC tới AD theo 2 kiểu sau:

Kiểu 1: Active Directory (Integrated Windows Authentication)

 

Kiểu 2: Kết nối AD – LDAP Server

Bấm nút Test Connection thành công.

Nhưng lỗi vẫn xẩy ra do phần SSO Administrator đã đăng ký cho PSC 6.0 và vCSA 6.0 cũng có domain trùng tên với AD-DC (archibuslab.local)

Chúc các bạn không mắc phải lỗi theo thói quen “3 in 1” viết trên đây!