<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: How to configure SAS to work with AWS ELB and NGNIX Reverse Proxy in Administration and Deployment</title>
    <link>https://communities.sas.com/t5/Administration-and-Deployment/How-to-configure-SAS-to-work-with-AWS-ELB-and-NGNIX-Reverse/m-p/485558#M13863</link>
    <description>&lt;P&gt;Nik,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;See the answers below&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Unless I've misunderstood your question/description, you're looking at forwarding non-HTTP traffic though, right? From the EG clients to the Object Spawners, running on the Compute nodes? - &lt;FONT color="#00FF00"&gt;&lt;STRONG&gt;Yes&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;What's the role of the reverse proxy, in addition to the ELB? What is it that you're trying to reverse-proxy? Can you post your nginx conf? You can't forward non http stuff with nginx unless you've built it with the stream core module. Where does your metadata server sit in this scenario, do you have a metadata server instance running on each of those compute nodes?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;What's the role of the reverse proxy, in addition to the ELB? - &lt;STRONG&gt;&lt;FONT color="#00FF00"&gt;Forward the traffic to SAS servers (sitting under datazone). It is being used to make it three zone architecture.&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;What is it that you're trying to reverse-proxy? &lt;STRONG&gt;&lt;FONT color="#00FF00"&gt;- SAS client requests to SAS servers.&amp;nbsp;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;You can't forward non http stuff with nginx unless you've built it with the stream core module. - &lt;STRONG&gt;&lt;FONT color="#00FF00"&gt;NGNIX is configured with stream core module - see the snippet.&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#000000"&gt;Where does your metadata server sit in this scenario -&lt;STRONG&gt;&lt;FONT color="#00FF00"&gt; Under the data zone where all compute and midtier are residing.&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#000000"&gt;&lt;SPAN&gt;do you have a metadata server instance running on each of those compute nodes? -&lt;STRONG&gt;&lt;FONT color="#00FF00"&gt; No, there is a single metadata instance for three compute servers (independent - no GRID, no cluster), and a midtier.&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#000000"&gt;&lt;SPAN&gt;&lt;STRONG&gt;&lt;FONT color="#00FF00"&gt;ngnix.conf&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;user nginx;&lt;BR /&gt;worker_processes 1;&lt;/P&gt;&lt;P&gt;error_log /var/log/nginx/error.log warn;&lt;BR /&gt;pid /var/run/nginx.pid;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;events {&lt;BR /&gt;worker_connections 1024;&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;http {&lt;BR /&gt;include /etc/nginx/mime.types;&lt;BR /&gt;default_type application/octet-stream;&lt;/P&gt;&lt;P&gt;log_format main '$remote_addr - $remote_user [$time_local] "$request" '&lt;BR /&gt;'$status $body_bytes_sent "$http_referer" '&lt;BR /&gt;'"$http_user_agent" "$http_x_forwarded_for"';&lt;/P&gt;&lt;P&gt;access_log /var/log/nginx/access.log main;&lt;/P&gt;&lt;P&gt;sendfile on;&lt;BR /&gt;#tcp_nopush on;&lt;/P&gt;&lt;P&gt;keepalive_timeout 65;&lt;/P&gt;&lt;P&gt;#gzip on;&lt;/P&gt;&lt;P&gt;include /etc/nginx/conf.d/*.conf;&lt;BR /&gt;}&lt;BR /&gt;stream {&lt;BR /&gt;server {&lt;BR /&gt;listen 8561;&lt;BR /&gt;proxy_pass XXXXXXXXXXX:8561;&lt;BR /&gt;}&lt;BR /&gt;#Middletier&lt;BR /&gt;server {&lt;BR /&gt;listen 8080;&lt;BR /&gt;proxy_pass XXXXXXXXXXXXXXXX:8080;&lt;BR /&gt;}&lt;BR /&gt;server {&lt;BR /&gt;listen 7980;&lt;BR /&gt;proxy_pass 1XXXXXXXXXXX:7980;&lt;BR /&gt;}&lt;BR /&gt;#Compute1 Compute2 and Compute3&lt;BR /&gt;server {&lt;BR /&gt;listen 9432;&lt;BR /&gt;proxy_pass XXXXXXXXXXXXXX:80;&lt;BR /&gt;}&lt;BR /&gt;server {&lt;BR /&gt;listen 5451;&lt;BR /&gt;proxy_pass 1XXXXXXXXXXXXXXX:5451;&lt;BR /&gt;}&lt;BR /&gt;server {&lt;BR /&gt;listen 7541;&lt;BR /&gt;proxy_pass XXXXXXXXXXXXXXXXX:7541;&lt;BR /&gt;}&lt;BR /&gt;"nginx.conf" [readonly] 122L, 2741C&lt;/P&gt;</description>
    <pubDate>Thu, 09 Aug 2018 19:02:32 GMT</pubDate>
    <dc:creator>Matt</dc:creator>
    <dc:date>2018-08-09T19:02:32Z</dc:date>
    <item>
      <title>How to configure SAS to work with AWS ELB and NGNIX Reverse Proxy</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/How-to-configure-SAS-to-work-with-AWS-ELB-and-NGNIX-Reverse/m-p/483880#M13813</link>
      <description>&lt;P&gt;Does anyone have done this or have experience with?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am trying to configure SAS to work with AWS ELB and NGNIX Reverse Proxy. It is a three zone architecture.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Presentation Zone :-&amp;nbsp;ELB is under presentation zone&lt;/P&gt;&lt;P&gt;Application Zone :-&amp;nbsp;Revers&lt;FONT size="3"&gt;&lt;SPAN&gt;e Proxy (NGNIX) is under Application Zone&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;Data Zone :-&amp;nbsp;SAS servers are resided in Data Zone under AWS VPC.​&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am trying to connect SAS client applications installed on local machine to SAS compute servers through ELB and Reverse Proxy. I already VPN to AWS.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&lt;FONT face="Calibri,Arial,Helvetica,sans-serif" size="2"&gt;&lt;SPAN&gt;&lt;STRONG&gt;This is how the traffic flows&lt;/STRONG&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Calibri,Arial,Helvetica,sans-serif" size="2"&gt;&lt;SPAN&gt;SAS clients are installed on local machine - connects to AWS ELB - ELB connects to Reverse proxy that is communicating back and forth with SAS servers.&lt;BR /&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;ELB (Presentation Zone) ----&amp;gt; Reverse Proxy (Application Zone) -----&amp;gt; SAS Servers (Data Zone).&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;All SAS services are up and running however when I try to connect to SAS application servers from EG, it fails with an error saying "The machine name could not resolved to an IP address" I understand that it is basically looking for a DNS entries for these machines/host names. But why doesn't it need a hostname entries as it should use the ELB to connect to the hosts and SAS linux servers have the host name entries.&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 03 Aug 2018 18:26:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/How-to-configure-SAS-to-work-with-AWS-ELB-and-NGNIX-Reverse/m-p/483880#M13813</guid>
      <dc:creator>Matt</dc:creator>
      <dc:date>2018-08-03T18:26:24Z</dc:date>
    </item>
    <item>
      <title>Re: How to configure SAS to work with AWS ELB and NGNIX Reverse Proxy</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/How-to-configure-SAS-to-work-with-AWS-ELB-and-NGNIX-Reverse/m-p/483891#M13814</link>
      <description>&lt;P&gt;I'm pretty sure that EG (and&amp;nbsp;thereby the client machine) needs to be able to directly resolve the DNS of the&amp;nbsp;compute server it's connecting to, as per that server's DNS definition in SAS metadata. You won't be able to reverse proxy this with nginx; if you're running a single appserver setup you'd be able to forward the port itself (think it's 7551, not sure),&amp;nbsp;but if you're loadbalancing across a number of application server nodes I doubt you'll be able to use ELB as the LB mechanism needs to be integrated with the object spawner &amp;amp; the target machine needs to be resolvable from the client.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Hope this makes sense. If you're after a bit of help doing this in AWS I'd give&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/110793"&gt;@shayes_ccllc&lt;/a&gt;&amp;nbsp;a call.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Nik&lt;/P&gt;</description>
      <pubDate>Fri, 03 Aug 2018 19:22:03 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/How-to-configure-SAS-to-work-with-AWS-ELB-and-NGNIX-Reverse/m-p/483891#M13814</guid>
      <dc:creator>boemskats</dc:creator>
      <dc:date>2018-08-03T19:22:03Z</dc:date>
    </item>
    <item>
      <title>Re: How to configure SAS to work with AWS ELB and NGNIX Reverse Proxy</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/How-to-configure-SAS-to-work-with-AWS-ELB-and-NGNIX-Reverse/m-p/484477#M13819</link>
      <description>&lt;P&gt;Nik,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks for your response. Each compute servers have a dedicated ELB. SAS compute servers are not being configured for load balancing, they are independent instances. ELB however configured for load balancing the connections from SAS clients. The issue is NGNIX not forwarding the traffic to all three servers and ports. It only allows to have 1 compute server and port combination in proxy_pass value.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 06 Aug 2018 18:28:45 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/How-to-configure-SAS-to-work-with-AWS-ELB-and-NGNIX-Reverse/m-p/484477#M13819</guid>
      <dc:creator>Matt</dc:creator>
      <dc:date>2018-08-06T18:28:45Z</dc:date>
    </item>
    <item>
      <title>Re: How to configure SAS to work with AWS ELB and NGNIX Reverse Proxy</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/How-to-configure-SAS-to-work-with-AWS-ELB-and-NGNIX-Reverse/m-p/485128#M13838</link>
      <description>&lt;P&gt;Unless I've misunderstood your question/description, you're looking at forwarding non-HTTP traffic though, right? From the EG clients to the Object Spawners, running on the Compute nodes?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;What's the role of the reverse proxy, in addition to the ELB? What is it that you're trying to reverse-proxy? Can you post your nginx conf? You can't forward non http stuff with nginx unless you've built it with the stream core module. Where does your metadata server sit in this scenario, do you have a metadata server instance running on each of those compute nodes?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 08 Aug 2018 12:49:52 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/How-to-configure-SAS-to-work-with-AWS-ELB-and-NGNIX-Reverse/m-p/485128#M13838</guid>
      <dc:creator>boemskats</dc:creator>
      <dc:date>2018-08-08T12:49:52Z</dc:date>
    </item>
    <item>
      <title>Re: How to configure SAS to work with AWS ELB and NGNIX Reverse Proxy</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/How-to-configure-SAS-to-work-with-AWS-ELB-and-NGNIX-Reverse/m-p/485558#M13863</link>
      <description>&lt;P&gt;Nik,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;See the answers below&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Unless I've misunderstood your question/description, you're looking at forwarding non-HTTP traffic though, right? From the EG clients to the Object Spawners, running on the Compute nodes? - &lt;FONT color="#00FF00"&gt;&lt;STRONG&gt;Yes&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;What's the role of the reverse proxy, in addition to the ELB? What is it that you're trying to reverse-proxy? Can you post your nginx conf? You can't forward non http stuff with nginx unless you've built it with the stream core module. Where does your metadata server sit in this scenario, do you have a metadata server instance running on each of those compute nodes?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;What's the role of the reverse proxy, in addition to the ELB? - &lt;STRONG&gt;&lt;FONT color="#00FF00"&gt;Forward the traffic to SAS servers (sitting under datazone). It is being used to make it three zone architecture.&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;What is it that you're trying to reverse-proxy? &lt;STRONG&gt;&lt;FONT color="#00FF00"&gt;- SAS client requests to SAS servers.&amp;nbsp;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;You can't forward non http stuff with nginx unless you've built it with the stream core module. - &lt;STRONG&gt;&lt;FONT color="#00FF00"&gt;NGNIX is configured with stream core module - see the snippet.&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#000000"&gt;Where does your metadata server sit in this scenario -&lt;STRONG&gt;&lt;FONT color="#00FF00"&gt; Under the data zone where all compute and midtier are residing.&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#000000"&gt;&lt;SPAN&gt;do you have a metadata server instance running on each of those compute nodes? -&lt;STRONG&gt;&lt;FONT color="#00FF00"&gt; No, there is a single metadata instance for three compute servers (independent - no GRID, no cluster), and a midtier.&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#000000"&gt;&lt;SPAN&gt;&lt;STRONG&gt;&lt;FONT color="#00FF00"&gt;ngnix.conf&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;user nginx;&lt;BR /&gt;worker_processes 1;&lt;/P&gt;&lt;P&gt;error_log /var/log/nginx/error.log warn;&lt;BR /&gt;pid /var/run/nginx.pid;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;events {&lt;BR /&gt;worker_connections 1024;&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;http {&lt;BR /&gt;include /etc/nginx/mime.types;&lt;BR /&gt;default_type application/octet-stream;&lt;/P&gt;&lt;P&gt;log_format main '$remote_addr - $remote_user [$time_local] "$request" '&lt;BR /&gt;'$status $body_bytes_sent "$http_referer" '&lt;BR /&gt;'"$http_user_agent" "$http_x_forwarded_for"';&lt;/P&gt;&lt;P&gt;access_log /var/log/nginx/access.log main;&lt;/P&gt;&lt;P&gt;sendfile on;&lt;BR /&gt;#tcp_nopush on;&lt;/P&gt;&lt;P&gt;keepalive_timeout 65;&lt;/P&gt;&lt;P&gt;#gzip on;&lt;/P&gt;&lt;P&gt;include /etc/nginx/conf.d/*.conf;&lt;BR /&gt;}&lt;BR /&gt;stream {&lt;BR /&gt;server {&lt;BR /&gt;listen 8561;&lt;BR /&gt;proxy_pass XXXXXXXXXXX:8561;&lt;BR /&gt;}&lt;BR /&gt;#Middletier&lt;BR /&gt;server {&lt;BR /&gt;listen 8080;&lt;BR /&gt;proxy_pass XXXXXXXXXXXXXXXX:8080;&lt;BR /&gt;}&lt;BR /&gt;server {&lt;BR /&gt;listen 7980;&lt;BR /&gt;proxy_pass 1XXXXXXXXXXX:7980;&lt;BR /&gt;}&lt;BR /&gt;#Compute1 Compute2 and Compute3&lt;BR /&gt;server {&lt;BR /&gt;listen 9432;&lt;BR /&gt;proxy_pass XXXXXXXXXXXXXX:80;&lt;BR /&gt;}&lt;BR /&gt;server {&lt;BR /&gt;listen 5451;&lt;BR /&gt;proxy_pass 1XXXXXXXXXXXXXXX:5451;&lt;BR /&gt;}&lt;BR /&gt;server {&lt;BR /&gt;listen 7541;&lt;BR /&gt;proxy_pass XXXXXXXXXXXXXXXXX:7541;&lt;BR /&gt;}&lt;BR /&gt;"nginx.conf" [readonly] 122L, 2741C&lt;/P&gt;</description>
      <pubDate>Thu, 09 Aug 2018 19:02:32 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/How-to-configure-SAS-to-work-with-AWS-ELB-and-NGNIX-Reverse/m-p/485558#M13863</guid>
      <dc:creator>Matt</dc:creator>
      <dc:date>2018-08-09T19:02:32Z</dc:date>
    </item>
    <item>
      <title>Re: How to configure SAS to work with AWS ELB and NGNIX Reverse Proxy</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/How-to-configure-SAS-to-work-with-AWS-ELB-and-NGNIX-Reverse/m-p/487513#M13929</link>
      <description>&lt;P&gt;FYI -&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;We made a good progress on this. However certain services such as&amp;nbsp;the operating systems services, OLAP server, content server etc..are trying to connect through hostname and traffic is only allowed through ELB and NGNIX. If we modify their connection property within the SMC by replacing&amp;nbsp;the hostname with&amp;nbsp;the ELB name then it works but I don't think that is a SAS recommended way of configuring the environment.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Any comments?&lt;/P&gt;</description>
      <pubDate>Thu, 16 Aug 2018 17:13:14 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/How-to-configure-SAS-to-work-with-AWS-ELB-and-NGNIX-Reverse/m-p/487513#M13929</guid>
      <dc:creator>Matt</dc:creator>
      <dc:date>2018-08-16T17:13:14Z</dc:date>
    </item>
  </channel>
</rss>

