{"id":926,"date":"2020-11-03T01:07:05","date_gmt":"2020-11-03T01:07:05","guid":{"rendered":"http:\/\/jackofalltradesmasterofsome.com\/blog\/?p=926"},"modified":"2020-11-03T01:08:08","modified_gmt":"2020-11-03T01:08:08","slug":"how-to-correctly-setup-and-install-power-bi-enterprise-gateway","status":"publish","type":"post","link":"https:\/\/jackofalltradesmasterofsome.com\/blog\/2020\/11\/03\/how-to-correctly-setup-and-install-power-bi-enterprise-gateway\/","title":{"rendered":"How to Correctly Setup and Install Power BI Enterprise Gateway"},"content":{"rendered":"\n<p>Power BI&#8217;s <a href=\"https:\/\/powerbi.microsoft.com\/en-us\/gateway\/\">On-Premises Data Gateway<\/a> acts as a bridge between on-premises data such as a SQL Server and Microsoft cloud services. A Power BI Gateway is installed on computer (preferably a VM) that has the capacity to handle brokering data between the database or data source and app.powerbi.com. But for a simple tool, things can get pretty complex so lets look at How to Correctly Setup and Install Power BI Enterprise Gateway.<\/p>\n\n\n\n<p><strong>Power BI Gateways Best Practices<\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\"><li><strong>The gateway should be as geographically\nclose to the source as possible.<\/strong><\/li><\/ol>\n\n\n\n<p>Even in the world of lighting fast\ninternet, distance still plays an issue. The further away the gateway is from\nthe tenant, the higher the latency will be. With more milage to cover, millisecond\nor even seconds can be added onto transaction.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Best practice is to not install&nbsp;the\ngateway&nbsp;on your database server.<\/strong><\/li><\/ul>\n\n\n\n<p>Both the gateway and the database\nneed to use and consume resources to do their job. For this reason, when a\ngateway is calling a database for data, you do not want them to compete over\nthe same CPU and memory. It is best to not keep the gateway on the same\nlocation as the databases.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Install &#8220;On-Premises Data Gateway&#8221;\ninstead of the&nbsp;&#8220;On-Premises Data Gateway (Personal)&#8221;.<\/strong><\/li><\/ul>\n\n\n\n<p>The main installation supports&nbsp;schedule\nrefreshes,&nbsp;DirectQuery, and live connects to Analysis Services.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Use Power BI Gateway Clusters<\/strong><ul><li>Clusters are created to avoid single points of failure and to load balance traffic across gateways in a cluster.<\/li><\/ul><ul><li>Distribute requests across all active gateways in this cluster so that queries are shared across different gateways. Queries are distributed to a single gateway in a round-robin fashion and not fragmented across a multiple gateway <\/li><\/ul><ul><li>Although the selection of a gateway during load balancing is random, gateway admins can\u00a0throttle the resources of each gateway member, making sure a gateway member or entire cluster is not overloaded.\u00a0<\/li><\/ul><\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"624\" height=\"161\" src=\"http:\/\/jackofalltradesmasterofsome.com\/blog\/wp-content\/uploads\/2020\/11\/image.png\" alt=\"\" class=\"wp-image-942\" srcset=\"https:\/\/jackofalltradesmasterofsome.com\/blog\/wp-content\/uploads\/2020\/11\/image.png 624w, https:\/\/jackofalltradesmasterofsome.com\/blog\/wp-content\/uploads\/2020\/11\/image-300x77.png 300w\" sizes=\"auto, (max-width: 624px) 100vw, 624px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Keep all Gateways updated to newest\nversion<\/strong><\/li><\/ul>\n\n\n\n<p>Microsoft is constantly updating\nand patching the gateway. Make it a habit to open each gateway configuration\nevery few weeks and upgrade to the newest version.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>User Separate Gateways for Live\nconnections and Refresh Gateways<\/strong><\/li><\/ul>\n\n\n\n<p>Live connections add variability to when the\ngateway will be under a lot of pressure to pull data whereas scheduled refreshes\nwill occur at a set time. Create a separate gateway for the two so that the scheduled\nrefreshes can have a more dependable constant availability of resources needed\nfor refreshes. <\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Use Services Account Connections or\nSingle Sign On to Data Sources via Gateway<\/strong><\/li><\/ul>\n\n\n\n<p>When setting up gateways, the option to install\nunder your personal ID and account is available but avoid using your ID. Have\nan admin generate a service account which the correct access to the VM and\nother data sources so that only one ID needs to be maintained per gateway.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Leverage Data Governance policy when adding\ndata sources to Power BI Gateways<\/strong><\/li><\/ul>\n\n\n\n<p>There is no technical enforcement of\ncreating duplicate data sources in gateways or even prevent development\ngateways from pointing to production databases. For this reason, use documentation\nbest practices to define naming standards and a process to request new data\nsources to ensure they are set up correctly by an admin. <\/p>\n\n\n\n<p><strong>Power BI Gateway Minimum Requirements<\/strong><\/p>\n\n\n\n<p>Not quite the basics that Microsoft recommends, these are\nthe basic requirement you will want from your Gateway machine for decent\nperformance to start.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>8 Core CPU<\/li><li>8 GB Memory<\/li><li>64-bit version of Windows 2012 R2 (or later)<\/li><\/ul>\n\n\n\n<p>How to Correctly Setup and Install Power BI Enterprise Gateway<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Power BI&#8217;s On-Premises Data Gateway acts as a bridge between on-premises data such as a SQL Server and Microsoft cloud services. A Power BI Gateway is installed on computer (preferably a VM) that has the capacity to handle brokering data between the database or data source and app.powerbi.com. But for a simple tool, things can [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-926","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/jackofalltradesmasterofsome.com\/blog\/wp-json\/wp\/v2\/posts\/926","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jackofalltradesmasterofsome.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jackofalltradesmasterofsome.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jackofalltradesmasterofsome.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jackofalltradesmasterofsome.com\/blog\/wp-json\/wp\/v2\/comments?post=926"}],"version-history":[{"count":3,"href":"https:\/\/jackofalltradesmasterofsome.com\/blog\/wp-json\/wp\/v2\/posts\/926\/revisions"}],"predecessor-version":[{"id":945,"href":"https:\/\/jackofalltradesmasterofsome.com\/blog\/wp-json\/wp\/v2\/posts\/926\/revisions\/945"}],"wp:attachment":[{"href":"https:\/\/jackofalltradesmasterofsome.com\/blog\/wp-json\/wp\/v2\/media?parent=926"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jackofalltradesmasterofsome.com\/blog\/wp-json\/wp\/v2\/categories?post=926"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jackofalltradesmasterofsome.com\/blog\/wp-json\/wp\/v2\/tags?post=926"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}