barre déployer mysql

À propos de Helm deploy mysql

Si vos kubernetes ont déjà Helm, les étapes de déploiement de mysql peuvent être simplifiées avec helm. Le déploiement et le service qui devaient à l'origine être configurés par vous-même ont été intégrés dans le graphique. Aujourd'hui, nous allons effectivement déployer mysql via helm et résoudre les problèmes rencontrés Et les solutions sont répertoriées;

Informations environnementales

  1. Matériel: trois serveurs CentOS 7.7
  2. gouverneurs: 1,15
  3. barre: 2.16.1
  4. mysql : 5.7.14

À propos du déploiement de la barre

Pour le déploiement et le fonctionnement de base de la barre d'environnement kubernetes, veuillez vous reporter à " Barre de déploiement et d'expérience (version 2.16.1)"

Télécharger le package graphique

  1. Exécution recherche barre mysql oeil à l'entrepôt graphique il MySQL, comme indiqué ci - dessous, la boîte rouge est le tableau nous avons besoin:
    Insérez la description de l'image ici
  2. L'exécution de helm fetch stable / mysql générera le fichier mysql-0.3.5.tgz dans le répertoire courant
  3. La mise en œuvre de goudron -zxvf mysql-0.3.5.tgz après l' extraction de générer dossier mysql
  4. Accédez au dossier mysql, ouvrez le fichier values.yaml et définissez-le selon vos besoins
  5. Comme le montre la figure suivante, la zone rouge 1 peut sélectionner le TAG du miroir mysql et la zone rouge 2 définit le mot de passe du compte root. Notez que la chaîne de mot de passe doit être placée entre guillemets :
    Insérez la description de l'image ici
  6. La case rouge 1 dans la figure ci-dessous est la demande de capacité de volume de stockage, la case rouge 2 est la quantité de mémoire requise et la case rouge 3 est la quantité de CPU requise. Veuillez l'ajuster en fonction de la situation réelle:
    Insérez la description de l'image ici
  7. Si vous voulez faire plus de configuration pour mysql, cela implique le fichier de configuration mysql.cnf , qui est toujours configuré dans values.xml, comme indiqué dans l'encadré rouge de la figure ci-dessous, où le jeu de caractères est défini:
    Insérez la description de l'image ici
  8. Le cadre rouge dans la figure ci-dessous est le paramètre Service. On peut voir que le type par défaut est ClusterIP . Ce type n'est pas accessible en externe et doit être modifié:
    Insérez la description de l'image ici
  9. La configuration de service modifiée est indiquée dans l'encadré rouge ci-dessous, le type est changé en NodePort et le port externe est 32000 :
    Insérez la description de l'image ici
  10. Créez un espace de noms nommé test001 :
kubectl create namespace test001
  1. La prochaine chose à configurer est le stockage des données msyql, nous discutons dans deux cas;

Utiliser un volume de données natif

  1. Si vous déployez kubernetes sur une seule machine, le stockage des données msyql sur la machine hôte est la solution la plus simple
  2. Créez un dossier sur la machine hôte, tel que / root / k8s-mysql-data , donnez à ce dossier les autorisations de lecture et d'écriture
  3. Accédez au répertoire des modèles et ouvrez deployment.yaml . À la fin du fichier, vous pouvez voir la configuration stockée, comme indiqué dans l'encadré rouge ci-dessous:
    Insérez la description de l'image ici
  4. Le contenu de la zone rouge de la figure ci-dessus est modifié comme indiqué dans la zone rouge de la figure suivante. Le volume de données nommé data est un dossier local:
    Insérez la description de l'image ici
  5. À ce stade, la configuration est terminée. La section suivante concerne la configuration du volume de données réseau. Si vous utilisez le stockage local, vous pouvez ignorer la section suivante pour utiliser le stockage réseau et entrer dans l'étape de déploiement de msyql;

Utiliser le stockage réseau

Si votre kubernetes est un environnement de cluster, il est recommandé d'utiliser NFS comme volume de stockage de données de MySql. Les opérations spécifiques sont les suivantes:

  1. Du côté serveur de NFS, lors de la configuration du dossier NFS pour MySql sur le fichier / etc / exports , son attribut doit être no_root_squash , comme indiqué dans l'encadré rouge de la figure suivante.
    Insérez la description de l'image ici
  2. Une fois la configuration ci-dessus terminée, exécutez la commande exportfs -arv pour que la configuration prenne effet
  3. Préparez ensuite le PV et créez le fichier pv-mysql.yaml avec le contenu suivant: 192.168.133.142 est l'adresse du serveur de NFS, / usr / local / work / mysql est le dossier NFS avec l'attribut no_root_squash juste défini :
apiVersion: v1
kind: PersistentVolume
metadata:
 name: mysql
 namespace: test001
spec:
 capacity:
   storage: 10Gi
 accessModes:
 - ReadWriteOnce
 persistentVolumeReclaimPolicy: Recycle
 nfs:
   path: /usr/local/work/mysql
   server: 192.168.133.142
  1. Exécutez la commande suivante pour créer PV:
kubectl create -f pv-mysql.yaml
  1. Vérifiez si la PV est créée avec succès:
    Insérez la description de l'image ici
  2. Une fois le stockage prêt, vous pouvez commencer à déployer MySql

Déployer mysql

  1. Dans le répertoire où se trouve values.yaml, effectuez les opérations suivantes pour déployer mysql, l'espace de noms utilisé est test001 :
helm install --name-template mysql -f values.yaml . --namespace test001
  1. Vérifiez si le module a été créé avec succès:
    Insérez la description de l'image ici
  2. Vérifiez si le service est normal:
    Insérez la description de l'image ici
  3. Jusqu'à présent, le déploiement de MySql est réussi, en utilisant le port 32000 de l'hôte, puis essayez de vous connecter à distance à ce MySql;

Vérifier mysql

Se connecter au service MySql à distance sur un autre ordinateur. Je suis connecté avec l' outil mycli sur un Ubuntu. L' adresse IP de l'hôte MySql est 192.168.133.149 , le port est 32000 et le mot de passe est 123456. Les opérations de connexion et de vérification sont illustrées dans la figure suivante. :
Insérez la description de l'image ici

Bienvenue à prêter attention à mon numéro public: le programmeur Xinchen

Insérez la description de l'image ici

Publié 376 articles originaux · loué 986 · 1,28 million de vues

Je suppose que tu aimes

Origine blog.csdn.net/boling_cavalry/article/details/105180743
conseillé
Classement