创建 Linux 虚拟工作站

本教程介绍如何在 Google Cloud 中创建在 CentOS 7 上运行且具有虚拟显示器的虚拟工作站。如果您要运行的应用需要有显示设备、但并不需要 GPU 的全部功能或不想承担相应费用,则具有虚拟显示器的虚拟机是理想之选。

要创建 Windows 工作站,请参阅创建 Windows 虚拟工作站

创建虚拟工作站后,您将学习如何使用 Teradici PC-over-IP (PCoIP)(一种广泛应用于媒体娱乐、建筑可视化、金融、政府以及医疗保健等行业的远程桌面协议)远程访问该工作站。对于那些要求色彩精确并支持无损显示的工作负载,PCoIP 提供了至关重要的功能。

目标

  • 创建 Compute Engine 实例。此实例用作虚拟工作站的基础。
  • 在虚拟工作站上安装 Teradici Cloud Access Software。
  • 使用 Teradici PCoIP 客户端或 Zero Client(一种硬件端点)连接到虚拟工作站。

费用

本教程使用 Google Cloud 的以下收费组件:

您可以使用价格计算器根据您的预计使用情况来估算费用。截至撰写本文时,本教程中所述的典型工作站配置的费用约为每小时 $0.30。

虚拟工作站的构成资源以及影响本教程中所述费用的因素包括:

互联网出站流量表示从虚拟工作站流向本地显示客户端的数据量,按互联网出站流量费率计费。影响 PCoIP 会话期间数据出站流量的变量包括带宽、屏幕分辨率、显示器数量、使用的应用以及每个显示器上的活动类型。您在本教程中创建的虚拟工作站配置的费用按 10 Mbps 的平均用量来计算。如需了解其他工作负载要求,请参阅 Teradici 的会话规划指南

您还需要 Teradici Cloud Access Software 许可。如果您还没有许可,则可以通过注册来获取试用许可,或与您的 Teradici 代表联系。您将获得一个用于此虚拟工作站的试用注册代码(有效期为 30 天)。

准备工作

本教程使用 gcloudgsutil 命令,您可以在通过 Google Cloud Console 启动的 Cloud Shell 实例中运行这些命令。如果您要在本地工作站上使用 gcloudgsutil,请安装 Cloud SDK

本教程介绍的是如何在 Cloud Shell 中运行命令;如果您在工作站上使用 Cloud SDK,请参阅对应的说明。

  1. 登录您的 Google 帐号。

    如果您还没有 Google 帐号,请注册新帐号

  2. 在 Google Cloud Console 的项目选择器页面上,选择或创建一个 Google Cloud 项目。

    转到项目选择器页面

  3. 确保您的 Cloud 项目已启用结算功能。 了解如何确认您的项目是否已启用结算功能

  4. 启用 Compute Engine API。

    启用 API

此外,请确保满足以下条件:

  • 一个 Cloud 项目(在所选地区具有 4 个 vCPU 配额)。
  • Google Chrome 浏览器(用于访问 Cloud Console)。
  • Teradici Zero Client 或者适用于 Windows、Mac 或 Linux 的最新 Teradici 软件客户端(用于访问虚拟工作站)。
  • Teradici Cloud Access Software 许可。您可以按照之前费用下的说明获取试用许可。

架构

下图显示了按照本教程部署单个虚拟工作站需要用到的组件。图中显示的可选组件包括用于连接到虚拟工作站、对象和共享存储空间的几种不同方式,以及用于提供第三方许可的另外一个虚拟机实例。

虚拟工作站基础架构。

创建虚拟工作站

为了使用 Teradici Standard Agent(在本教程的后面部分,您将在虚拟工作站上安装该代理),您必须在创建虚拟工作站时启用 IP 转发并允许 HTTPS 服务器流量。

  1. 打开 Cloud Shell。

    转到 Cloud Shell

  2. 设置您希望稍后用于创建虚拟工作站的地区:

    gcloud config set compute/zone zone
    

    zone 替换为您所使用的地区的名称,例如 us-west2-b

  3. 在 Cloud Shell 中,为虚拟工作站创建 Compute Engine 实例:

    gcloud compute instances create instance-name \
        --machine-type=machine-type \
        --enable-display-device \
        --can-ip-forward \
        --tags=https-server \
        --image-project=image-project \
        --image-family=image-family \
        --boot-disk-size=size \
        --boot-disk-type=book-disk-type
    

    替换以下内容:

    • instance-name:实例的名称。
    • machine-type通用预定义机器类型或采用 custom-number-of-cpus-number-of-mb 格式的自定义机器类型
    • image-project:该映像系列的映像项目
    • image-family:可选标志,用于指定此映像所属的映像系列
    • size:启动磁盘大小(以 GB 为单位)。
    • book-disk-typepd-standardpd-ssd

    例如:

    gcloud compute instances create test-vws \
        --machine-type=n1-standard-4 \
        --enable-display-device \
        --can-ip-forward \
        --tags=https-server \
        --image-project=centos-cloud \
        --image-family=centos-7 \
        --boot-disk-size=50 \
        --boot-disk-type=pd-standard
    

    创建虚拟工作站后,系统将显示机器状态。输出类似于以下内容:

    Created https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/test-vws.
    NAME      ZONE        MACHINE_TYPE   PREEMPTIBLE  INTERNAL_IP  EXTERNAL_IP   STATUS
    test-vws  us-west2-b  n1-standard-4               10.168.0.1   203.0.113.1  RUNNING
    

    虚拟工作站是在项目的默认 VPC 网络中创建的。如果要在其他 VPC 网络中创建虚拟工作站,请在命令中添加以下标志:

    --network=network
    

    network 替换为要使用的网络名称:

  4. 记下列表中虚拟工作站的外部 IP 地址。在本教程的后面部分,您将用到该地址。

    您可以随时使用 Cloud Console 检索虚拟工作站的外部 IP 地址。

