注:
- Oracle 提供的免费实验室环境中提供了本教程。
- 它使用 Oracle Cloud Infrastructure 身份证明、租户和区间示例值。完成实验室后,请使用特定于您的云环境的这些值替换这些值。
OCI 中 Oracle Linux 上的 GraalVM 企业版入门
简介
此上机操作实验展示了如何在 Oracle Cloud Infrastructure 中的 Oracle Linux 上安装 GraalVM 企业版及其功能。
GraalVM 企业版包含在 Oracle Java SE Subscription 中,并在 Oracle Cloud Infrastructure (OCI) 上免费提供
GraalVM Enterprise 是一个高性能的 JDK 分发版,基于可信且安全的 Oracle Java SE 构建,可以加快应用性能,同时减少资源使用量。资源需求较低的应用速度更快,可以转化为较少或更小的服务器,从而降低云成本。
GraalVM 企业版提供了两种运行 Java 应用的方法:在具有 Graal 刚刚 (JIT) 编译器的 HotSpot JVM 上,或者作为提前期 (AOT) 编译的原生宝贵资源。
实验室内容
在此实验室中,您将:
- 连接到 Oracle Cloud 中的 VM 实例
- 在 Oracle Linux 上安装 GraalVM 企业版
- 添加其他 GraalVM 企业版功能(本机映像)
- 更新现有的 GraalVM Enterprise 安装
估计研讨会时间:20 分钟
注意:要复制命令,请将鼠标悬停在字段上,然后单击“复制到剪贴板”图标。

任务 1:连接到 Oracle Cloud 中的 VM 实例
启动实验室时,将在后台预配所需的资源:虚拟云网络 (VCN) 和具有 Oracle Linux 8 预构建映像的计算实例。完成预配可能需要 1-2 分钟。您可以通过参阅“Luna Lab”网页上的“资源”选项卡来判断资源是否已完全预配和就绪(请参见下面的步骤 1)。
-
双击桌面上的 Luna Lab 图标以打开浏览器。

等到动画齿轮(资源除外)变为复选标记。这意味着将预配所有必需的计算和网络资源,您可以继续。

-
取消折叠资源并从 SERVER_IP 框中复制公共 IP 地址。您需要单击
View Details。将鼠标悬停在方框上方时,可以使用最右侧显示的 Copy to clipboard 按钮。
-
最小化浏览器窗口,以便查看 Luna Desktop。单击应用程序菜单并打开终端仿真器。

