Exchange, مایکروسافت

نحوه فعال‌سازی Exchange Maintenance Mode

کمتر از یک دقیقه برای خواندن

انجام تغییرات اساسی بر روی Exchange Server یا به‌روزرسانی آن می‌تواند منجر به بروز مشکلاتی از جمله خرابی پایگاه‌داده و قطعی سرویس شود؛ بنابراین توصیه می‌شود قبل از انجام تغییرات در سرور Exchange، آن را در وضعیت تعمیر و نگهداری (Maintenance Mode) قرار دهید. وضعیت تعمیر و نگهداری معمولاً زمانی به کار می‌آید که ادمین باید به‌روزرسانی‌های امنیتی ( SU ها) و یا به‌روزرسانی‌های تجمعی (CU ها) را نصب کند.

 Exchange Maintenance Mode وضعیتی است که در آن تمام خدمات و اجزای Exchange در حالت غیرفعال قرار گرفته و فعالیت‌های سرور به طور موقت به حالت تعلیق درمی‌آید. به‌خصوص در محیط DAG شما باید قبل از شروع به‌روزرسانی حالت تعمیر و نگهداری را برای سرور موردنظر فعال کرده و تمامی وظایف آن را به سرورهای دیگر محول کنید.

البته بسیاری از ادمین‌ها این روش را دنبال نمی‌کنند و سرورهای خود را بدون قراردادن در وضعیت تعمیر و نگهداری بروز می‌کنند. اگرچه گاهی اوقات این به‌روزرسانی‌ها با موفقیت انجام می‌گردند؛ اما همواره با ریسک همراه بوده و به هیچ عنوان توصیه نمی‌شود.

فعال‌سازی وضعیت تعمیر و نگهداری از طریق چند دستور PowerShell قابل انجام است که در ادامه مراحل فعال‌سازی همچنین غیرفعال‌کردن حالت تعمیر و نگهداری را ذکر خواهیم کرد.

در این سناریو دو سرور Exchange به نام‌های Ex01 و Ex02 داریم  که هر دو عضو DAG هستند. می‌خواهیم سرور اول را به حالت تعمیر و نگهداری ببریم. برای این کار باید وظایف سرور اول و دیتابیس‌های فعال آن را به سرور دوم انتقال دهیم. حتماً قبل از شروع از دیتابیس‌های فعال، کپی‌ها و سروری که آنها را نگهداری می‌کند اطلاع کامل داشته باشید.

  • ابتدا وارد EX01 شوید و Exchange Management Shell را با دسترسی ادمین اجرا کنید و سرویس Hub Transport را روی حالت Draining تنظیم کنید. پس از اجرای این دستور این سرور هیچ پیام جدیدی را نمی‌پذیرد.
				
					[PS] C:\>Set-ServerComponentState -Identity "EX01" -Component HubTransport -State Draining -Requester Maintenance
				
			
  • پیام‌هایی که در صف وجود دارند را به سمت سرور EX02 هدایت کنید. نام سرور مقصد باید به‌صورت FQDN وارد شود. دقت کنید که سرور مقصد نباید در حالت تعمیر و نگهداری باشد.
				
					[PS] C:\>Redirect-Message -Server "EX01" -Target "EX02.bsvd.lan"

Confirm
Are you sure you want to perform this action?
Redirecting messages to "EX02.bsvd.lan".
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [?] Help (default is "Y"): Y

				
			
  • چون سرور ما عضو DAG است، با دستور زیر عضویت آن را از DAG معلق کنید.
				
					[PS] C:\>Suspend-ClusterNode "EX01"

Name            ID    State
----            --    -----
EX01           1     Paused
				
			
  • در این مرحله باید مطمئن شویم هیچ پایگاه‌داده فعالی روی سرور EX01 وجود نداشته باشد.

به‌وسیله دستور زیر فعال‌سازی خودکار کپی پایگاه‌داده را روی سرور اول غیرفعال کنید. این دستور هرگونه کپی پایگاه‌داده فعال را به سایر سرورهای عضو DAG انتقال می‌دهد.

				
					[PS] C:\>Set-MailboxServer "EX01" -DatabaseCopyActivationDisabledAndMoveNow $true
				
			
  • پالیسی فعال‌سازی خودکار پایگاه‌داده در سرور را چک کرده و یادداشت کنید. تا بتوانید بعداً آن را به این مقدار برگردانید. مقدار پیش‌فرض آن Unrestricted است.
				
					[PS] C:\>Get-MailboxServer "EX01" | Select DatabaseCopyAutoActivationPolicy

