使用私有软件包代码库服务器

Anthos clusters on Bare Metal 支持使用您自己的私有软件包代码库服务器。使用此功能可跳过向部署中的每一个裸机机器添加软件包代码库的步骤。为确保 Anthos clusters on Bare Metal 可提供所有必需的软件包,本页列出了您需要在私有软件包代码库服务器中准备的所有软件包和依赖项。

准备工作

确保您的软件包代码库包含您的 Linux 发行版所需的所有软件包和依赖项。

确保所有裸机机器都可以访问并且已在使用您自己的软件包代码库服务器。

跳过添加默认软件包代码库

默认情况下,Anthos clusters on Bare Metal 会将 Docker apt 代码库和所需的 GPG 密钥添加到您的机器。

如需改为使用您自己的软件包代码库,请在集群配置文件的 osEnvironmentConfig 部分下将 addPackageRepo 字段设置为 false

配置中的条目应类似如下示例:

apiVersion: baremetal.cluster.gke.io/v1
kind: Cluster
metadata:
  name: cluster1
  namespace: cluster-cluster1
spec:
  osEnvironmentConfig:
    addPackageRepo: false

所需的软件包及其依赖项

Anthos clusters on Bare Metal 会尝试在您的机器上安装以下软件包。您的私有软件包代码库服务器必须包含下列版本的软件包及其依赖项。

Ubuntu 18.04 和 20.04

套餐 依赖项
python3 (>= 3.6.7-1) python3.6 (>= 3.6.7-1~)、libpython3-stdlib (= 3.6.7-1~18.04)
apt-transport-https (>= 1.6.12) apt (>= 1.5)
ca-certificates (>=20210119) openssl (>= 1.1.0)、debconf (>= 0.5) | debconf-2.0
conntrack (>= 1:1.4.4+snapshot20161117-6) libc6 (>= 2.14)、libmnl0 (>= 1.0.3-4~)、libnetfilter-conntrack3、libnfnetlink0
curl (>= 7.58.0) libc6 (>= 2.17)、libcurl4 (= 7.58.0-2ubuntu3.12)、zlib1g (>= 1:1.1.4)
software-properties-common (>= 0.96.24.32.14) python3:any (>= 3.3.2-2~)、python3、python3-gi、gir1.2-glib-2.0、python-apt-common (>= 0.9)、python3-dbus、python3-software-properties (=0.96.24.32.14)、ca-certificates
gnupg2 (>= 2.2.4) gnupg (>= 2.2.4-1ubuntu1.4)
socat (>= 1.7.3.2) libc6 (>= 2.15)、libssl1.1 (>= 1.1.0)、libwrap0 (>= 7.6-4~)
iproute2 (>= 4.15.0) libc6 (>= 2.27)、libdb5.3、libelf1 (>= 0.131)、libmnl0 (>= 1.0.3-4~)、libselinux1 (>= 2.0.15)
ebtables (>= 2.0.10.4-3.5) libc6 (>= 2.14)
ethtool (>= 1:4.15-0)

CentOS 8 和 RHEL

