选项 2,第 2 部分:配置代理设置以查看托管在 Amazon EMR 集群主节点上的网站 - Amazon EMR

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

选项 2,第 2 部分:配置代理设置以查看托管在 Amazon EMR 集群主节点上的网站

如果您使用具有动态端口转发功能的SSH隧道,则必须使用SOCKS代理管理插件来控制浏览器中的代理设置。使用SOCKS代理管理工具可以URLs根据文本模式自动进行筛选,并将代理设置限制为与主节点的公共DNS名称形式相匹配的域名。当您在查看主节点上托管的网站和互联网上托管的网站之间进行切换时,浏览器附加组件会自动处理打开和关闭代理的操作。要管理您的代理设置,请将浏览器配置为使用插件,例如 FoxyProxy 或 SwitchyOmega。

有关创建SSH隧道的更多信息,请参阅选项 2,第 1 部分:使用动态端口转发设置SSH通往主节点的隧道。有关可用 Web 界面的更多信息,请参阅查看 Amazon EMR 集群上托管的网页界面

在设置代理附加组件时,请包括以下设置:

  • 使用 localhost 作为主机地址。

  • 使用与您选择的相同本地端口号来建立SSH隧道,主节点位于中选项 2,第 1 部分:使用动态端口转发设置SSH通往主节点的隧道。例如,端口 8157。 此端口还必须与您在 Pu TTY 或任何其他用于连接的终端仿真器中使用的端口号相匹配。

  • 指定 SOCKSv5 协议。SOCKSv5 允许您选择性地设置用户授权。

  • URL图案

    以下URL模式应列入允许名单并使用通配符模式类型指定:

    • *ec2*。 *compute*.amazonaws.com* 和 * 10*.amazonaws.com* 模式与美国地区集群的公共名称相匹配。DNS

    • *ec2*.compute* 和 *10*.compute* 模式与所有其他区域中集群的公共名称相匹配。DNS

    • A 10。 * 模式用于提供对 Hadoop 中JobTracker 日志文件的访问权限。如果此筛选条件与您的网络访问计划冲突,请更改此筛选条件。

    • *.ec2.internal**.compute.internal* 模式分别匹配该区域和所有其他区域中集群的私有(内部)DNS名称。us-east-1

示例:为 Firefox FoxyProxy 进行配置

以下示例演示了 Mozilla Firefox 的 FoxyProxy 标准(版本 7.5.1)配置。

FoxyProxy 提供了一组代理管理工具。它允许您使用代理服务器来匹配与您的 URLs Amazon EMR 集群中的 Amazon EC2 实例使用的域相对应的匹配模式。

