安装 AlloyDB Omni for Linux

选择文档版本:

您可以在支持 RHEL 9 运行时的任何 Linux 机器或裸金属服务器上执行 AlloyDB Omni 的单实例安装。

如需开始使用此部署模型,请提交此表单以申请访问权限

准备工作

在安装 AlloyDB Omni 之前,请参阅规划 AlloyDB Omni 安装

创建 AlloyDB Omni 数据存储目录

如果您使用的存储系统在运行 AlloyDB Omni 的同时还运行其他应用,您可以在设备的现有文件系统上创建 AlloyDB Omni 目录。否则,您可以在专用设备上创建新的文件系统。

现有文件系统

如需在现有文件系统中创建目录,请运行以下命令:

mkdir -p DATA_DIR

执行以下变量替换操作:

  • DATA_DIR:存储数据的主机目录路径。

专用设备

如需在专用文件系统中创建目录,请执行以下步骤:

  1. 在将装载磁盘的主机上创建一个目录。

    mkdir -p MOUNT_POINT

    执行以下变量替换操作:

    • MOUNT_POINT:应包含 AlloyDB Omni 实例的顶层目录路径。
  2. 创建 gpt 分区表和文件系统,并装载磁盘设备。

    EXT4

    parted -s DEVICE_PATH mklabel gpt
    parted -s DEVICE_PATH mkpart primary 0% 100%
    mkfs.ext4 -q -m 1 -L FS_LABEL -F PARTITION_PATH
    echo -e "LABEL=FS_LABEL\tMOUNT_POINT\text4\tdefaults\t0 0" | tee -a /etc/fstab
    mount MOUNT_POINT

    执行以下变量替换操作:

    • DEVICE_PATH:操作系统为磁盘设备分配的路径。
    • FS_LABEL:文件系统的标签。对于 xfs,长度上限为 12 个字符。
    • PARTITION_PATH:用于存储文件系统数据的磁盘分区的路径。

    XFS

    parted -s DEVICE_PATH mklabel gpt
    parted -s DEVICE_PATH mkpart primary 0% 100%
    dnf install xfsprogs
    mkfs.xfs -L FS_LABEL -f PARTITION_PATH
    echo -e "LABEL=FS_LABEL\tMOUNT_POINT\txfs\tdefaults\t0 0" | tee -a /etc/fstab
    mount MOUNT_POINT

    执行以下变量替换操作:

    • DEVICE_PATH:操作系统为磁盘设备分配的路径。
    • FS_LABEL:文件系统的标签。ext4 的最大长度为 16 个字符。
    • PARTITION_PATH:用于存储文件系统数据的磁盘分区的路径。
  3. 在此文件系统中创建数据目录。我们建议将 DATA_DIR 创建为装载点内的子目录,例如 MOUNT_POINT/17

    mkdir -p DATA_DIR

    DATA_DIR 替换为用于存储数据库相关数据的主机目录路径,例如 MOUNT_POINT/17

配置 SELinux 政策

安装所需的 policycoreutils-python-utils 软件包,以便在安装 AlloyDB Omni RPM 软件包时,将 SELinux 政策配置为允许 AlloyDB Omni 数据库服务。

安装 AlloyDB Omni

  1. 在本地目录中配置 YUM 代码库。

    sudo tee -a /etc/yum.repos.d/alloydbomni.repo << EOF
    [alloydbomni]
    name=alloydbomni
    baseurl=ALLOYDB_OMNI_URL
    enabled=1
    repo_gpgcheck=0
    gpgcheck=1
    gpgkey=https://dl.google.com/linux/linux_signing_key.pub
    EOF
    
    $ sudo yum makecache
    

    ALLOYDB_OMNI_URL 替换为您在注册访问权限后收到的 AlloyDB Omni 网址。

  2. 安装 AlloyDB Omni RPM 软件包。

    sudo dnf install alloydbomni17
  3. 初始化并配置 AlloyDB Omni 数据库。

    sudo PGPASSWORD=POSTGRES_PASSWORD PGDATA=DATA_DIR /usr/lib/postgresql/17/bin/alloydbomni17-setup initdb

    您可以选择在 POSTGRES_INITDB_ARGS 变量中以单个字符串的形式传递标准 initdb 选项。

  4. 准备 AlloyDB Omni 数据库。

    sudo PGPASSWORD=POSTGRES_PASSWORD /usr/lib/postgresql/17/bin/alloydbomni17-setup preparedb
  5. 可选。如需优化 AlloyDB Omni 服务的执行,请运行以下命令。

    sudo /usr/lib/postgresql/17/bin/alloydbomni17-setup-host
  6. 启动 AlloyDB Omni systemd 服务。

    sudo systemctl enable alloydbomni17
    $ sudo systemctl start alloydbomni17
  7. 检查 AlloyDB Omni 服务是否已成功运行。

    sudo systemctl status alloydbomni17

    以下是示例回答。验证状态是否为有效(正在运行)。

        Loaded: loaded (/usr/lib/systemd/system/alloydbomni17.service; enabled; preset: disabled)
       Drop-In: /etc/systemd/system/alloydbomni17.service.d
         Active: active (running) since Wed 2025-11-19 07:37:31 UTC; 1 day 6h ago "
       Process: 120228 ExecStartPre=/usr/lib/postgresql/17/bin/alloydbomni17-check-db-dir ${PGDATA} (code=exited, status=0 SUCCESS)
      Main PID: 120231 (postgres)
         Tasks: 19 (limit: 203438)
        Memory: 161.7M (peak: 170.0M)
           CPU: 28min 10.149s
        CGroup: /system.slice/alloydbomni17.service
                ├─120231 /usr/lib/postgresql/17/bin/postgres -D /var/lib/postgresql/17/data
                ├─120232 "postgres: alloydb internal logger "
                ├─120233 "postgres: checkpointer "
                ├─120234 "postgres: background writer "
                ├─120237 "postgres: walwriter "
                ├─120243 "postgres: lux wal preallocator "
                ├─120244 "postgres: autovacuum launcher "
                ├─120246 "postgres: free buffer manager "
                ├─120247 "postgres: buffer control "
    

后续步骤