Cài đặt OpenJDK 17 trên Ubuntu 24.04
Ubuntu 24.04 LTS mặc định đã bao gồm OpenJDK 17 trong kho lưu trữ chính thức, giúp quá trình cài đặt trở nên nhanh chóng và an toàn hơn so với việc tải từ PPA bên thứ ba.
Thực hiện cập nhật danh sách gói phần mềm mới nhất để đảm bảo chúng ta cài đặt phiên bản OpenJDK 17 mới nhất có sẵn trong kho.
sudo apt update
Hệ thống sẽ liệt kê các repository đã được cập nhật và hiển thị trạng thái "Get" hoặc "Hit" cho từng nguồn dữ liệu.
Cài đặt gói OpenJDK 17 JDK (Java Development Kit) bao gồm cả JRE và các công cụ phát triển cần thiết để build Druid.
sudo apt install -y openjdk-17-jdk
Quá trình cài đặt sẽ tải về các gói phụ thuộc và giải nén chúng vào hệ thống, hiển thị tiến độ phần trăm và trạng thái "Setting up" khi hoàn thành.
Verify OpenJDK 17
Kiểm tra phiên bản Java hiện đang hoạt động trên hệ thống để xác nhận phiên bản 17 đã được cài đặt thành công.
java -version
Đầu ra phải hiển thị dòng chứa "openjdk version "17.x.x" và "Java(TM) SE Runtime Environment" hoặc tương đương với OpenJDK.
Xác định đường dẫn thực tế của thư mục cài đặt Java (installation directory) để cấu hình biến môi trường chính xác sau này.
readlink -f $(which java)
Lệnh này sẽ trả về đường dẫn đầy đủ như `/usr/lib/jvm/java-17-openjdk-amd64/bin/java`.
Cấu hình biến môi trường JAVA_HOME
Apache Druid yêu cầu biến môi trường `JAVA_HOME` phải trỏ chính xác đến thư mục gốc của JDK, không phải thư mục `bin`, để các script build và runtime hoạt động đúng.
Sử dụng lệnh `readlink` kết hợp với `dirname` hai lần để trích xuất đường dẫn thư mục gốc của JDK từ đường dẫn của file `java`.
JAVA_HOME_PATH=$(dirname $(dirname $(readlink -f $(which java))))
Biến `JAVA_HOME_PATH` giờ chứa đường dẫn gốc, ví dụ: `/usr/lib/jvm/java-17-openjdk-amd64`.
Chèn biến môi trường `JAVA_HOME` vào file cấu hình toàn cục `/etc/environment` để đảm bảo nó được tải lên cho tất cả các user, bao gồm cả các service chạy dưới quyền root hoặc user cụ thể.
echo "JAVA_HOME=$JAVA_HOME_PATH" | sudo tee -a /etc/environment
File `/etc/environment` sẽ được cập nhật thêm dòng `JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64` (hoặc đường dẫn tương ứng).
Để áp dụng biến môi trường ngay lập tức cho phiên terminal hiện tại mà không cần logout/login lại, thực hiện lệnh export.
export JAVA_HOME=$JAVA_HOME_PATH
Biến môi trường hiện tại sẽ được cập nhật, bạn có thể kiểm tra bằng lệnh `echo $JAVA_HOME`.
Verify JAVA_HOME
Kiểm tra giá trị của biến `JAVA_HOME` để đảm bảo nó trỏ đúng thư mục JDK.
echo $JAVA_HOME
Kết quả phải là đường dẫn thư mục gốc JDK, ví dụ: `/usr/lib/jvm/java-17-openjdk-amd64`.
Kiểm tra xem file `java` trong thư mục `bin` của biến `JAVA_HOME` có tồn tại và có thể chạy được không.
$JAVA_HOME/bin/java -version
Đầu ra phải giống hệt như khi chạy lệnh `java -version` ở phần trước, xác nhận đường dẫn đúng.
Cài đặt Apache Maven trên Ubuntu 24.04
Apache Maven là công cụ build tự động cần thiết để biên dịch mã nguồn Apache Druid từ nguồn code (source code) sang các file nhị phân.
Cài đặt gói Maven từ kho lưu trữ chính thức của Ubuntu, đảm bảo tính tương thích với phiên bản hệ điều hành hiện tại.
sudo apt install -y maven
Quá trình cài đặt sẽ tải về các gói Maven và các thư viện Java phụ thuộc, sau đó cấu hình sẵn trong hệ thống.
Verify Apache Maven
Kiểm tra phiên bản Maven đã cài đặt để xác nhận công cụ build đã sẵn sàng.
mvn -version
Đầu ra phải hiển thị thông tin về phiên bản Apache Maven, phiên bản Java đang sử dụng và đường dẫn đến thư mục installation (thường là `/usr/share/maven`).
Đảm bảo dòng "Java version" trong đầu ra của lệnh trên khớp với phiên bản 17 đã cài đặt ở phần trước.
mvn -version | grep "Java version"
Kết quả phải hiển thị "Java version 17.x.x", xác nhận Maven đang sử dụng đúng OpenJDK 17.
Khởi động lại môi trường để áp dụng cấu hình
Mặc dù đã thực hiện `export` thủ công, nhưng để đảm bảo mọi session shell mới hoặc các service systemd khởi động sau này đều nhận đúng biến `JAVA_HOME` từ file `/etc/environment`, cần cập nhật session hiện tại.
Khởi động lại shell hiện tại để tải lại các biến môi trường từ `/etc/environment`.
exec $SHELL -l
Terminal sẽ đóng và mở lại, bạn sẽ thấy prompt shell xuất hiện trở lại với các biến môi trường đã được cập nhật từ file cấu hình.
Thực hiện kiểm tra cuối cùng để xác nhận toàn bộ môi trường Java và Maven đã sẵn sàng cho bước build Druid trong phần tiếp theo.
echo "JAVA_HOME: $JAVA_HOME"; java -version; mvn -version
Đầu ra sẽ liệt kê đầy đủ đường dẫn `JAVA_HOME`, phiên bản Java 17 và phiên bản Maven, xác nhận môi trường đã chuẩn bị hoàn tất.
Điều hướng series:
Mục lục: Series: Triển khai Database OLAP với Apache Druid trên Ubuntu 24.04
« Phần 1: Chuẩn bị môi trường Ubuntu 24.04 và yêu cầu hệ thống cho Apache Druid
Phần 3: Xây dựng và cài đặt Apache Druid từ nguồn code »