La position actuelle:Accueil du site>Kubernets déploiement du tableau de bord (interface visuelle)
Kubernets déploiement du tableau de bord (interface visuelle)
2022-07-24 01:02:38【Ivre de poussière & world1y】
Table des matières
2.4 tokenConnexion authentifiée
2.5 Extraction de mot de passe
2.6 Paramètres token Date d'expiration
Préface
Je crois que beaucoup de gens sont confrontés à cette situation dans leur travail d'analyse de données , Les rapports de données que le patron a travaillé dur n'étaient pas assez intuitifs. 、Vive., Le client a vu que l'aversion n'était pas assez grande . Essayez d'utiliser Dashboard Pour présenter les données du rapport ,Certains ont peut - être raison.DashboardPas très familier., C'est bon, laisse - moi te présenter. DashboardQuel est le sacré, Quels sont ses avantages en termes de présentation des données? , Pour vous aider à mieux analyser les données .
Un.、dashboard Généralités
1.1 dashboard Introduction
DashboardEst basé sur le WebKubernetesInterface utilisateur.Vous pouvez utiliserDashboardDéploiement de l'application conteneur versKubernetesEn grappes,Vous pouvez également appliquer le dépannage aux conteneurs,Peut également gérer les ressources du cluster.Vous pouvez utiliserDashboard Obtenir un aperçu des applications qui fonctionnent dans un Cluster , Vous pouvez également créer ou modifier KubernetesRessources( Par exemple:Deployment,Job,DaemonSetAttendez un peu!)
DashboardIl montre aussiKubernetes Information sur l'état des ressources et toutes les erreurs signalées dans le cluster
1.2 Scénario d'application
Dashboard Il existe trois grandes catégories de scénarios pour les principales applications , Surveillance, respectivement 、 Analyse et aperçu des scénarios .
1.Scénario de surveillance
Dans le scénario de surveillance ,Dashboard Il fournit principalement aux utilisateurs une surveillance en temps réel pratique des indicateurs clés. , Informer en temps opportun de l'état anormal , Et guider l'utilisateur pour localiser le problème .
2.Analyse des scénarios
Dans le scénario analytique,Dashboard Principalement à travers les graphiques de données , Analyse des données de différentes dimensions avec contrôle .Par exemple, L'utilisateur peut filtrer la plage de données sur le diagramme, etc., par le contrôle du filtre temporel .
3. Aperçu du scénario
Dans une entreprise complexe,Dashboard Également utilisé pour les scénarios de vue d'ensemble , Présentation centralisée de l'information clé sur la décentralisation des activités , L'utilisateur peut également accéder rapidement aux modules pertinents via l'entrée fournie
En général,Dashboard Les trois principaux scénarios d'utilisation sont utilisés ensemble .Par exemple, Les utilisateurs passent généralement d'abord par la vue d'ensemble Dashboard En savoir plus sur l'ensemble de l'entreprise , Observer l'état des données de surveillance , Si une analyse plus approfondie est nécessaire , L'utilisateur peut effectuer une analyse multidimensionnelle des données pour plus d'informations .
Surveillance、 Analyse et aperçu des principaux scénarios , Résumé extrait Dashboard La valeur directe pour les utilisateurs est principalement la suivante: :
- Alarme de surveillance, Et guider l'utilisateur pour localiser le problème
- Analyse approfondie des données , Pour plus de détails
- Accès rapide à l'information sur les priorités générales de l'entreprise ,Gérer les ressources
2.、dashboard Déploiement
2.1 Idées de déploiement
- Adoptionnginx-ingress Pour rendre l'accès au monde extérieur
Avantages:Mainstream,Sécurité,Gestion facile
Inconvénients: La configuration est assez compliquée et difficile , Les étudiants inconnus s'évanouissent - AdoptionserviceDeNodePort Pour rendre l'accès au monde extérieur
Avantages:Facilité de déploiement,Rapide
Inconvénients:NodePort Trop de ports causent des problèmes difficiles à gérer ,C'est dangereux.
Ici, j'utilise la deuxième NodePortDe la façon dont( L'environnement de production recommande la première méthode ).
2.2 Installationdashboard
2.2.1 Télécharger le fichier
Sélectionner un dossier,Téléchargerrecommended.yamlDans le dossier.
mkdir -p /home/yaml/dashboard && cd /home/yaml/dashboard
wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.2.0/aio/deploy/recommended.yaml
#Par défautDashboardAccès interne au cluster seulement,ModifierServicePourNodePortType,Exposition à l'extérieur:
vi recommended.yaml
...
kind: Service
apiVersion: v1
metadata:
labels:
k8s-app: kubernetes-dashboard
name: kubernetes-dashboard
namespace: kubernetes-dashboard
spec:
ports:
- port: 443
targetPort: 8443
nodePort: 30001
type: NodePort
selector:
k8s-app: kubernetes-dashboard
#Démarrage
kubectl apply -f recommended.yaml
- moi. Ils ont besoin de ChangementtypePourNodePort
, Spécifie que son Extranet est accessible , Sinon, les autres ordinateurs ne seront pas accessibles ,Votre attention, s'il vous plaît.!
Oui. DashboardAjouter àk8s
2.2.2 Validation
kubectl -n kubernetes-dashboard get service
VoirpodL'état derunningDescriptiondashboardDéploiement réussi
kubectl get svc,pods -n kubernetes-dashboard
2.2.3 Connexion
Adresse d'accès:https://NodeIP:30001
L'autorisation est requise pour le moment
2.3 Requête de permission
role: Permissions système pour les espaces de noms
clusterrole:Permissions globales
Permissions du système
# Interroger toutes les permissions du système dans un espace de noms
~]# kubectl -n kube-system get role
# Interroger les détails des permissions du système dans l'espace de noms
~]# kubectl -n kube-system describe role kube-proxy
Permissions globales
# Voir toutes les permissions globales
~]# kubectl -n kube-system get clusterrole
# Spécifiez les détails pour voir une permission
~]# kubectl -n kube-system describe clusterrole admin
2.4 tokenConnexion authentifiée
K8S Il y a deux types d'utilisateurs :User Et Service Account,User Pour les gens. ,Service Account Pour le processus , Donner au processus les permissions appropriées ,Dashboard C'est un processus,Nous pouvons créer unService Account Donne - le.
- CréationServiceAccount, Conformément à ses objectifs de gestion ,UtiliserrolebindingOuclusterrolebinding Lié à raisonnable roleOuclusterrole;
- Obtenez ceci ServiceAccountDesecret,VoirsecretDétails de,Il y en a un.token;
Méthode 1:
# Write permission Resource
~]# vim admin-token.yaml
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: admin-user
namespace: kubernetes-dashboard
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: admin-user
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: admin-user
namespace: kubernetes-dashboard
~]# kubectl apply -f admin-token.yaml
~]# kubectl -n kubernetes-dashboard get secrets
NAME TYPE DATA AGE
admin-user-token-bxjlz kubernetes.io/service-account-token 3 23s
~]# kubectl -n kubernetes-dashboard describe secrets admin-user-token-bxjlz
Name: admin-user-token-bxjlz
... ...
ca.crt: 1025 bytes
namespace: 20 bytes
token: ..... # Cette longue chaîne est l'authentification que vous recherchez. token
Méthode 2:
Créationservice accountEt lier par défautcluster-adminRôle du Groupe d'administrateurs:
# Créer un utilisateur
kubectl create serviceaccount dashboard-admin -n kube-system
# Autorisation de l'utilisateur
kubectl create clusterrolebinding dashboard-admin --clusterrole=cluster-admin --serviceaccount=kube-system:dashboard-admin
# Obtenir l'utilisateurToken
kubectl describe secrets -n kube-system $(kubectl -n kube-system get secret | awk '/dashboard-admin/{print $1}')
Connectez - vous à nouveau pour vérifier :
2.5 Extraction de mot de passe
Il faudra se reconnecter plus tard dashboard Page et laissez - vous entrer votre mot de passe , Vous n'avez qu'à saisir la commande suivante pour récupérer le mot de passe :
kubectl -n kubernetes-dashboard describe secret $(kubectl -n kubernetes-dashboard get secret | grep admin-user | awk '{print $1}')
2.6 Paramètres token Date d'expiration
Avec token Débarquement kubernetes-dashboard,Par défaut token La date de certification est 900s/15 Minutes, Il est difficile de se reconnecter en raison d'une défaillance. ,Ajouter- --token-ttl=604800 (Unité s)Modification des paramètres token La date d'expiration est 7 Oh, mon Dieu.. kubernetes-dashboard La plate - forme peut utiliser les méthodes suivantes , Vous pouvez également choisir de modifier recommended.yaml Documentation,Re apply C'est tout.
Étapes:
- Sélectionner
kubernetes-dashboard
Espace de noms - Édition
deployment/kubernetes-dashboard
Profil - Ajouter
- --token-ttl=604800
(Unité s) - Cliquez sur mise à jour pour entrer en vigueur
2.7 Désinstaller
Si elle est installée dashboardErreur, Vous pouvez désinstaller et réinstaller .
kubectl get secret,sa,role,rolebinding,services,deployments --namespace=kubernetes-dashboard | grep dashboard
kubectl delete deployment kubernetes-dashboard --namespace=kubernetes-dashboard
kubectl delete service kubernetes-dashboard --namespace=kubernetes-dashboard
kubectl delete role kubernetes-dashboard-minimal --namespace=kubernetes-dashboard
kubectl delete rolebinding kubernetes-dashboard-minimal --namespace=kubernetes-dashboard
kubectl delete sa kubernetes-dashboard --namespace=kubernetes-dashboard
kubectl delete secret kubernetes-dashboard-certs --namespace=kubernetes-dashboard
kubectl delete secret kubernetes-dashboard-key-holder --namespace=kubernetes-dashboard
Questions fréquemment posées:
1、nodeport Plage de port par défaut 30000-32767, Et si vous voulez changer la plage de port ?
Solutions:vim /etc/kubernetes/manifests/kube-apiserver.yaml
Ajouter
spec:
containers:
- command:
- kube-apiserver
- --service-node-port-range=1-65535
Les modifications entrent en vigueur immédiatement
Mentions de copyright
Auteur de cet article [Ivre de poussière & world1y],Réimpression s’il vous plaît apporter le lien vers l’original, merci
https://fra.chowdera.com/2022/205/202207240101312962.html
Recommandé par sidebar
- [Python flask note 5] Blueprint simple à utiliser
- Composants web - cycle de vie des éléments personnalisés
- Entrepôt de données 4.0 Notes - acquisition de données commerciales
- Entrepôt de données 4.0 Notes - acquisition de données sur le comportement de l'utilisateur II
- Affichage itératif des fichiers.h5, opérations de données h5py
- Résumé des connaissances mathématiques communes
- Comment se développe le serveur GPU refroidi à l'eau dans le Centre de données dans le cadre de l'informatique est - Ouest?
- Connaissance du matériel 1 - schéma et type d'interface (basé sur le tutoriel vidéo complet de l'exploitation du matériel de baiman)
- Examen des principes fondamentaux de la structure en acier
- Unity3d: ugui source, Rebuild Optimization
Devinez que vous aimez
Solution rapide: xshell ne peut pas glisser dans un dossier ou un paquet
Rhcsa - - parcourir le contenu du fichier, couper, uniq, trier, utiliser les commandes.tr
Intégrité du signal (si) intégrité de l'alimentation électrique (PI) notes d'apprentissage (32) Réseau de distribution d'énergie (4)
Quelle est la raison pour laquelle la plate - forme easygbs ne peut pas lire l'enregistrement vidéo et a un phénomène de streaming répété rtmp?
Notes du jour 7
【 Visual Dispatching Software】 Shanghai Dow Ning apporte netronic download, Trial, tutoriel pour l'Organisation SMB
2. Les règles quantitatives
Événements courants de la souris et du clavier
C #: in, out, ref Keywords
Connaissance détaillée du GRE, du mgre; Connaissance de la configuration de base de l'OSPF
Recommandé au hasard
- Comment creo 9.0 modifie - t - il rapidement le système de coordonnées Cao?
- Notes du jour 5
- Renforcement de l'apprentissage - points de compréhension du gradient stratégique
- Le shell a besoin de connaître les commandes
- Okrk3399 Development Board Reserved i2c4 Mounting EEPROM
- Optimisation du serveur Cloud Huawei avec connexion clé
- Chapitre 2 requête de base et tri
- 【 langage c】 devinez jeux numériques + applet d'arrêt
- Qu'est - ce que le codage par titre?
- Feignclient utilise un tutoriel détaillé (illustration)
- Kettle implémente une connexion de base de données partagée et insère une instance de composant de mise à jour
- Simulation de modulation et de démodulation du signal CBOC basée sur MATLAB, sortie de corrélation, spectre de puissance et suivi de décalage de fréquence
- Les raccourcis clavier liés à l'onglet ne peuvent pas être utilisés après la mise à jour du vscode
- Expression du suffixe (une question par jour pendant les vacances d'été 4)
- Idées de conception sur l'initialisation des paramètres d'entrée de page
- Éléments de base de la validation des haricots - 04
- Une solution complète au problème du sac à dos dans la programmation dynamique
- Récursion des bosses 1: formule récursive
- Explication détaillée de l'injection aveugle d'erreur SQL
- Données chronologiques dans l'Internet industriel des objets
- Une erreur s'est produite lors de la configuration du login du moteur Gom: aucun correctif requis n'a été trouvé!
- [215] Gin Framework connection to MySQL Database
- Explication détaillée du principe de co - intégration en go
- [jzoof] 13 plage de mouvement du robot
- PCL: ajustement multiligne (RANSAC)
- 1259. Programmation dynamique de poignée de main disjointe
- Conception de l'interface UART basée sur la FPGA
- Elk note 25 - expérience rapide APM
- Analyse de l'industrie | interphone logistique
- Principe de l'énergie et méthode variationnelle note 19: principe de l'énergie résiduelle minimale + principe du travail possible
- Atelier macoll - notes de développement de la secte de l'ours 2
- Comment présenter votre expérience de projet lors d'une entrevue
- Scala Programming (Junior)
- Synchro esp32c3 Hardware Configuration Information serial port Print Output
- Serveur de chat de Cluster: conception de la table de base de données
- Apprentissage Lambda (utilisation du comparateur après tri, regroupement après collecte avec collectors.groupingby)
- Comment forcer complètement le meurtre de processus indépendants de l'arrière - plan?
- Programmation JDBC pour MySQL
- Utilisation des fonctions fléchées es6
- Lu Xia action | Source Kai Digital: Existing Mode or open source innovation?