GDCV for Bare Metal では、独自のプライベート パッケージ リポジトリ サーバーの使用をサポートしています。この機能を使用すると、デプロイメント内の各ベアメタル マシンへのパッケージ リポジトリの追加が省略されます。ここでは、ベアメタル版 GKE で使用可能なパッケージをすべて利用できるように、プライベート パッケージ リポジトリ サーバーに準備する必要があるパッケージと依存関係の一覧を示します。
準備
Linux ディストリビューションに必要なすべてのパッケージと依存関係がパッケージ リポジトリに含まれている状態にします。
すべてのベアメタル マシンが独自のパッケージ リポジトリ サーバーに到達し、すでに使用されていることを確認します。
デフォルトのパッケージ リポジトリの追加を省略する
デフォルトでは、GKE 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
必要なパッケージとその依存関係
GKE 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 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 |
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)(64 ビット) libdl.so.2()(64 ビット) libdl.so.2(GLIBC_2.2.5)(64 ビット) libmnl.so.0()(64 ビット) libmnl.so.0(LIBMNL_1.0)(64 ビット) libnetfilter_conntrack.so.3()(64 ビット) libnetfilter_cthelper.so.0()(64 ビット) libnetfilter_cthelper.so.0(LIBNETFILTER_CTHELPER_1.0)(64 ビット) libnetfilter_cttimeout.so.1()(64 ビット) libnetfilter_cttimeout.so.1(LIBNETFILTER_CTTIMEOUT_1.0)(64 ビット) libnetfilter_cttimeout.so.1(LIBNETFILTER_CTTIMEOUT_1.1)(64 ビット) libnetfilter_queue.so.1()(64 ビット) libnfnetlink.so.0()(64 ビット) libsystemd.so.0()(64 ビット) libsystemd.so.0(LIBSYSTEMD_209)(64 ビット) rtld(GNU_HASH) systemd |
device-mapper-persistent-data(>= 0.8.5-4.el8) | expat libaio.so.1()(64 ビット) libaio.so.1(LIBAIO_0.1)(64 ビット) libaio.so.1(LIBAIO_0.4)(64 ビット) libc.so.6(GLIBC_2.16)(64 ビット) libdl.so.2()(64 ビット) libdl.so.2(GLIBC_2.2.5)(64 ビット) libexpat.so.1()(64 ビット) libgcc_s.so.1()(64 ビット) libgcc_s.so.1(GCC_3.0)(64 ビット) libm.so.6()(64 ビット) libm.so.6(GLIBC_2.2.5)(64 ビット) libstdc++.so.6()(64 ビット) libstdc++.so.6(CXXABI_1.3)(64 ビット) libstdc++.so.6(GLIBCXX_3.4)(64 ビット) libstdc++.so.6(GLIBCXX_3.4.11)(64 ビット) libstdc++.so.6(GLIBCXX_3.4.15)(64 ビット) libstdc++.so.6(GLIBCXX_3.4.20)(64 ビット) libstdc++.so.6(GLIBCXX_3.4.21)(64 ビット) libstdc++.so.6(GLIBCXX_3.4.9)(64 ビット) 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()(64 ビット) libaio.so.1(LIBAIO_0.1)(64 ビット) libaio.so.1(LIBAIO_0.4)(64 ビット) libblkid.so.1()(64 ビット) libblkid.so.1(BLKID_1.0)(64 ビット) libblkid.so.1(BLKID_2.15)(64 ビット) libblkid.so.1(BLKID_2.17)(64 ビット) libblkid.so.1(BLKID_2.23)(64 ビット) libc.so.6(GLIBC_2.28)(64 ビット) libdevmapper-event.so.1.02()(64 ビット) libdevmapper-event.so.1.02(Base)(64 ビット) libdevmapper.so.1.02()(64 ビット) libm.so.6()(64 ビット) libm.so.6(GLIBC_2.2.5)(64 ビット) libpthread.so.0()(64 ビット) libpthread.so.0(GLIBC_2.2.5)(64 ビット) libreadline.so.7()(64 ビット) libselinux.so.1()(64 ビット) libsepol.so.1()(64 ビット) libsystemd.so.0()(64 ビット) libsystemd.so.0(LIBSYSTEMD_221)(64 ビット) libsystemd.so.0(LIBSYSTEMD_222)(64 ビット) libudev.so.1()(64 ビット) libudev.so.1(LIBUDEV_183)(64 ビット) 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)(64 ビット) libcrypto.so.1.1()(64 ビット) libcrypto.so.1.1(OPENSSL_1_1_0)(64 ビット) libreadline.so.7()(64 ビット) librt.so.1()(64 ビット) librt.so.1(GLIBC_2.2.5)(64 ビット) libssl.so.1.1()(64 ビット) libssl.so.1.1(OPENSSL_1_1_0)(64 ビット) libutil.so.1()(64 ビット) libutil.so.1(GLIBC_2.2.5)(64 ビット) rtld(GNU_HASH) |
iproute(>= 5.3.0-5.el8) | /bin/sh libc.so.6(GLIBC_2.27)(64 ビット) libdb-5.3.so()(64 ビット) libdl.so.2()(64 ビット) libdl.so.2(GLIBC_2.2.5)(64 ビット) libelf.so.1()(64 ビット) libelf.so.1(ELFUTILS_1.0)(64 ビット) libm.so.6()(64 ビット) libm.so.6(GLIBC_2.2.5)(64 ビット) libmnl.so.0()(64 ビット) libmnl.so.0(LIBMNL_1.0)(64 ビット) libselinux.so.1()(64 ビット) 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)(64 ビット) libm.so.6()(64 ビット) libm.so.6(GLIBC_2.2.5)(64 ビット) rtld(GNU_HASH) |
logrotate(>= 3.14.0) | /bin/sh coreutils libacl.so.1()(64 ビット) libacl.so.1(ACL_1.0)(64 ビット) libc.so.6(GLIBC_2.27)(64 ビット) libpopt.so.0()(64 ビット) libpopt.so.0(LIBPOPT_0)(64 ビット) libselinux.so.1()(64 ビット) rtld(GNU_HASH) |
libseccomp-devel (>= 2.5) |
Docker には、次の追加パッケージが必要です。
Ubuntu 18.04 と 20.04
パッケージ | 依存関係 |
---|---|
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) |
CentOS 8 と RHEL
パッケージ | 依存関係 |
---|---|
containerd.io (= 1.5.13*) | container-selinux >= 2:2.74 libseccomp systemd |
docker-ce(= 3:19.03.13*) | (iptables または 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)(64 ビット) libcgroup libdevmapper.so.1.02()(64 ビット) libdevmapper.so.1.02(Base)(64 ビット) libdevmapper.so.1.02(DM_1_02_97)(64 ビット) libdl.so.2()(64 ビット) libdl.so.2(GLIBC_2.2.5)(64 ビット) libpthread.so.0()(64 ビット) libpthread.so.0(GLIBC_2.2.5)(64 ビット) libpthread.so.0(GLIBC_2.3.2)(64 ビット) libseccomp >= 2.3 libseccomp.so.2()(64 ビット) libsystemd.so.0()(64 ビット) libsystemd.so.0(LIBSYSTEMD_209)(64 ビット) rtld(GNU_HASH) systemd tar xz |
docker-ce-cli version:(= 1:19.03.13*) | libc.so.6(GLIBC_2.3)(64 ビット) libdl.so.2()(64 ビット) libdl.so.2(GLIBC_2.2.5)(64 ビット) libpthread.so.0()(64 ビット) libpthread.so.0(GLIBC_2.2.5)(64 ビット) libpthread.so.0(GLIBC_2.3.2)(64 ビット) rtld(GNU_HASH) |