k8s-kubernetes常用命令,服务部署,可视化控制台安装及token的生成

上一篇文章介绍了怎么安装kubernetes,现在我们来学习下kubernetes的常用命令

我们直接通过部署可视化控制台kubernetes-dashboard来顺便学习下kubernetes的常用命令及服务的部署

kubernetes dashboard部署

执行下面的命令下载及安装 kubernetes dashboard

kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml

默认安装完成以后 kubernetes dashboard 服务使用的是 clusterIP 只能在 k8s 的内网访问。

配置服务让外界可以访问

要解决这个问题我们可以创建一个 nodeport 服务对外直接暴露 node IP 和端口,让外界能够直接访问。
输入以下命令完成 nodeport 的创建:

kubectl expose deployment kubernetes-dashboard --type=NodePort --name=kubernetes-dashboard-nodeport -n kubernetes-dashboard

使用下面的命令可以检查 nodeport 服务的状态

kubectl get service kubernetes-dashboard-nodeport -n kubernetes-dashboard

现在在浏览器中输入 https://ip:port 就可以看到登录界面了。这里的 port 就是系统给我们分配的暴露 kubernetes dashboard 的端口。在上面的例子中是 32398

创建用户及角色

root@ictficial:/opt/k8s# vim dashboard-adminuser.yaml apiVersion: v1
kind: ServiceAccount
metadata:name: admin-usernamespace: kubernetes-dashboard
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:name: admin-user
roleRef:apiGroup: rbac.authorization.k8s.iokind: ClusterRolename: cluster-admin
subjects:- kind: ServiceAccountname: admin-usernamespace: kubernetes-dashboard

执行:

kubectl apply -f  dashboard-adminuser.yaml

生成 token

kubectl -n kubernetes-dashboard create token admin-user --duration=720h

保存好 token,以后我们需要使用 token 登录 kubernetes dashboard.
完成以上步骤后我们就可以通过 dashboard 访问和控制我们的 k8s 系统了。

常用命令

kubectl get node    #查看集群节点状态
kubectl get ns     #查看命名空间
kubectl get pods -n kube-system   #查看pod状态 -n 指定命名空间
kubectl logs -f -n kubernetes-dashboard kubernetes-dashboard-9f9799597-9w7ml
kubectl describe pods name  | grep Failed #可以查看到具体信息
kubectl describe pod kubernetes-dashboard-6c7ccbcf87-bmrrg -n kubernetes-dashboard
kubectl delete pod --field-selector=status.phase=Failed --all-namespaceskubectl create deployment gateway --image=lexang/dtb-gateway:tagname -o yaml --dry-run=client > gateway-deployment.yaml
#这个命令用于生成一个 Kubernetes Deployment 的 YAML 文件,该文件定义了一个名为 gateway 的 Deployment。这个 Deployment 使用了指定的 Docker 镜像 lexang/dtb-gateway:tagname 文件可能看起来像这样:
apiVersion: apps/v1
kind: Deployment
metadata:name: gateway
spec:replicas: 1selector:matchLabels:app: gatewaytemplate:metadata:labels:app: gatewayspec:containers:- name: gatewayimage: lexang/dtb-gateway:tagnameports:- containerPort: 80kubectl apply -f gateway-deployment.yamlkubectl expose deployment gateway --port=80 --target-port=48080 --dry-run=client -o yaml --type=NodePort --name=gateway-nodeport > gateway-service.yaml
# 这个命令的作用是生成一个定义 NodePort 类型服务的 YAML 文件。这个服务将名为 gateway 的 Deployment 暴露在端口 80 上,并将流量转发到后端容器的 48080 端口。生成的 YAML 文件内容会被保存到 gateway-service.yaml 文件中,而不会实际创建服务。生成的 gateway-service.yaml 文件可能看起来像这样:
apiVersion: v1
kind: Service
metadata:name: gateway-nodeport
spec:ports:- port: 80targetPort: 48080protocol: TCPselector:app: gatewaytype: NodePortkubectl apply -f gateway-service.yaml kubectl create namespace dev  #创建namespace 
kubectl run pod --image=nginx:latest -n devkubectl delete pod nginx -n dev #删除pod后会自动在重启pod 要删除pod  必须删除Pod控制器kubectl get deploy -n  dev #查询一下当前namespace下的Pod控制器
kubectl delete deploy nginx -n dev #删除此PodPod控制器kubectl get pods --field-selector=status.phase!=Running -o json | kubectl delete -f - #删除集群中所有状态不是 "Running" 的 Podkubectl scale deployment prometheus-adapter --replicas=1 -n monitoring # 调整名为 prometheus-adapter 的 Deployment 的副本数量(replicas)kubectl edit svc grafana -n monitoring    #修改grafana servicekubectl get configmap -n monitoring -o wide #获取monitoring 命名空间下的configmap kubectl get ns --show-labels    #--show-labels  查看labels kubectl version  # 查看kubectl 版本
journalctl -f -u kubelet   #查看kubelet日志
systemctl status kubelet.service #查看kubelet状态重启kubelet:
systemctl stop kubelet.service &&
systemctl daemon-reload &&
systemctl start kubelet.service

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/26918.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据分析------统计学知识点(五)