DatabaseCopyAutoActivationPolicy
--------------------------------
                    Unrestricted

				
			
  • حالا برای جلوگیری از فعال‌شدن خودکار دیتابیس‌ها مقدار آن را به Blocked تغییر می‌دهیم.
				
					[PS] C:\>Set-MailboxServer "EX01" -DatabaseCopyAutoActivationPolicy Blocked
				
			
  • شاید مدتی طول بکشد تا پایگاه‌داده‌های Active جابه‌جا شوند. با دستور زیر وضعیت کپی پایگاه‌داده‌هایی که هنوز روی سرور Mount هستند را بررسی کنید. این دستور نباید هیچ نتیجه‌ای را برگرداند. اگر هنوز روی سرور پایگاه‌داده فعالی وجود دارد و کپی آن روی دیگر سرورهای DAG قرار دارد، می‌توانید از طریق کنسول Admin Center به‌صورت دستی Switchover کنید.
				
					[PS] C:\>Get-MailboxDatabaseCopyStatus -Server "EX01" | Where {$_.Status -eq "Mounted"} | ft -AutoSize
				
			

هنگامی که پایگاه‌داده‌های فعال منتقل شدند، صف ارسال و دریافت را بررسی می‌کنیم. صف‌ها باید تقریباً خالی باشند، به دلیل اینکه همه اجزای سرور را غیرفعال خواهیم کرد ایمیل‌هایی که هنوز در صف‌ها هستند، تا زمانی که سرور از حالت تعمیر و نگهداری خارج نشود، تحویل نخواهند شد.

				
					[PS] C:\>Get-Queue

Identity        DeliveryType               Status MessageCount Velocity RiskLevel OutboundIPPool NextHopDomain
--------        ------------               ------ ------------ -------- --------- -------------- -------------
EX01\4          SmtpDeliveryToMailbox      Ready  0            0        Normal    0              db2
EX01\8          SmtpDeliveryToMailbox      Ready  0            0        Normal    0              db4
EX01\15         SmartHostConnectorDelivery Ready  0            0        Normal    0              mx1.spambull.com
EX01\20         SmtpDeliveryToMailbox      Ready  0            0        Normal    0              db5
EX01\22         SmartHostConnectorDelivery Ready  0            0        Normal    0              mx2.spambull.com
EX01\Submission Undefined                  Ready  0            0        Normal    0              Submission
EX01\Shadow\3   ShadowRedundancy           Ready  0            0        Normal    0              ex02.basvd.lan

				
			
  • حالا با دستور زیر سرور EX01 را در حالت تعمیر و نگهداری قرار دهید.
				
					[PS] C:\>Set-ServerComponentState "EX01" -Component ServerWideOffline -State Inactive -Requester Maintenance
				
			
  • به‌وسیله دستور زیر بررسی کنید که آیا Exchange Server EX01 در حالت تعمیر و نگهداری قرار گرفته است. در این حالت همه مؤلفه‌ها به جز Monitoring و RecoveryActionsEnabled باید غیرفعال شده باشند.
				
					[PS] C:\>Get-ServerComponentState "EX01" | Select Component, State

Component                     State
---------                     -----
ServerWideOffline          Inactive
HubTransport               Inactive
FrontendTransport          Inactive
Monitoring                   Active
RecoveryActionsEnabled       Active
AutoDiscoverProxy          Inactive
ActiveSyncProxy            Inactive
EcpProxy                   Inactive
EwsProxy                   Inactive
ImapProxy                  Inactive
OabProxy                   Inactive
OwaProxy                   Inactive
PopProxy                   Inactive
PushNotificationsProxy     Inactive
RpsProxy                   Inactive
RwsProxy                   Inactive
RpcProxy                   Inactive
UMCallRouter               Inactive
XropProxy                  Inactive
HttpProxyAvailabilityGroup Inactive
ForwardSyncDaemon          Inactive
ProvisioningRps            Inactive
MapiProxy                  Inactive
EdgeTransport              Inactive
HighAvailability           Inactive
SharedCache                Inactive
MailboxDeliveryProxy       Inactive
RoutingUpdates             Inactive
RestProxy                  Inactive
DefaultProxy               Inactive
Lsass                      Inactive
RoutingService             Inactive
E4EProxy                   Inactive
CafeLAMv2                  Inactive
LogExportProvider          Inactive

				
			
  • پس از انجام به‌روزرسانی، به‌وسیله دستورات زیر می‌توانید سرور را از وضعیت تعمیر و نگهداری خارج نمایید.
				
					[PS] C:\>Set-ServerComponentState "EX01" -Component ServerWideOffline -State Active -Requester Maintenance

[PS] C:\>Resume-ClusterNode -Name "EX01"

[PS] C:\>Set-MailboxServer "EX01" -DatabaseCopyAutoActivationPolicy Unrestricted

[PS] C:\>Set-MailboxServer "EX01" -DatabaseCopyActivationDisabledAndMoveNow $false

[PS] C:\>Set-ServerComponentState "EX01" -Component HubTransport -State Active -Requester Maintenance

				
			

  • در پایان حتماً از وضعیت سلامت و صحت کارکرد سرور اطمینان حاصل کنید.


دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

برای دریافت خبرنامه ما ثبت نام کنید...

به خبرنامه ما بپیوندید و منابع، محتوای انتخاب شده و الهامات طراحی را مستقیماً در صندوق ورودی خود دریافت کنید.

پست های مرتبط