{"id":325,"date":"2019-03-27T15:54:23","date_gmt":"2019-03-27T20:54:23","guid":{"rendered":"http:\/\/itblog.ldlnet.net\/?p=325"},"modified":"2019-03-27T15:56:02","modified_gmt":"2019-03-27T20:56:02","slug":"installation-of-exchange-server-2019-on-windows-server-2019","status":"publish","type":"post","link":"https:\/\/itblog.ldlnet.net\/index.php\/2019\/03\/27\/installation-of-exchange-server-2019-on-windows-server-2019\/","title":{"rendered":"Installation of Exchange Server 2019 on Windows Server 2019"},"content":{"rendered":"\n<p>I have realized recently that I am an Exchange Messaging Professional, but yet, I have not posted the methodology of how I install an Exchange Server Mailbox Role. So here it is!<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" style=\"text-align:left\">Install Windows Server 2019<\/h3>\n\n\n\n<p>Exchange Server 2019 requires Windows Server 2019 to run. For my environment, I haven&#8217;t necessarily need to follow all the enterprise level design aspects of database numbers to mailbox size ratios, number of servers, front\/back end configurations, DAG Implementation, etc&#8230; If you want or need to delve into that realm, you can go <strong><a aria-label=\"here (opens in a new tab)\" href=\"https:\/\/docs.microsoft.com\/en-us\/exchange\/plan-and-deploy\/deployment-ref\/preferred-architecture-2019?view=exchserver-2019\" target=\"_blank\" rel=\"noreferrer noopener\">here<\/a><\/strong>. I have need for a single server with only a few databases for a small number of mailboxes, so I am approaching it from that standpoint.<\/p>\n\n\n\n<p>So first, in Hyper-V, I configured my VM with the following specifications:<\/p>\n\n\n\n<p class=\"has-small-font-size\">Processors: 2 procs with 2 cores each &#8211; 4 Virtual Processors Total<br>RAM: 32GB with dynamic memory enabled optional<br>Drives: 2 .vhdx drives of 120GB each (OS \/ Exchange Data)<br>CD: Windows 2019 ISO<br>Default Settings for the rest of the VM Settings<\/p>\n\n\n\n<p>Next I installed Windows Server 2019 Datacenter <em>with the GUI! <\/em>You can install it on Server Core if you wish. That information can be found in <strong><a aria-label=\"this link (opens in a new tab)\" href=\"http:\/\/www.expta.com\/2018\/07\/how-to-install-exchange-server-2019-on.html\" target=\"_blank\" rel=\"noreferrer noopener\">this link.<\/a><\/strong><\/p>\n\n\n\n<p>I ran through the setup of Windows and installed the OS on my first vhdx drive. I booted up, set the local admin password, and logged in. Once in Windows, I went to the Local Server Settings in Server Manager and configured the following settings:<\/p>\n\n\n\n<p class=\"has-small-font-size\">Set the Date, Time, and Time Zone. (Once in the Domain, this would sync through Group Policy)<br>Set IE ESC to allow Administrators to have full IE access.<br>Set Remote Desktop Settings to gain RDP access. (This would be locked down with Group Policy as well once on the Domain)<br>Set the IP Settings to Static Settings. (DNS Servers, Gateway, WINS, etc&#8230;)<br>Join the server to the Active Directory Domain.<br>Reboot the VM Server.<br>Logon to your Domain.<br>Configure Windows Update Settings. (I have WSUS through Group Policy, this was configured automatically upon reboot)<br>Download and install <strong><em>all<\/em><\/strong> Windows Updates for the server. Then Reboot.<br>Open Disk Management and configure the secondary vhdx drive to be your Exchange Data Drive.<br><em>I configured the drive to be a mounted folder &#8216;C:\\Exchange\\Data&#8217; rather than another drive letter as that seems to be the more accepted form of installation for the data drive these days. That is based on the multiple configurations that I have seen for Exchange through experience in Enterprise environments. Again, to each is own and depending on you design specifications, you might want to do that differently.<\/em><\/p>\n\n\n\n<p>Next, we need to install the prerequisites for the Exchange Mailbox Server. I have always used <em><strong><a aria-label=\"practical365.com (opens in a new tab)\" href=\"https:\/\/practical365.com\/exchange-server-2019\/\" target=\"_blank\" rel=\"noreferrer noopener\">practical365.com<\/a><\/strong><\/em> to get the PowerShell script to install the prerequisites, but couldn&#8217;t find the article this time. Great site though! Instead, I got the information and ran the following from an elevated PowerShell Session locally on the server:<\/p>\n\n\n<pre class=\"lang:PowerShell nums:False\" title=\"PowerShell Exchange 2019 Mailbox Server Prerequisites\">Install-WindowsFeature Web-WebServer,Web-Common-Http,Web-Default-Doc,Web-Dir-Browsing,Web-Http-Errors,Web-Static-Content,Web-Http-Redirect,Web-Health,Web-Http-Logging,Web-Log-Libraries,Web-Request-Monitor,Web-Http-Tracing,Web-Performance,Web-Stat-Compression,Web-Dyn-Compression,Web-Security,Web-Filtering,Web-Basic-Auth,Web-Client-Auth,Web-Digest-Auth,Web-Windows-Auth,Web-App-Dev,Web-Net-Ext45,Web-Asp-Net45,Web-ISAPI-Ext,Web-ISAPI-Filter,Web-Mgmt-Tools,Web-Mgmt-Compat,Web-Metabase,Web-WMI,Web-Mgmt-Service,NET-Framework-45-ASPNET,NET-WCF-HTTP-Activation45,NET-WCF-MSMQ-Activation45,NET-WCF-Pipe-Activation45,NET-WCF-TCP-Activation45,Server-Media-Foundation,MSMQ-Services,MSMQ-Server,RSAT-Feature-Tools,RSAT-Clustering,RSAT-Clustering-PowerShell,RSAT-Clustering-CmdInterface,RPC-over-HTTP-Proxy,WAS-Process-Model,WAS-Config-APIs<\/pre>\n\n\n\n<p>As part of the prerequisites you will need to install the following packages onto the server as well:<\/p>\n\n\n\n<p class=\"has-small-font-size\"><strong><a aria-label=\"UCMA Runtime Install (opens in a new tab)\" href=\"https:\/\/www.microsoft.com\/en-us\/download\/details.aspx?id=47344\" target=\"_blank\" rel=\"noreferrer noopener\">UCMA Runtime Install<\/a><\/strong><br><strong><a aria-label=\"Visual C++ Redistributable Packages for Visual Studio 2013 (opens in a new tab)\" href=\"https:\/\/www.microsoft.com\/en-in\/download\/details.aspx?id=40784\" target=\"_blank\" rel=\"noreferrer noopener\">Visual C++ Redistributable Packages for Visual Studio 2013<\/a><\/strong><\/p>\n\n\n\n<p>Once completed, you can begin the install of Exchange. If this is your first <em><strong><a aria-label=\"Exchange 2019 Server (opens in a new tab)\" href=\"https:\/\/docs.microsoft.com\/en-us\/Exchange\/plan-and-deploy\/deploy-new-installations\/unattended-installs?view=exchserver-2019\" target=\"_blank\" rel=\"noreferrer noopener\">Exchange 2019 Server<\/a><\/strong><\/em> in your Organization, then you will need to run the following to update the Forest, Schema, and Domain so that Exchange will install properly:<\/p>\n\n\n<pre class=\"lang:PowerShell nums:False\" title=\"PowerShell Exchange 2019 Setup Prepare Active Directory\">setup.exe \/p \/IacceptexchangeServerLicenseTerms<\/pre>\n<pre class=\"lang:PowerShell nums:False\" title=\"PowerShell Exchange 2019 Setup Prepare The Schema\">setup.exe \/ps \/IacceptexchangeServerLicenseTerms<\/pre>\n<pre class=\"lang:PowerShell nums:False\" title=\"PowerShell Exchange 2019 Setup Prepare The Domain\">setup.exe \/pad \/IacceptexchangeServerLicenseTerms<\/pre>\n\n\n\n<p class=\"has-text-color has-small-font-size has-medium-pink-color\">NOTE: If you run into Prerequisite issues with the installation due to a &#8220;pending reboot&#8221;, check out my <strong><em><a aria-label=\"blog post (opens in a new tab)\" href=\"http:\/\/itblog.ldlnet.net\/index.php\/2019\/03\/13\/exchange-setup-repeatedly-says-a-restart-from-a-previous-installation-is-pending\/\" target=\"_blank\" rel=\"noreferrer noopener\">blog post<\/a><\/em><\/strong><em> <\/em>for information on remediation of that issue.<\/p>\n\n\n\n<p>Now that the environment is prepared for Exchange, you can actually begin the installation. I wanted to make my default database and logs folder to be on the Exchange Data volume that I created, so I included those settings in the setup command. Please look at the reference to the setup.exe switches for more information on that. Here is the command:<\/p>\n\n\n<pre class=\"lang:PowerShell nums:False\" title=\"PowerShell Exchange 2019 Setup Install The Mailbox Role\">setup.exe \/Mode:Install \/IacceptexchangeServerLicenseTerms \/Role:Mailbox \/DBFilePath:\"C:\\Exchange\\Data\\MDB\\EX2019-DB01.edb\" \/LogFolderPath:\"C:\\Exchange\\Data\\LOGS\" \/MdbName:\"EX2019-DB01\"<\/pre>\n\n\n\n<p>Setup should go through the installation via the PowerShell window and complete successfully. Reboot the Exchange Server, then you can then logon to the Exchange Admin Center and begin the process of configuration of how you need to integrate the Mailbox Server into your Server Farm. That configuration is for a later post.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" style=\"text-align:center\">PLEASE CHECK BACK FOR UPDATES!<br>PLEASE COMMENT!<\/h2>\n\n\n\n<p class=\"has-small-font-size\"><em>References:<\/em><br><strong><a href=\"https:\/\/www.microsoft.com\/en-us\/download\/details.aspx?id=47344\" target=\"_blank\" rel=\"noreferrer noopener\">UCMA Runtime Install<\/a><\/strong><br><strong><a href=\"https:\/\/www.microsoft.com\/en-in\/download\/details.aspx?id=40784\" target=\"_blank\" rel=\"noreferrer noopener\">Visual C++ Redistributable Packages for Visual Studio 2013<\/a><\/strong><br><a aria-label=\"Install Exchange Server 2019 on Windows Server 2019 Core (opens in a new tab)\" href=\"http:\/\/www.expta.com\/2018\/07\/how-to-install-exchange-server-2019-on.html\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Install Exchange Server 2019 on Windows Server 2019 Core<\/strong><\/a><br><strong><a aria-label=\"Exchange Server Design Planning (opens in a new tab)\" href=\"https:\/\/docs.microsoft.com\/en-us\/exchange\/plan-and-deploy\/deployment-ref\/preferred-architecture-2019?view=exchserver-2019\" target=\"_blank\" rel=\"noreferrer noopener\">Exchange Server Design Planning<\/a><\/strong><br><strong><a aria-label=\"Use unattended mode in Exchange Setup (opens in a new tab)\" href=\"https:\/\/docs.microsoft.com\/en-us\/Exchange\/plan-and-deploy\/deploy-new-installations\/unattended-installs?view=exchserver-2019\" target=\"_blank\" rel=\"noreferrer noopener\">Use unattended mode in Exchange Setup<\/a><\/strong><br><strong><a aria-label=\"Practical365 on Exchange 2019 (opens in a new tab)\" href=\"https:\/\/practical365.com\/exchange-server-2019\/\" target=\"_blank\" rel=\"noreferrer noopener\">Practical365 on Exchange 2019<\/a><\/strong><br><\/p>\n","protected":false},"excerpt":{"rendered":"<p>I have realized recently that I am an Exchange Messaging Professional, but yet, I have not posted the methodology of how I<\/p>\n<p class=\"link-more\"><a class=\"myButt \" href=\"https:\/\/itblog.ldlnet.net\/index.php\/2019\/03\/27\/installation-of-exchange-server-2019-on-windows-server-2019\/\">Read More<\/a><\/p>\n","protected":false},"author":1,"featured_media":161,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4,2,140,3,16],"tags":[9,151,147,8,13],"class_list":["post-325","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-exchange","category-general","category-hyper-v","category-powershell","category-windows","tag-exchange","tag-exchange-2019","tag-exchange-setup","tag-powershell","tag-script","odd"],"_links":{"self":[{"href":"https:\/\/itblog.ldlnet.net\/index.php\/wp-json\/wp\/v2\/posts\/325","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/itblog.ldlnet.net\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/itblog.ldlnet.net\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/itblog.ldlnet.net\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/itblog.ldlnet.net\/index.php\/wp-json\/wp\/v2\/comments?post=325"}],"version-history":[{"count":2,"href":"https:\/\/itblog.ldlnet.net\/index.php\/wp-json\/wp\/v2\/posts\/325\/revisions"}],"predecessor-version":[{"id":327,"href":"https:\/\/itblog.ldlnet.net\/index.php\/wp-json\/wp\/v2\/posts\/325\/revisions\/327"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/itblog.ldlnet.net\/index.php\/wp-json\/wp\/v2\/media\/161"}],"wp:attachment":[{"href":"https:\/\/itblog.ldlnet.net\/index.php\/wp-json\/wp\/v2\/media?parent=325"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/itblog.ldlnet.net\/index.php\/wp-json\/wp\/v2\/categories?post=325"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/itblog.ldlnet.net\/index.php\/wp-json\/wp\/v2\/tags?post=325"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}