回归算法 想象一下,你和朋友在讨论:大学生活中,每天学习的时间是否真的能影响期末成绩?这个问题看似简单,实则包含了一个潜在的关系:学习时间与成绩之间的联系。我们想要知道,增加学习时间是否会提高成绩,以及这种提…

MYSQL 索引下推 45讲

刘老师群里,看到一位小友 问<MYSQL 45讲>林晓斌的回答 大意是一个组合索引 (a,b,c) 条件 a > 5 and a <10 and b123, 这样的情况下是如何? 林老师给的回答是 A>5 ,然后下推B123 小友 问 "为什么不是先 进行范围查询,然后在索引下推 b123?" 然后就…

热门开源大模型项目推荐

一&#xff1a;开源大模型热门项目推荐 NNI&#xff1a;由微软发布的开源AutoML工具包&#xff0c;支持神经网络超参数调整。最新版本对机器学习生命周期的各个环节做了全面支持&#xff0c;包括特征工程、神经网络架构搜索(NAS)、超参调优和模型压缩。适用于各种机器学习项目&…

C++240613

自由发挥登录窗口的应用场景&#xff0c;实现一个登录窗口界面 要求&#xff1a;每行代码都有注释 #include "my_widget.h"My_Widget::My_Widget(QWidget *parent): QWidget(parent) {//设置窗口的标题this->setWindowTitle("真爱生命&#xff0c;远离赌博&…

2024大交通场景空间策展洞察报告

来源&#xff1a;邻汇吧&万一商管 近期历史回顾&#xff1a; 2024国内工商业储能市场研究报告.pdf 2023幸福企业白皮书.pdf 2024年欧亚地区移动经济报告.pdf 内容供应链变革 2023人工智能与首席营销官&#xff08;CMO&#xff09; AI科技对PC产业的影响.pdf 金融业数据应用…

智能合约漏洞类型

Are We There Yet? Unraveling the State-of-the-Art Smart Contract Fuzzers | Proceedings of the IEEE/ACM 46th International Conference on Software Engineering

PySide6实现pdf转化为word和长图片

目录 一:实现思路 二:实现过程 三:完整代码和实现 一:实现思路 最近在使用wps,发现wps中使用pdf转化为长图片还需要收费,这么不地道。就想自己能不能用程序实现这种功能的。还好python在自动化办公领域比较强悍,对文档操作也是得心应手。因此记录下用python实现pdf转…

Java求职季 必备知识脑图 收藏起来 !!!

Java初中级知识脑图 面试超实用 1.Git 下载链接 导图下载地址 &#xff1a; https://mm.edrawsoft.cn/mobile-share/index.html?uuid31d00742157057-src&share_type1 2.JUC 下载链接 https://mm.edrawsoft.cn/mobile-share/index.html?uuid6c0be457444921-src&s…

计算机网络 —— 应用层(DNS域名系统)

计算机网络 —— 应用层&#xff08;DNS域名系统&#xff09; 什么是DNS域名的层次结构域名分类 域名服务器的分类域名解析方式递归查询&#xff08;Recursive Query&#xff09;迭代查询&#xff08;Iterative Query&#xff09;域名的高速缓存 我们今天来看DNS域名系统 什么…

批量文件重命名技巧:轻松替换删除文件夹名中的字母,实现高效文件管理新境界

