kubeadm installer kubernetes (1)

étape 1

Définissez le nom d'hôte (chaque nom d'hôte ne peut pas être le même, modifiez un par un, voici uniquement la commande pour modifier le nom d'hôte)

Afficher le nom d'hôte nom d'hôte

Modifier le nom d'hôte

hostnamectl set-hostname <votre_nom_hôte>

étape 2

Configurez le fichier d'hôtes afin que les nœuds puissent utiliser le nom d'hôte pour accéder les uns aux autres

cat> / etc / hosts << EOF
<node_ip> <node_hostname>
<node_ip> <node_hostname>
<node_ip> <node_hostname>
<node_ip> <node_hostname>
<node_ip> <node_hostname>
EOF

étape 3

Mettre à jour la source yum (yum upgrade ne met à jour que la clé, yum update met à jour la clé et le noyau)

miam mise à jour -y

étape 4

Installer les dépendances

yum install -y epel-release conntrack ipvsadm ipset jq sysstat curl iptables libseccomp

étape-5

Avant de désactiver la protection incendie

systemctl arrêter le pare-feud && systemctl désactiver le pare-feud

étape-6

Réinitialiser iptables (la commande -X supprime une certaine chaîne de règles, -F supprime toutes les règles d'une certaine chaîne de règles, -P définit une politique de filtrage)

iptables -F && iptables -X && iptables -F -t nat && iptables -X -t nat && iptables -P FORWARD ACCEPTER

étape 7

Fermer le swap

swapoff -a

Utilisez la commande suivante pour faire fonctionner le fichier / etc / fstab, commentez la ligne / dev / mapper / centos_master-swap swap swap default 0 0

sed -i /. échanger. / # & / '/ etc / fstab

étape-8

Fermer selinux

sed -i's / SELINUX = enforcing / SELINUX = disabled / g '/ etc / selinux / config
#permanemment close setenforce 0 #temporary close

étape-9

Fermez dnsmasq (sinon cela peut empêcher le conteneur docker de résoudre le nom de domaine)

service dnsmasq stop && systemctl désactiver dnsmasq

étape-10

Créer un fichier de configuration

cat> /etc/sysctl.d/kubernetes.conf << EOF
net.bridge.bridge-nf-call-iptables = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.ipv4.ip_forward = 1
vm. swappiness = 0
vm.overcommit_memory = 1
vm.panic_on_oom = 0
fs.inotify.max_user_watches = 89100
EOF

Document efficace

modprobe br_netfilter
sysctl -p /etc/sysctl.d/kubernetes.conf

étape 11

Installer docker

Créez le répertoire requis

mkdir -p / opt / kubernetes / docker && cd / opt / kubernetes / docker

Définir la source yum

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

Vous pouvez afficher toutes les versions de docker dans tous les entrepôts et sélectionner une version spécifique à installer:

yum list docker-ce --showduplicates | trier -r

Installez la version spécifiée de docker, si le numéro de version n'est pas spécifié, la dernière version de docker sera installée

sudo yum installer -y docker-ce- <VERSION_STRING> docker-ce-cli- <VERSION_STRING> containerd.io

yum install -y docker-ce-19.03.8 docker-ce-cli-19.03.8 containerd.io

démarrage du docker

systemctl activer le docker && systemctl démarrer le docker

Définir les paramètres de démarrage du docker

-Définissez le répertoire de données du docker: choisissez une partition plus grande (je n'ai pas besoin de configurer le répertoire racine ici, la valeur par défaut est / var / lib / docker)

-Définissez le pilote cgroup pour éviter les incohérences dans le pilote de fichier et empêcher le démarrage de la mise en miroir (la valeur par défaut est cgroupfs, le but principal est d'être unifié avec la configuration de kubelet, ici vous ne pouvez pas non plus définir les cgroupfs plus tard dans le kubelet )

les informations du docker peuvent afficher le type de pilote de groupe de contrôle

cat </etc/docker/daemon.json
{ "graph": "/ docker / data / path", "exec-opts": ["native.cgroupdriver = systemd"] } EOF



Démarrez le service docker

systemctl démarrer le docker

Exemple de configuration détaillée de daemon.json

{

«Debug»: faux,

"Expérimental": faux,

"Graph": "/ home / docker-data",

"Exec-opts": ["native.cgroupdriver = systemd"],

«Miroirs de registre»: [

"Https://fy707np5.mirror.aliyuncs.com"

],

«Registres non sécurisés»: [

«Hub.zy.com»,

«172.16.249.159:8082»

]

}

Démarrez le service docker

systemctl redémarrage docker

étape-12

安装 bebeadm , kubelet , kubectl

kubeadm: commande pour déployer le cluster

kubelet: un composant qui s'exécute sur chaque machine du cluster, responsable de la gestion du cycle de vie des pods et des conteneurs

kubectl: outil de gestion de cluster (facultatif, à condition qu'il soit installé sur le nœud qui contrôle le cluster)

Configurez la source yum, voici le code source d'Alibaba Cloud kubernetes yum

cat </etc/yum.repos.d/kubernetes.repo
[kubernetes]
name = Kubernetes
baseurl = http: //mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled = 1
gpgcheck = 0
repo_gpgcheck = 0
gpgkey = http: //mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF

Outil d'installation

Trouvez le numéro de version à installer

yum list kubeadm --showduplicates | trier -r

Installez la version spécifiée (la 1.18.2 est utilisée ici)

yum install -y kubeadm-1.18.2-0 kubelet-1.18.2-0 kubectl-1.18.2-0 --disableexcludes = kubernetes
### Configuration facultative

Définissez le cgroupdriver de kubelet (le cgroupdriver par défaut de kubelet est systemd, si l'exec-opts de docker n'est pas défini sur systemd ci-dessus, vous devez définir le kubelet sur cgroupfs ici)

sed -i "s / cgroup-driver = systemd / cgroup-driver = cgroupfs / g" /etc/systemd/system/kubelet.service.d/10-kubeadm.conf

Démarrer tous les nœuds kubelet

systemctl activer kubelet && systemctl démarrer kubelet

Je suppose que tu aimes

Origine blog.csdn.net/u014442879/article/details/109503458
conseillé
Classement