套餐 依赖项
python36 (>= 3.6.8) /bin/sh
/usr/libexec/platform-python
/usr/sbin/alternatives
python3-pip
python3-setuptools
conntrack (>= 1.4.4-10.el8) /bin/sh
libc.so.6(GLIBC_2.15)(64bit)
libdl.so.2()(64bit)
libdl.so.2(GLIBC_2.2.5)(64bit)
libmnl.so.0()(64bit)
libmnl.so.0(LIBMNL_1.0)(64bit)
libnetfilter_conntrack.so.3()(64bit)
libnetfilter_cthelper.so.0()(64bit)
libnetfilter_cthelper.so.0(LIBNETFILTER_CTHELPER_1.0)(64bit)
libnetfilter_cttimeout.so.1()(64bit)
libnetfilter_cttimeout.so.1(LIBNETFILTER_CTTIMEOUT_1.0)(64bit)
libnetfilter_cttimeout.so.1(LIBNETFILTER_CTTIMEOUT_1.1)(64bit)
libnetfilter_queue.so.1()(64bit)
libnfnetlink.so.0()(64bit)
libsystemd.so.0()(64bit)
libsystemd.so.0(LIBSYSTEMD_209)(64bit)
rtld(GNU_HASH)
systemd
device-mapper-persistent-data (>= 0.8.5-4.el8) expat
libaio.so.1()(64bit)
libaio.so.1(LIBAIO_0.1)(64bit)
libaio.so.1(LIBAIO_0.4)(64bit)
libc.so.6(GLIBC_2.16)(64bit)
libdl.so.2()(64bit)
libdl.so.2(GLIBC_2.2.5)(64bit)
libexpat.so.1()(64bit)
libgcc_s.so.1()(64bit)
libgcc_s.so.1(GCC_3.0)(64bit)
libm.so.6()(64bit)
libm.so.6(GLIBC_2.2.5)(64bit)
libstdc++.so.6()(64bit)
libstdc++.so.6(CXXABI_1.3)(64bit)
libstdc++.so.6(GLIBCXX_3.4)(64bit)
libstdc++.so.6(GLIBCXX_3.4.11)(64bit)
libstdc++.so.6(GLIBCXX_3.4.15)(64bit)
libstdc++.so.6(GLIBCXX_3.4.20)(64bit)
libstdc++.so.6(GLIBCXX_3.4.21)(64bit)
libstdc++.so.6(GLIBCXX_3.4.9)(64bit)
rtld(GNU_HASH)
dnf-plugins-core (>= 4.0.17-5.el8) python3-dnf-plugins-core = 4.0.17-5.el8
lvm2 (>= 8:2.03.09-5.el8) /bin/bash
/bin/sh
bash >= 4.0
device-mapper-persistent-data >= 0.7.0-0.1.rc6
libaio.so.1()(64bit)
libaio.so.1(LIBAIO_0.1)(64bit)
libaio.so.1(LIBAIO_0.4)(64bit)
libblkid.so.1()(64bit)
libblkid.so.1(BLKID_1.0)(64bit)
libblkid.so.1(BLKID_2.15)(64bit)
libblkid.so.1(BLKID_2.17)(64bit)
libblkid.so.1(BLKID_2.23)(64bit)
libc.so.6(GLIBC_2.28)(64bit)
libdevmapper-event.so.1.02()(64bit)
libdevmapper-event.so.1.02(Base)(64bit)
libdevmapper.so.1.02()(64bit)
libm.so.6()(64bit)
libm.so.6(GLIBC_2.2.5)(64bit)
libpthread.so.0()(64bit)
libpthread.so.0(GLIBC_2.2.5)(64bit)
libreadline.so.7()(64bit)
libselinux.so.1()(64bit)
libsepol.so.1()(64bit)
libsystemd.so.0()(64bit)
libsystemd.so.0(LIBSYSTEMD_221)(64bit)
libsystemd.so.0(LIBSYSTEMD_222)(64bit)
libudev.so.1()(64bit)
libudev.so.1(LIBUDEV_183)(64bit)
lvm2-libs = 8:2.03.09-5.el8
module-init-tools
rtld(GNU_HASH)
systemd-sysv
systemd-units >= 189-3
socat (>= 1.7.3.3-2.el8) libc.so.6(GLIBC_2.15)(64bit)
libcrypto.so.1.1()(64bit)
libcrypto.so.1.1(OPENSSL_1_1_0)(64bit)
libreadline.so.7()(64bit)
librt.so.1()(64bit)
librt.so.1(GLIBC_2.2.5)(64bit)
libssl.so.1.1()(64bit)
libssl.so.1.1(OPENSSL_1_1_0)(64bit)
libutil.so.1()(64bit)
libutil.so.1(GLIBC_2.2.5)(64bit)
rtld(GNU_HASH)
iproute (>= 5.3.0-5.el8) /bin/sh
libc.so.6(GLIBC_2.27)(64bit)
libdb-5.3.so()(64bit)
libdl.so.2()(64bit)
libdl.so.2(GLIBC_2.2.5)(64bit)
libelf.so.1()(64bit)
libelf.so.1(ELFUTILS_1.0)(64bit)
libm.so.6()(64bit)
libm.so.6(GLIBC_2.2.5)(64bit)
libmnl.so.0()(64bit)
libmnl.so.0(LIBMNL_1.0)(64bit)
libselinux.so.1()(64bit)
rtld(GNU_HASH)
iproute-tc (>= 5.3.0-5.el8)
iptables-ebtables (>= 1.8.4-15.el8_3.3) /bin/bash
/bin/sh
iptables = 1.8.4-15.el8_3.3
ethtool (>= 2:5.0-2.el8 ) libc.so.6(GLIBC_2.14)(64bit)
libm.so.6()(64bit)
libm.so.6(GLIBC_2.2.5)(64bit)
rtld(GNU_HASH)

Docker 需要以下额外的软件包:

Ubuntu 18.04 和 20.04

套餐 依赖项
containerd.io (= 1.4.3*) libc6 (>= 2.14)、libseccomp2 (>= 2.4.0)
docker-ce (= 5:19.03.13*) containerd.io (>= 1.4.1)、docker-ce-cli、iptables、libseccomp2 (>= 2.3.0)、libc6 (>= 2.8)、libdevmapper1.02.1 (>= 2:1.02.97)、libsystemd0
docker-ce-cli 版本:(= 5:19.03.13*) libc6 (>= 2.4)

CentOS 8 和 RHEL

套餐 依赖项
containerd.io (= 1.4.3*) container-selinux >= 2:2.74
libseccomp
systemd
docker-ce (= 3:19.03.13*) (iptables or nftables)
container-selinux >= 2:2.74
containerd.io >= 1.2.2-3
device-mapper-libs >= 1.02.90-1
docker-ce-cli
libc.so.6(GLIBC_2.3)(64bit)
libcgroup
libdevmapper.so.1.02()(64bit)
libdevmapper.so.1.02(Base)(64bit)
libdevmapper.so.1.02(DM_1_02_97)(64bit)
libdl.so.2()(64bit)
libdl.so.2(GLIBC_2.2.5)(64bit)
libpthread.so.0()(64bit)
libpthread.so.0(GLIBC_2.2.5)(64bit)
libpthread.so.0(GLIBC_2.3.2)(64bit)
libseccomp >= 2.3
libseccomp.so.2()(64bit)
libsystemd.so.0()(64bit)
libsystemd.so.0(LIBSYSTEMD_209)(64bit)
rtld(GNU_HASH)
systemd
tar
xz
docker-ce-cli 版本:(= 1:19.03.13*) libc.so.6(GLIBC_2.3)(64bit)
libdl.so.2()(64bit)
libdl.so.2(GLIBC_2.2.5)(64bit)
libpthread.so.0()(64bit)
libpthread.so.0(GLIBC_2.2.5)(64bit)
libpthread.so.0(GLIBC_2.3.2)(64bit)
rtld(GNU_HASH)