在数字化时代&#xff0c;我们每天都会面对大量的文件和文件夹。无论是工作文档、学习资料还是个人收藏&#xff0c;文件命名的规范性都显得尤为重要。然而&#xff0c;手动一个一个去修改文件名&#xff0c;不仅耗时耗力&#xff0c;还容易出错。那么&#xff0c;有没有一种方…

SAP ABAP 之面向对象OO

文章目录 前言一、类的理解二、如何创建ABAP类 a.类的定义与构成 b.类的访问区域 c.特殊方法 d.类的继承 三、类中参数的使用 a.IMPORTING / EXPORTING b.CHANGING c.RETURNING d.EX…

【Jmeter】插件详解:PerfMon Metrics Collector 服务器性能监控插件

目录 一、前言 二、PerfMon Metrics Collector 插件详解 (1)插件简介 (2)功能介绍 (3)应用场景 (4)使用指南 ① 环境准备 ② 服务端插件配置 ③ 监听器配置 ④ 图表设置 ⑤ 非 GUI 模式 三、ServerAgent 下载 四、ServerAgent 安装 (1)安装 (…

在python中指定pytorch训练时使用多块或某块GPU的方法

1. 引入 PyTorch是一个流行的深度学习框架&#xff0c;它提供了方便的API&#xff0c;使得在GPU上进行模型训练变得简单。 然而&#xff0c;有时我们可能需要指定使用多个GPU或者特定的GPU来进行训练&#xff0c;以满足不同的需求。 之所以在python中指定GPU&#xff0c;而不是…

水库枢纽乙级设计资质下的团队构建

1. 技术负责人与核心团队 技术负责人&#xff1a;需具备高级专业技术职称&#xff0c;且在水利枢纽设计领域有丰富的实践经验&#xff0c;能够指导解决复杂技术难题。核心设计团队&#xff1a;包括但不限于水工结构、水文水资源、地质勘察、电气自动化、环境保护等专业领域的工…

PHP杂货铺家庭在线记账理财管理系统源码

家庭在线记帐理财系统&#xff0c;让你对自己的开支了如指掌&#xff0c;图形化界面操作更简单&#xff0c;非常适合家庭理财、记账&#xff0c;系统界面简洁优美&#xff0c;操作直观简单&#xff0c;非常容易上手。 安装说明&#xff1a; 1、上传到网站根目录 2、用phpMyad…

leetcode695 岛屿的最大面积

题目 给你一个大小为 m x n 的二进制矩阵 grid 。 岛屿 是由一些相邻的 1 (代表土地) 构成的组合&#xff0c;这里的「相邻」要求两个 1 必须在 水平或者竖直的四个方向上 相邻。你可以假设 grid 的四个边缘都被 0&#xff08;代表水&#xff09;包围着。 岛屿的面积是岛上值…

13. FastLED 示例3则

Best of FastLED Discussions 1. Fire2012&#xff1a; FastLED 火灾模拟器 // Fire2012: a basic fire simulation for a one-dimensional string of LEDs // Mark Kriegsman, July 2012. // // Compiled size for Arduino/AVR is about 3,968 bytes.#include <FastLED.h…

基于springboot实现入校申报审批系统项目【项目源码+论文说明】计算机毕业设计

基于springboot实现入校申报审批系统演示 摘要 传统办法管理信息首先需要花费的时间比较多&#xff0c;其次数据出错率比较高&#xff0c;而且对错误的数据进行更改也比较困难&#xff0c;最后&#xff0c;检索数据费事费力。因此&#xff0c;在计算机上安装入校申报审批系统软…

【最新鸿蒙应用开发】——Context上下文对象

应用上下文Context 1. 概述 应用上下文&#xff08;Context&#xff09;是应用程序的全局信息的接口。它是一个抽象类&#xff0c;提供了访问应用程序环境的方法和资源的方法。应用上下文可以用于获取应用程序的资源、启动Ability、发送广播等。每个应用程序都有一个应用上下…

【机器学习】机器学习赋能医疗健康:从诊断到治疗的智能化革命

&#x1f4dd;个人主页&#x1f339;&#xff1a;Eternity._ &#x1f339;&#x1f339;期待您的关注 &#x1f339;&#x1f339; ❀目录 &#x1f4d2;1. 引言&#x1f4d9;2. 机器学习在疾病诊断中的应用&#x1f9e9;医学影像分析&#xff1a;从X光到3D成像带代码&#x1…