Chuyển mailbox trong Exchange 2007 thông qua Exchange Management Console Phần 2 Trong phần 1 của bài báo này, chúng tôi đã giới thiệu về tiện ích Move Mailbox có trong Exchange Manageme
Trang 1Chuyển mailbox trong Exchange 2007 thông qua Exchange Management
Console (Phần 2)
Trong phần 1 của bài báo này, chúng tôi đã giới thiệu về tiện ích Move
Mailbox có trong Exchange Management Console cũng như các bản ghi sự kiện khác được ghi khi các mailbox được chuyển trong Exchange 2007 Tuy tiện ích Move Mailbox cung cấp một giao diện đơn giản để thực hiện công việc chuyển mailbox giữa các cơ sở dữ liệu và máy chủ nhưng nó vẫn thiếu một số các thiết lập thông thường mà các quản trị viên cần tới Các tham số báo cáo này có thể thu được bằng cách sử dụng Exchange Management Shell để
chuyển các mailbox Cuối phần hai của bài này chúng tôi sẽ giới thiệu cho các bạn một số tham số chính có thể sử dụng Bây giờ, chúng ta hãy quan sát các file bản ghi được tạo ra bởi quá trình chuyển mailbox
Các file bản ghi của Move Mailbox
Quá trình chuyển mailbox của Exchange 2007 sinh ra một số file XML và LOG mỗi khi một lần chuyển được thực hiện Bạn có thể tìm các file này trong thư mục mặc định \Program Files\Microsoft\Exchange
Server\Logging\MigrationLogs, xem hình 14
Hình 14: Các file bản ghi của Exchange 2007 Move Mailbox
Cả hai loại file này đều có các thông tin về quá trình chuyển mailbox vừa mới được thực hiện Các ví dụ về file log và xml được thể hiện trong hình 15 và
16
Trang 2Hình 15: Nội dung các file bản ghi
Trang 3Hình 16: Nội dung các file XML
Việc đọc các file bản ghi hoàn toàn dễ dàng hơn file XML trong định dạng thô
vì đây không luôn là thứ đơn giản nhất để thực hiện Một câu trả lời cho vấn đề
đó là áp dụng một style sheet Chúng tôi sẽ giới thiệu lại về Exchange 2003 một chút để có thể chỉ ra cho bạn một ví dụ về trường hợp này Quá trình
chuyển mailbox của Exchange 2003 sinh ra các file XML theo kiểu tương tự như quá trình thực hiện trong Exchange 2007 Exchange Server 2003 SDK (có thể download được ở đây) có một XSLT style sheet mà bạn có thể sử dụng để thay đổi cách xem file XML được sinh ra trong quá trình chuyển mailbox Vấn
đề này sẽ cho bạn có được ý tưởng về những gì có thể làm với style sheet Rõ ràng style sheet đã cung cấp SDK chỉ làm việc với các file XML của Exchange
2003, chính vì vậy bạn sẽ cần phải tự tạo cho chính bản thân mình các file XML của Exchange 2007, hoặc có lẽ một style sheet tương tự sẽ được phát hành bởi Microsoft Nếu download và cài đặt Exchange Server 2003 SDK bạn
sẽ tìm thấy style sheet với tên gọi là TaskWizardRun.xslt ở phía dưới thư mục mặc định \Program Files\Exchange SDK\SDK\Samples\TaskWizard Để áp dụng style sheet cho file XML, tất cả những gì bạn cần thực hiện là thay đổi file XML Ví dụ, hình 17 minh chứng về file XML của Exchange 2003 gốc đã
Trang 4được mở trong Notepad
Hình 17: File XML của Exchange 2003 trong Notepad Chú ý ở dòng thứ hai được bắt đầu với <taskWizardRun Để áp dụng style sheet, bạn chỉ cần thêm dòng sau vào trước dòng “taskWizardRun”:
<?xml-stylesheet type="text/xsl" href="TaskWizardRun.xslt"?>
File XML cuối cùng sẽ giống như file được thể hiện trong hình 18, với phần văn bản được bổ sung đã được đánh dấu
Hình 18: File XML của Exchange 2003 đã được thay đổi
Điều này có nghĩa rằng, khi mở file XML trong Internet Explorer, nó sẽ giống như ví dụ hiển thị trong hình 19 Hãy xem xem bạn có gây ra một lỗi chính tả nào đó không với style sheet
Trang 5Hình 19: File XML của Exchange 2003 với style sheet Chuyển Mailbox thông qua Exchange Management Shell
Khi sử dụng Exchange Management Shell để chuyển mailbox, cmdlet để sử dụng là Move-Mailbox cmdlet Khi sử dụng cmdlet này, có nhiều tham số được cung cấp cho quản trị viên Exchange mà không được cung cấp trong Exchange Management Console Trong phần cuối của bài này, chúng tôi sẽ giới thiệu một số tham số thú vị để bạn có thể tham khảo và sử dụng
Đầu tiên, chúng ta hãy xem xét đến vấn đề chuyển đơn giản một mailbox từ máy chủ Exchange 2003 sang máy chủ Exchange 2007 trong cùng một forest Trong định dạng cơ bản của nó, cmdlet để thực hiện nhiệm vụ này cho mailbox của User3 là:
Move-Mailbox User3 –TargetDatabase “E2K7\First Storage Group\Mailbox Database” –Confirm:$false
Rõ ràng, tham số chính ở đây làTargetDatabase, tham số này trong ví dụ trên được cấu hình để chuyển mailbox đến một cơ sở dữ liệu mailbox khác có tên là Mailbox Database bên trong nhóm lưu trữ có tên gọi là First Storage Group
Trang 6trên máy chủ Exchange 2007 có tên gọi là E2K7 Nếu thực thi cmdlet này thì bạn sẽ thấy được trạng thái của hoạt động khi nó tiến hành thông qua các thư mục và chuyển các thư tín qua đó Vấn đề này được thể hiện rất rõ trong hình
20 Lưu ý việc sử dụng tham số –Confirm:$false, đây là tham số để bảo đảm cho bạn không bị nhắc nhở hỏi có chắc chắn không ‘Are you sure?’ trước khi mailbox được chuyển một cách thực sự
Hình 20: Mailbox đang được chuyển thông qua Management Shell
Tham số –ValidateOnly là một tham số rất hữu dụng nếu bạn muốn xem
mailbox nào có thể được chuyển mà không cần chuyển nó Trong hình 21, bạn
có thể thấy được chạy Move-Mailbox cmdlet với tham số –ValidateOnly,
thuộc tính Status Message được thể hiện là “This mailbox can be moved to the target database" (Mailbox này có thể được chuyển đến cơ sở dữ liệu mục tiêu)
Hình 21: Các kết quả thu được từ tham số ValidateOnly
Sau một chuyển rời mailbox thành công, thuộc tính Status Message sẽ được thiết lập là “This mailbox has been moved to the target database” (Mailbox này
đã được chuyển đến cơ sở dữ liệu mục tiêu)
Trang 7Bạn cần biết rằng tiện ích Move Mailbox chạy từ bên trong Exchange
Management Console là đa luồng và bị hạn chế ở con số luồng tối đa là 4 Bạn
có thể tăng số luồng này nếu sử dụng Exchange Management Shell để chuyển các mailbox Tham số cụ thể mà bạn cần sử dụng là tham số –MaxThreads, tham số này có giá trị lớn nhất là 30 Tuy vậy, trước khi bạn thiết lập tham số này đạt giá trị lớn nhất (30), bạn hãy cân nhắc về hiện tượng tắc nghẽn cổ chai
sẽ thế nào nếu thực hiện điều đó và do đó lợi ích thu được của bạn sẽ như thế nào
Bây giờ chúng ta hãy xem xét đến trường hợp bạn muốn chuyển tất cả các mailbox trên kho lưu trữ mailbox mặc định của một máy chủ Exchange 2003
có tên DCEXCH đến máy chủ Exchange 2007 server có tên E2K7 Tên kho lưu trữ mailbox trên máy chủ Exchange 2003 trong ví dụ này là Mailbox Store (DCEXCH) Trong trường hợp này, chúng tôi muốn chuyển 10 mailbox đồng thời cùng một lúc Cmdlet để thực hiện sẽ là:
Get-Mailbox –Database “DCEXCH\First Storage Group\Mailbox Store
(DCEXCH)” | Move-Mailbox –TargetDatabase “E2K7\First Storage
Group\Mailbox Database” –MaxThreads 10
Phần đầu sử dụng Get-Mailbox cmdlet để lấy lại tất cả các mailbox đã được lưu trữ trên cơ sở dữ liệu của máy chủ Exchange 2003 Vấn đề này được cho phép bởi Move-Mailbox cmdlet, tuy nhiên lưu ý thêm về tham số –
MaxThreads 10 ở phần cuối Kết quả thu được của quá trình thực hiện được thể hiện trong hình 22
Trang 8Hình 22: Việc chuyển tới hơn 4 mailbox đồng thời
Như đã nói từ trước, trong bài này chúng tôi đã mô tả chi tiết các file XML được sinh ra khi các mailbox được chuyển và vị trí mặc định của các file này là thư mục \Program Files\Microsoft\Exchange Server\Logging\MigrationLogs Nếu bạn muốn thay đổi vị trí của file bản ghi XML thì có thể thực hiện được với Exchange Management Shell thông qua tham số –ReportFile Lưu ý rằng bạn cần phải gộp cả đường dẫn đầy đủ và tên file trong tham số đó Nếu tên thư mục đó không tồn tại thì nó sẽ được tạo mới Một ví dụ về cmdlet trong chuyển mailbox của User3 và ghi các kết quả chuyển vào
C:\MigLogs\mailboxes.xml là:
Move-Mailbox User3 –TargetDatabase “E2K7\First Storage Group\Mailbox Database” –ReportFile C:\MigLogs\mailboxes.xml –Confirm:$false
Cuối cùng, bạn có thể nhớ từ phần một của bài là tiện ích Move Mailbox có trong Exchange Management Console cho phép có thể chỉ định số các mục bị sửa đổi mà bạn sẽ bị ảnh hưởng khi chuyển mailbox Rõ ràng thiết lập như vậy cũng tồn tại bên trong Exchange Management Shell dưới biểu mẫu tham số – BadItemLimit Chúng tôi cũng đã nói trong phần một của bài về giá trị lớn nhất mà bạn có thể đặt là 2,147,483,647, Giá trị tối thiểu là 0
Kết luận
Trong phần kết luận của phần một, chúng tôi đã nói rằng việc chuyển các
mailbox thông qua Exchange Management Console có thể được thực hiện một cách khá dễ dàng Bên cạnh đó việc tiến hành chuyển trên Exchange
Management Shell cũng thực sự không có gì phức tạp và không có gì làm chúng ta phải nghi ngờ rằng việc sử dụng Shell sẽ được ưu tiên hơn bởi nhiều quản trị viên do các tùy chọn cấu hình mở rộng được cung cấp bên trong nó Văn Linh (Theo MsExchange)