1. Introduction
Le serveur de la société est nouvellement installé avec une carte réseau 10G et nvme, prêt à créer un cluster ceph. Mais le Dell R620 est assez vieux pour s'en soucier. Enregistrez les fosses piétinées ici.
Deux, installation elrepo
Au début, les résultats de la vérification du réseau étaient les mêmes, en utilisant elrepo pour mettre à jour le noyau. Mais la version lt d'elrepo n'atteint que 4.4, ce qui ne répond pas aux exigences du noyau de cephfs.
Installez la version 5.9.8 de ml avec la mentalité d'un essai. Le résultat est que le raid peut toujours être reconnu, mais igb et 10G ne peuvent pas être reconnus. Ne peut changer que le noyau.
Enregistrer la méthode de mise à niveau d'elrepo
Installer la source elrepo et la clé GPG
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
yum -y install https://www.elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpm
yum -y --enablerepo=elrepo-kernel install kernel-ml kernel-ml-devel
Elrepo contient deux versions du noyau, kernel-ml et kernel-lt.
-
Kernel-ml est la version principale, qui a suivi la dernière version, actuellement 5.9.8
- kernel-lt est une version à long terme, support à long terme, actuellement 4.4.243
CephFS nécessite que le noyau minimum soit 4.17 , alors choisissez d'installer kernel-ml
Remarque : En ce qui concerne le problème de l'installation des pilotes, elrepo fournit également des packages et des méthodes associés: http://elrepo.org/tiki/DeviceIDs. Mais après l'entraînement, j'ai trouvé que c'était inutile pour moi, alors allons sur le site officiel pour trouver le dernier pilote .
Trois, source officielle de centos
La version officielle du noyau de centos7 est 3.10, peu importe comment vous mettez à jour la grande version, c'est la 3.10. En ce moment, j'ai pensé à la source alternative de centos. Les paquets de cette source sont relativement nouveaux. Le fonctionnaire l'utilise pour remplacer l'expérimental précédent. Et sa stabilité et sa compatibilité devraient être meilleures que elrepo.
Téléchargez et installez le noyau
cd ~
wget https://mirrors.tuna.tsinghua.edu.cn/centos-altarch/7/kernel/x86_64/Packages/kernel-5.4.65-200.el7.x86_64.rpm
wget https://mirrors.tuna.tsinghua.edu.cn/centos-altarch/7/kernel/x86_64/Packages/kernel-core-5.4.65-200.el7.x86_64.rpm
wget https://mirrors.tuna.tsinghua.edu.cn/centos-altarch/7/kernel/x86_64/Packages/kernel-devel-5.4.65-200.el7.x86_64.rpm
wget https://mirrors.tuna.tsinghua.edu.cn/centos-altarch/7/kernel/x86_64/Packages/kernel-modules-5.4.65-200.el7.x86_64.rpm
yum install kernel-*
Description de la structure du package du noyau
- noyau
- fonction noyau noyau noyau
- kernel-modules Les modules de base du noyau (les pilotes les plus couramment utilisés sont ici)
Bien sûr, vous pouvez également le faire sous la forme d'un repo yum.
altarch.repo
[altarch]
name=CentOS-$releasever - altarch
baseurl=http://mirror.centos.org/altarch/$releasever/kernel/$basearch/
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
Définir la séquence de démarrage du noyau
Afficher le noyau de démarrage actuel
grub2-editenv list
Sélectionnez le noyau spécifié pour démarrer
grub2-set-default 0
Après avoir installé le nouveau noyau, il est généralement mis en premier lieu pour démarrer, il suffit d'exécuter la commande ci-dessus pour définir le premier noyau à démarrer. Vous pouvez utiliser la commande suivante pour afficher l'ordre
egrep ^menuentry /etc/grub2.cfg | cut -f 2 -d \'
Redémarrez le système
Contenu étendu
Après avoir remplacé le noyau de 5, le nom de la carte réseau du serveur changera, trouvez le nom de carte réseau correct par la méthode suivante
Réveil NIC
Utilisez Wake-on pour savoir quel port Gigabit de la carte réseau du serveur est branché avec le câble réseau. Après l'avoir allumé, ethtool peut vérifier si la carte réseau a une vitesse. S'il y a une vitesse, le câble réseau est branché.
Vérifiez si la carte réseau prend en charge WOL
ethtool eth0
Si la valeur de wake-on est d, cela signifie que Wake on LAN
est désactivé et que la valeur est g, ce qui signifie que Wake on LAN est activé.
Utilisez la commande suivante pour activer le réveil sur le réseau local
ethtool -s eth0 wol g
La carte réseau 10G peut être trouvée via dmesg
[root@]# grep Up dmesg
[ 2.549298] microcode: Microcode Update Driver: v2.2.
[ 3.859307] i40e 0000:04:00.1 eth2: NIC Link is Up, 10 Gbps Full Duplex, Flow Control: Non
Vérifiez le pilote de la carte réseau utilisé
Vous pouvez afficher le modèle de la carte réseau et la version du pilote
lspci -nn|grep Eth
01:00.0 Ethernet controller [0200]: Intel Corporation I350 Gigabit Network Connection [8086:1521] (rev 01)
01:00.1 Ethernet controller [0200]: Intel Corporation I350 Gigabit Network Connection [8086:1521] (rev 01)
01:00.2 Ethernet controller [0200]: Intel Corporation I350 Gigabit Network Connection [8086:1521] (rev 01)
01:00.3 Ethernet controller [0200]: Intel Corporation I350 Gigabit Network Connection [8086:1521] (rev 01)
04:00.0 Ethernet controller [0200]: Intel Corporation Ethernet Controller X710 for 10GbE SFP+ [8086:1572] (rev 02)
04:00.1 Ethernet controller [0200]: Intel Corporation Ethernet Controller X710 for 10GbE SFP+ [8086:1572] (rev 02)
Afficher le chemin du lecteur
Utilisez cette commande pour comparer si le raid des deux noyaux est cohérent avec le pilote de la carte réseau
]# lsinitrd -k 5.4.65-200.el7.x86_64|grep igb
-rw-r--r-- 1 root root 3618 Oct 31 2018 usr/lib/kbd/keymaps/xkb/ng-igbo.map.gz
drwxr-xr-x 2 root root 0 Nov 16 11:41 usr/lib/modules/5.4.65-200.el7.x86_64/kernel/drivers/net/ethernet/intel/igb
-rw-r--r-- 1 root root 94760 Sep 16 22:30 usr/lib/modules/5.4.65-200.el7.x86_64/kernel/drivers/net/ethernet/intel/igb/igb.ko.xz
Allumez BBR
echo 'net.core.default_qdisc=fq' | sudo tee -a /etc/sysctl.conf
echo 'net.ipv4.tcp_congestion_control=bbr' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
vérification
sysctl net.ipv4.tcp_available_congestion_control
lsmod | grep bbr
A une sortie
tcp_bbr 20480 880
Cela signifie que cela a réussi.
En cas d'échec, exécutez et vérifiez uname -r
la version du noyau. Si elle est supérieure à 4,9, redémarrez la machine et vérifiez.