-
输入 SSH 连接命令,其中
<SERVER_IP>是您的 VM 实例公共 IP 地址:ssh opc@<SERVER_IP>通过在提示符下键入
yes接受 ECDSA 密钥指纹。
您现在已连接到 Oracle Cloud 中的远程主机,可以继续执行下一个任务。
任务 2:安装 GraalVM Enterprise Oracle Linux
在本任务中,您将在 Oracle Linux 上安装 GraalVM Enterprise 并将其设置为默认 Java 运行时。
为了方便安装,Oracle Linux YUM 系统信息库中提供了 GraalVM Enterprise RPM,这意味着 OCI 用户可以使用 yum(适用于 Linux 操作系统的软件包管理实用程序)在其云实例中安装 GraalVM Enterprise。
-
(可选)在连接到 VM 实例的终端窗口中,搜索可用的 GraalVM Enterprise 程序包,将搜索范围缩小到特定发行版和 Java 11:
sudo yum provides graalvm21-ee-11-jdk生成的列表包括 Oracle GraalVM Enterprise Edition JDK11 Java Development Kit 版本 21.x 的当前和以前版本。
-
安装 graalvm21-ee-11-jdk:
sudo yum install graalvm21-ee-11-jdk在提示符下键入
yes,确认已安装的软件包大小是否正常。它将安装最新版本的 graalvm21-ee-11-jdk,其中包括 JVM 运行时、Graal 编译器和所有从属软件包(例如libpolyglot、llvm等)。 -
配置环境变量以指向此 SSH 会话的 GraalVM Enterprise 安装。安装后,会将软件包文件放置在
/usr/lib64/graalvm目录中,并相应地放置在bin中的二进制文件。-
使用以下命令将 bash 配置中的
PATH和JAVA_HOME环境变量设置为指向 GraalVM Enterprise:echo "export JAVA_HOME=/usr/lib64/graalvm/graalvm21-ee-11" >> ~/.bashrcecho 'export PATH=$JAVA_HOME/bin:$PATH' >> ~/.bashrc -
激活此更改:
source ~/.bashrc
-
-
检查 Java 版本以查看安装是否成功,以及 JDK 是否设置为 GraalVM Enterprise:
java -version
至此,您已经在 GraalVM 企业版上运行任何 Java 负载,无需更改代码。GraalVM 企业版使用 Graal 优化编译器作为顶层 JIT 编译器,该编译器执行高级优化并应用主动内嵌技术来提高应用的性能。
此实验室完成后,我们建议您参加 Oracle Cloud 与 GraalVM 企业版助力应用加速实验室。该实验重点讲述在运行 Java Micro Workbenchmark Harness (JMH) 时对 Graal JIT 编译器与 C2 的性能进行比较。
您可以继续执行下一个任务。
任务 3:添加其他 GraalVM 企业版功能(本机映像)
GraalVM 企业版附带了核心组件(以保存文件大小),并且可以按需提供更多功能进行扩展。例如,可以安装 Native Image、Node.js 运行时、LLVM 工具链等。有关有关可用功能的更多信息,请查看产品文档。
要将其他功能添加到 GraalVM Enterprise,yum install <package_name> 命令就足够了。在本任务中,您将安装 GraalVM 企业版的 Native Image,这是一种提前将 Java 代码编译为独立原生可执行文件的技术。
-
(可选)检查可用于当前 GraalVM Enterprise 安装的其他功能:
sudo yum provides graalvm21*印刷清单是巨大的。由于您对 Native Image 组件感兴趣,请缩小提供确切软件包名称的搜索范围:
sudo yum provides graalvm21-ee-11-native-image* -
通过逐个运行这些命令来安装本机映像(特定于 Oracle Linux 8):
sudo yum update -y oraclelinux-release-el8它将更新本地存储库元数据高速缓存以获取新的可用程序包。
sudo yum config-manager --set-enabled ol8_codeready_builder它将启用包含某些本机映像依赖项的
ol8_codeready_builder系统信息库。sudo yum install graalvm21-ee-11-native-image在提示符下键入
yes,确认已安装的软件包大小是否正常。它将安装所有必需的从属库(例如glibc、zlib等),并将native-image实用程序放置在 GraalVM Enterprise 安装目录 ($JAVA_HOME/bin) 中。
在 Oracle Linux 7 上,运行 sudo yum install graalvm21-ee-11-native-image可安装本机映像就足够了。 -
检查版本以查看安装是否成功:
native-image --version
现在,您可以开始使用 native-image 实用程序将 Java 应用程序转换为本机 Linux 可执行文件。以原生可执行文件身份运行 Java 应用,实现即时启动、降低 CPU 和内存使用量,使其成为云部署的理想人选。
我们建议您在实验室完成后参加 GraalVM Native Image Quick Start 实验室,使用 GraalVM Native Image 获得上机练习体验,并开始构建云原生 Java 应用。
您可以继续执行下一个任务。
任务 4:更新现有的 GraalVM Enterprise 安装
Oracle Linux 的 yum 软件包管理器可用于更新现有的 GraalVM Enterprise 安装或将其替换为其他版本。在本任务中,您将 GraalVM 企业版从版本 21.x 更新为 22.x,并将 Java 11 的分发版本替换为适用于 Java 17 的 GraalVM 企业版。
-
将 GraalVM 企业版从版本 21.x 更新为 22.x,并安装 Java 17 而非 Java 11 的分发版本:
sudo yum install graalvm22-ee-17-jdk在提示符下键入
yes,确认已安装的软件包大小是否正常。 -
检查 Java 版本以查看更新是否成功:
java -versiongraalvm22-ee-17-jdk 软件包与
/usr/lib64/graalvm目录中的 graalvm21-ee-11-jdk 一起安装,整个系统已更新:
注:无论将版本输出到控制台,
PATH和JAVA_HOME环境变量仍指向旧版本。按照任务 2 步骤 3 的说明重置变量。
有关 yum upgrade 命令的说明
yum upgrade 命令可用于在同一年软件包行上更新,例如,当此 RPM 软件包可用时,从 GraalVM Enterprise 22.0.0 升级到版本 22.0.1:
sudo yum upgrade graalvm22-ee-17-jdk
它将更新整个系统并删除过时的 GraalVM Enterprise 安装。
祝贺您!您已成功完成此实验。
了解更多
- 将 Accelerate Applications in Oracle Cloud with GraalVM Enterprise实验重点放在比较 Graal JIT 编译器与 C2 的性能上。
- 要开始构建云原生 Java 应用并使用 GraalVM Native Image 获取上机操作体验,请转到 GraalVM Native Image Quick Start
- 查看 GraalVM 企业版文档
- 访问产品页面,网址为 oracle.com
要结束此会话,请单击工具栏中的“结束会话”按钮。
更多学习资源
在 docs.oracle.com/learn 上浏览其他实验室,或者在 Oracle Learning YouTube 渠道上访问更多免费学习内容。此外,访问 education.oracle.com/learning-explorer 以成为 Oracle Learning Explorer。
有关产品文档,请访问 Oracle 帮助中心。
Get Started with GraalVM on Oracle Linux in OCI
F54852-01
March 2022
Copyright © 2022, Oracle and/or its affiliates.