Usa un servidor de repositorio de paquetes privado

GKE en Bare Metal admite el uso de tu propio servidor de repositorio de paquetes privado. Usa esta función para omitir la adición de repositorios de paquetes a cada máquina de equipos físicos en tu implementación. Para asegurarte de que GKE en Bare Metal tenga todos los paquetes necesarios disponibles, en esta página, se enumeran todos los paquetes y las dependencias que necesitas preparar en tu servidor de repositorio de paquetes privado.

Antes de comenzar

Asegúrate de que el repositorio de paquetes incluya todos los paquetes y las dependencias necesarios para la distribución de Linux.

Asegúrate de que se pueda acceder a todas tus máquinas de equipos físicos y usar tu propio servidor del repositorio de paquetes.

Omite la adición del repositorio de paquetes predeterminado

De forma predeterminada, GKE en Bare Metal agrega el repositorio apt de Docker y la clave de GPG necesaria a tus máquinas.

Para usar tu propio repositorio de paquetes, configura el campo addPackageRepo como false en la sección osEnvironmentConfig del archivo de configuración del clúster.

La entrada en tu configuración debería ser similar al siguiente ejemplo:

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

Paquetes necesarios y sus dependencias

GKE en Bare Metal intenta instalar los siguientes paquetes en tus máquinas. El servidor de repositorio de paquetes privado debe contener todos los paquetes y sus dependencias con las versiones enumeradas en la siguiente tabla para tu sistema operativo:

Ubuntu 18.04 y 20.04

Paquete Dependencias
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
libnfnetlink
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)
logrotate (>= 3.11.0) libacl1 (>= 2.2.51-8)
libc6 (>= 2.14)
libpopt0 (>= 1.14)
libselinux1 (>= 1.32)
cron | anacron | cron-daemon
base-passwd (>= 2.0.3.4)
libseccomp-dev (>= 2.5) libseccomp2

RHEL

Paquete Dependencias
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)
logrotate (>= 3.14.0) /bin/sh
coreutils
libacl.so.1()(64bit)
libacl.so.1(ACL_1.0)(64bit)
libc.so.6(GLIBC_2.27)(64bit)
libpopt.so.0()(64bit)
libpopt.so.0(LIBPOPT_0)(64bit)
libselinux.so.1()(64bit)
rtld(GNU_HASH)
libseccomp-devel (>= 2.5)

Docker requiere los siguientes paquetes adicionales:

Ubuntu 18.04 y 20.04

Paquete Dependencias
containerd.io (= 1.5.13*) libc6 (>= 2.14), libseccomp2 (>= 2.5.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 versión: (= 5:19.03.13*) libc6 (>= 2.4)

RHEL

Paquete Dependencias
containerd.io (= 1.5.13*) container-selinux >= 2:2.74
libseccomp
systemd
docker-ce (= 3:19.03.13*) (iptables o 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 versión: (= 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)