登录虚拟工作站

创建虚拟工作站后,请登录机器来配置该工作站。

  1. 在 Cloud Shell 中,连接到新建的虚拟工作站:

    gcloud compute ssh test-vws
    
  2. 设置帐号密码。Teradici PCoIP 客户端需要用户密码。

    sudo passwd `whoami`
    

    出现提示时,输入一个密码。在本教程的后面部分,当您通过 Teradici PCoIP 客户端登录您的虚拟工作站,将会用到这个密码。

安装图形库和窗口管理器

默认的 Google Cloud CentOS 映像是 CentOS 的极简安装。下一步是安装在 GNOME 桌面环境中运行虚拟工作站所必需的库。

  • 在虚拟工作站上,安装所需组件:

    sudo yum -y update
    sudo yum -y groupinstall 'Server with GUI'
    

安装 Teradici Cloud Access Software

Teradici Cloud Access Software 可提供在虚拟工作站上运行的代理,该代理可将桌面传输到您的硬件或软件客户端。

  1. 在虚拟工作站上,安装 Teradici 代码库:

    sudo yum -y install https://downloads.teradici.com/rhel/teradici-repo-latest.noarch.rpm
    
  2. 安装适用于 Linux 的 Teradici Standard Agent:

    sudo yum -y update
    sudo yum -y install pcoip-agent-standard
    

注册 Teradici Standard Agent

  1. 在虚拟工作站上,激活您的 Teradici Cloud Access Software 许可:

    pcoip-register-host --registration-code=registration-code
    

    registration-code 替换为您从 Teradici 接收的许可注册代码。

  2. 重新启动虚拟工作站:

    sudo reboot
    

    您通过 Cloud Shell 建立的连接将关闭。

创建防火墙规则

Teradici PCoIP 客户端会使用多个端口与虚拟工作站通信。您必须设置允许流量进出虚拟工作站的防火墙规则。

  • 在 Cloud Shell(而非虚拟工作站)中,创建用于打开所需端口的防火墙规则:

    gcloud compute firewall-rules create allow-teradici \
        --allow tcp:443,tcp:4172,udp:4172,tcp:60443
    

使用 PCo 登录虚拟工作站

  1. 在本地计算机上,转到 Teradici 支持页面上的“PCoIP Clients”部分,然后下载、安装并启动适用于您的操作系统的 Teradici PCoIP 客户端。

  2. 选择 New Connection

  3. Host Address 字段中,输入虚拟工作站的外部 IP 地址。如果需要,可以输入连接名称。

    输入外部 IP 地址以连接到虚拟工作站。

  4. 连接后,输入之前为虚拟工作站创建的用户名和密码,以进行身份验证。

    在虚拟工作站中进行身份验证。

  5. 如果系统提示您选择要运行的桌面,请选择您刚刚创建的桌面。

    选择要连接到的桌面。

  6. 点击连接

    几秒钟后,您会看到您的 Linux 桌面。

    虚拟工作站中的 Linux 桌面。

测试虚拟工作站

部署完虚拟工作站后,您可以使用多种工具来测试其性能和交互性:

问题排查

本部分列出了在设置或连接到工作站时可能会遇到的一些问题。

无法连接到虚拟工作站

问题:您使用的是 PCoIP Zero Client,但无法连接到虚拟工作站。

解决方案:在连接虚拟工作站之前,请确保 Zero Client 已安装固件版本 6.1 或更高版本。如需了解详情,请与您当地的 Teradici 代表联系。

清理

完成本教程后,请清理您在 Google Cloud 上创建的资源,以免这些资源将来产生费用。

停止虚拟工作站

停用的虚拟工作站会产生永久性磁盘使用费。在停用虚拟工作站后,您随时可以重启。如需停用虚拟工作站,请在 Cloud Shell 中运行以下命令:

gcloud compute instances stop test-vws

删除项目

  1. 在 Cloud Console 中,转到管理资源页面。

    转到“管理资源”

  2. 在项目列表中,选择要删除的项目,然后点击删除
  3. 在对话框中输入项目 ID,然后点击关闭以删除项目。

删除所有组件

  1. 删除虚拟工作站
  2. 删除防火墙规则

后续步骤