Als ich versuchte, Kubernetes (Minikube) unter CentOS7 unter VirtualBox (Mac + Vagrant) auszuführen, musste ich VirtualBox unter CentOS7 installieren.
Ich werde das Verfahren zu diesem Zeitpunkt beschreiben.
Fügen Sie CentOS das virtualBox yum-Repository hinzu, indem Sie auf die offizielle Website unten verweisen.
$ sudo wget https://download.virtualbox.org/virtualbox/rpm/el/virtualbox.repo -O /etc/yum.repos.d/virtualbox.repo
Auf der offiziellen Webseite
Note that importing the key is not necessary for yum users (Oracle Linux/Fedora/RHEL/CentOS) when using one of the virtualbox.repo files from below as yum downloads and imports the public key automatically!
(Google-Übersetzung) yum lädt den öffentlichen Schlüssel automatisch herunter und importiert ihn. Wenn Sie also eine der folgenden virtualbox.repo-Dateien verwenden, geben Sie den Schlüssel an yum-Benutzer weiter (Oracle Linux / Fedora / RHEL / CentOS). Kein Import erforderlich.
Ist geschrieben, aber das ist nicht der Fall.
Weil, um die installierbare Version später zu überprüfen
yum list |grep Virtual
Dies liegt daran, dass der öffentliche Schlüssel zur Überprüfung auf Manipulationen im Voraus in CentOS importiert werden muss. Sie müssen diesen öffentlichen Schlüssel also eventuell importieren. (Dies ist natürlich nicht der Fall, wenn Sie die installierbare Version im Voraus kennen.)
Importieren Sie den öffentlichen Schlüssel wie auf der offiziellen Website beschrieben.
wget https://www.virtualbox.org/download/oracle_vbox.asc
sudo rpm --import oracle_vbox.asc
Überprüfen Sie die Version von VirtualBox, die installiert werden kann.
$ yum list |grep Virtual
VirtualBox-4.3.x86_64 4.3.40_110317_el7-1 virtualbox
VirtualBox-5.0.x86_64 5.0.40_115130_el7-1 virtualbox
VirtualBox-5.1.x86_64 5.1.38_122592_el7-1 virtualbox
VirtualBox-5.2.x86_64 5.2.38_136252_el7-1 virtualbox
VirtualBox-6.0.x86_64 6.0.18_136238_el7-1 virtualbox
VirtualBox-6.1.x86_64 6.1.4_136177_el7-1 virtualbox
Installieren Sie die neueste Version.
sudo yum install VirtualBox-6.1.x86_64
Lassen Sie uns überprüfen, ob virtualbox funktioniert.
$ virtualbox
WARNING: The vboxdrv kernel module is not loaded. Either there is no module
available for the current kernel (3.10.0-957.12.2.el7.x86_64) or it failed to
load. Please recompile the kernel module and install it by
sudo /sbin/vboxconfig
You will not be able to start VMs until this problem is fixed.
Qt FATAL: QXcbConnection: Could not connect to display
Aborted
Ich habe einen Fehler bekommen. Die Fehlermeldung besagt, dass "sudo / sbin / vboxconfig" ausgeführt werden soll, daher werde ich versuchen, es gehorsam auszuführen.
$ sudo /sbin/vboxconfig
vboxdrv.sh: Stopping VirtualBox services.
vboxdrv.sh: Starting VirtualBox services.
vboxdrv.sh: Building VirtualBox kernel modules.
This system is currently not set up to build kernel modules.
Please install the gcc make perl packages from your distribution.
Please install the Linux kernel "header" files matching the current kernel
for adding new hardware support to the system.
The distribution packages containing the headers are probably:
kernel-devel kernel-devel-3.10.0-957.12.2.el7.x86_64
Ein Fehler ist aufgetreten. Mit Blick auf die Fehlermeldung,
Please install the gcc make perl packages from your distribution.
Da wird gesagt, dass es gehorsam installiert wird.
$ sudo yum install gcc make perl
Darüber hinaus enthielt die Fehlermeldung Folgendes:
Please install the Linux kernel "header" files matching the current kernel for adding new hardware support to the system.
The distribution packages containing the headers are probably:
kernel-devel kernel-devel-3.10.0-957.12.2.el7.x86_64
Da es keinen Kernel-Entwickler gibt, installieren Sie ihn auch gehorsam.
$ sudo yum install kernel-devel
Starten Sie CentOS neu, damit die Einstellungen wirksam werden, und versuchen Sie es erneut. (Neustart ist möglicherweise nicht erforderlich)
$ sudo /sbin/vboxconfig
Please install the Linux kernel "header" files matching the current kernel for adding new hardware support to the system.
The distribution packages containing the headers are probably:
kernel-devel kernel-devel-3.10.0-957.12.2.el7.x86_64
Das? Es ist der gleiche Fehler, weil es keine "Kernel-Entwicklung" gibt.
Ich habe mich gefragt, ob SELinux beteiligt ist, also habe ich versucht, SELinux zu deaktivieren, aber die Situation hat sich nicht geändert.
Nach vielen Recherchen schien die Ursache darin zu liegen, dass die Kernel-Entwicklung, die der CentOS-Kernel-Version entspricht, nicht installiert wurde.
$ sudo yum install kernel-devel
In diesem Fall wird die neueste Version von kenel-devel installiert. Die neueste Version von kenel-devel stimmte nicht mit der Version des CentOS-Kernels überein, sodass ein Fehler auftrat.
Einzelheiten finden Sie in der folgenden Erklärung. Es wird sehr hilfreich sein. Befolgen Sie die hier beschriebenen Schritte, um Kernel-Entwicklung zu installieren, die mit Ihrer CentOS-Kernel-Version übereinstimmt. https://qiita.com/metheglin/items/60261f474ccdfb467574
Dann versuchen Sie es erneut.
$ sudo /sbin/vboxconfig
vboxdrv.sh: Stopping VirtualBox services.
vboxdrv.sh: Starting VirtualBox services.
vboxdrv.sh: Building VirtualBox kernel modules.
Es hat endlich geklappt!
Dieses Mal habe ich CentOS7 auf der virtualBox von Mac ausgeführt und versucht, VirtualBox auf diesem CentOS auszuführen. Aus diesem Grund habe ich versucht, Kubernetes (Minikube) unter CentOS auszuführen.
Das Ausführen weiterer VMs in diesen VMs wird als "verschachtelte VM" bezeichnet.
Diese verschachtelte VM war jedoch in der Mac VirutualBox nicht verfügbar. Es scheint, dass nur AMD-CPUs unterstützt werden und nicht mit Mac-Intel-CPUs verwendet werden können. Schade, dass ich mein Bestes gegeben habe.
Ich habe das Ausführen von Kubernetes unter CentOS 7 unter VirtualBox aufgegeben und beschlossen, es unter Mac (Ende) auszuführen.
Recommended Posts