附录 F. 代理

F.1. SPICE 代理

F.1.1. SPICE 代理概述

当 SPICE 客户端位于连接管理程序的网络之外,SPICE 代理是用于将 SPICE 客户端连接到虚拟机的工具。设置 SPICE 代理包括在机器上安装 Squid 并配置防火墙以允许代理流量。在 上打开 SPICE 代理包括使用 engine-config (管理器上使用 engine-config)组成,将主要 SpiceProxyDefault 设置为包含代理的名称和端口的值。关闭 SPICE 代理包括使用 Manager 上的 engine-config 来移除设置关键 SpiceProxyDefault 的值。

重要

SPICE 代理只能与独立 SPICE 客户端结合使用,且不能用于使用 noVNC 连接到虚拟机。

F.1.2. SPICE 代理机器设置

此流程解释了如何将机器设置为 SPICE 代理。通过 SPICE 代理,可以从网络外部连接到 Red Hat Virtualization 网络。我们在此过程中使用 Squid 提供代理服务。

流程

  1. 在 Proxy 机器上安装 Squid

    # dnf install squid
  2. 打开 /etc/squid/squid.conf。更改:

    http_access deny CONNECT !SSL_ports

    改为:

    http_access deny CONNECT !Safe_ports
  3. 启动 squid 服务并使其在重启后自动运行:

    # systemctl enable squid.service --now
  4. 在默认 firewalld 区中启用对 squid 服务的传入请求:

    # firewall-cmd --permanent --add-service=squid
  5. 在运行时配置中保留此防火墙规则:

    # firewall-cmd --reload
  6. 确认 squid 服务出现在防火墙服务列表中:

    # firewall-cmd --list-services
    ssh dhcpv6-client squid

您现在已将机器设置为 SPICE 代理。从网络外部连接到 Red Hat Virtualization 网络前,请激活 SPICE 代理。

F.1.3. 开启 SPICE 代理

此流程解释了如何激活(或打开) SPICE 代理。

流程

  1. 在 Manager 中,使用 engine-config 工具设置代理:

    # engine-config -s SpiceProxyDefault=someProxy
  2. 重启 ovirt-engine 服务:

    # systemctl restart ovirt-engine.service

    代理必须具有以下形式:

    protocol://[host]:[port]
    注意

    只有 Red Hat Enterprise Linux 6.7、Red Hat Enterprise Linux 7.2 或更高版本附带的 SPICE 客户端支持 HTTPS 代理。较早的客户端只支持 HTTP。如果为以前的客户端指定了 HTTPS,客户端将忽略代理设置,并尝试与主机的直接连接。

SPICE 代理现已激活(打开)。现在,可以通过 SPICE 代理连接到 Red Hat Virtualization 网络。

F.1.4. 关闭 SPICE 代理

此流程解释了如何关闭(激活) SPICE 代理。

流程

  1. 登录到 Manager:

    $ ssh root@[IP of Manager]
  2. 运行以下命令以清除 SPICE 代理:

    # engine-config -s SpiceProxyDefault=""
  3. 重启 Manager:

    # systemctl restart ovirt-engine.service

SPICE 代理现已被取消激活(关闭)。无法通过 SPICE 代理连接到 Red Hat Virtualization 网络。