Utiliser un serveur de dépôt de packages privé

GKE sur Bare Metal permet d'utiliser votre propre serveur de dépôt de packages privé. Utilisez cette fonctionnalité pour éviter d'ajouter des dépôts de packages à chaque machine Bare Metal de votre déploiement. Pour vous assurer que GKE sur Bare Metal dispose de tous les packages requis, cette page liste tous les packages et dépendances que vous devez préparer sur votre serveur de dépôt de packages privé.

Avant de commencer

Assurez-vous que votre dépôt de packages inclut tous les packages et dépendances nécessaires pour votre distribution Linux.

Assurez-vous que toutes vos machines Bare Metal peuvent atteindre et utilisent déjà votre propre serveur de dépôt de packages.

Ignorer l'ajout du dépôt de package par défaut

Par défaut, GKE sur une solution Bare Metal ajoute le dépôt Docker apt et la clé GPG nécessaire à vos machines.

Pour utiliser votre propre dépôt de packages, définissez le champ addPackageRepo sur false dans la section osEnvironmentConfig du fichier de configuration de votre cluster.

L'entrée de votre configuration doit ressembler à l'exemple suivant :

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

Packages nécessaires et leurs dépendances

GKE sur Bare Metal tente d'installer les packages suivants sur vos machines. Votre serveur de dépôt de packages privé doit contenir tous les packages et leurs dépendances avec les versions répertoriées dans le tableau suivant pour votre système d'exploitation:

Ubuntu 18.04 et 20.04

Package Dépendances
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 ou version ultérieure)
libmnl0 (1.0.3-4~)
libnetfilter-conntrack3
libnfnetlink
curl (>= 7.58.0) libc6 (2.17 ou plus)
libcurl4 (= 7.58.0-2Ubuntu3.12)
zlib1g (1:1.1.4 ou plus)
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 ou version ultérieure)
libssl1.1 (1.1.0 ou version ultérieure)
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

Package Dépendances
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 nécessite les packages supplémentaires suivants :

Ubuntu 18.04 et 20.04

Package Dépendances
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 version: (= 5:19.03.13*) libc6 (>= 2.4)

RHEL

Package Dépendances
containerd.io (= 1.5.13*) 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 version: (= 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)