FoxyProxy 使用 Mozilla Firefox 进行安装和配置
  1. 在 Firefox 中,前往 https://addons.mozilla.org/ 搜索 FoxyProxy Standard,然后按照说明添加 FoxyProxy 到 Firefox。

  2. 使用文本编辑器创建一个名为以下示例配置foxyproxy-settings.json的JSON文件。

    { "k20d21508277536715": { "active": true, "address": "localhost", "port": 8157, "username": "", "password": "", "type": 3, "proxyDNS": true, "title": "emr-socks-proxy", "color": "#0055E5", "index": 9007199254740991, "whitePatterns": [ { "title": "*ec2*.*compute*.amazonaws.com*", "active": true, "pattern": "*ec2*.*compute*.amazonaws.com*", "importedPattern": "*ec2*.*compute*.amazonaws.com*", "type": 1, "protocols": 1 }, { "title": "*ec2*.compute*", "active": true, "pattern": "*ec2*.compute*", "importedPattern": "*ec2*.compute*", "type": 1, "protocols": 1 }, { "title": "10.*", "active": true, "pattern": "10.*", "importedPattern": "http://10.*", "type": 1, "protocols": 2 }, { "title": "*10*.amazonaws.com*", "active": true, "pattern": "*10*.amazonaws.com*", "importedPattern": "*10*.amazonaws.com*", "type": 1, "protocols": 1 }, { "title": "*10*.compute*", "active": true, "pattern": "*10*.compute*", "importedPattern": "*10*.compute*", "type": 1, "protocols": 1 }, { "title": "*.compute.internal*", "active": true, "pattern": "*.compute.internal*", "importedPattern": "*.compute.internal*", "type": 1, "protocols": 1 }, { "title": "*.ec2.internal* ", "active": true, "pattern": "*.ec2.internal*", "importedPattern": "*.ec2.internal*", "type": 1, "protocols": 1 } ], "blackPatterns": [] }, "logging": { "size": 100, "active": false }, "mode": "patterns", "browserVersion": "68.12.0", "foxyProxyVersion": "7.5.1", "foxyProxyEdition": "standard" }
  3. 打开 Firefox Manage Your Extensions (管理您的扩展) 页面(转到 about:addons,然后选择 Extensions (扩展))。

  4. 选择 “FoxyProxy 标准”,然后选择 “更多选项” 按钮(看起来像省略号的按钮)。

  5. 从下拉列表中选择 Options (选项)

  6. 从左侧菜单中选择 Import Settings (导入设置)

  7. “导入设置” 页面上,在 FoxyProxy 6.0+ 版本的 “导入设置” 下选择 “导入设置”,浏览到您创建foxyproxy-settings.json的文件的位置,选择该文件,然后选择 “打开”。

  8. 当系统提示覆盖现有设置并保存新配置时,选择 OK (确定)

示例:为 chrome SwitchyOmega 进行配置

以下示例演示了如何为谷歌浏览器设置 SwitchyOmega扩展程序。 SwitchyOmega 允许您在多个代理之间配置、管理和切换。

SwitchyOmega 使用谷歌浏览器进行安装和配置
  1. 前往https://chrome.google.com/webstore/类别/扩展程序,搜索代理 SwitchyOmega,然后将其添加到 Chrome。

  2. 选择 New profile (新建配置文件) 并输入 emr-socks-proxy 作为配置文件名称。

  3. 选择PAC个人资料,然后选择 “创建”。代理自动配置 (PAC) 文件可帮助您为应转发到 Web 代理服务器的浏览器请求定义允许列表。

  4. 在 “PAC脚本” 字段中,将内容替换为以下脚本,该脚本定义了URLs应通过 Web 代理服务器转发哪些内容。如果您在设置SSH隧道时指定了不同的端口号,请替换 8157 用你的端口号。

    function FindProxyForURL(url, host) { if (shExpMatch(url, "*ec2*.*compute*.amazonaws.com*")) return 'SOCKS5 localhost:8157'; if (shExpMatch(url, "*ec2*.compute*")) return 'SOCKS5 localhost:8157'; if (shExpMatch(url, "http://10.*")) return 'SOCKS5 localhost:8157'; if (shExpMatch(url, "*10*.compute*")) return 'SOCKS5 localhost:8157'; if (shExpMatch(url, "*10*.amazonaws.com*")) return 'SOCKS5 localhost:8157'; if (shExpMatch(url, "*.compute.internal*")) return 'SOCKS5 localhost:8157'; if (shExpMatch(url, "*ec2.internal*")) return 'SOCKS5 localhost:8157'; return 'DIRECT'; }
  5. Actions (操作) 下,选择 Apply changes (应用更改) 以保存您的代理设置。

  6. 在 Chrome 工具栏上,选择 SwitchyOmega 并选择emr-socks-proxy配置文件。

访问浏览器中的 Web 界面

要打开 Web 界面,请在浏览器地址栏中输入主节点或核心节点的公共DNS名称,然后输入所选接口的端口号。以下示例显示了URL连接到 Spark 时需要输入的内容 HistoryServer。

http://master-public-dns-name:18080/

有关检索节点公共DNS名称的说明,请参阅检索主节点的公共DNS名称。有关 Web 界面的完整列表URLs,请参阅查看 Amazon EMR 集群上托管的网页界面