K8s常用命令

namespace 命令

创建一个 dev 命名空间     dev-namespace.yaml

apiVersion: v1
kind: Namespace
metadata:   
  name: dev   
  labels:     
    name: dev

 部署进k8s  :  kubectl apply dev-namespace.yaml

获取namespace 的列表

kubectl  get namespace  

重新部署失败的yaml 配置文件

kubeclt replace -f dev-namespace.yaml

 

node命令

查看集群各节点的状态

kubectl get nodes  -o wide

部署应用

删除一个service服务

查询service服务列表

kubectl get services 

查看网络资源

kubectl get svc 

pod

创建一个namespace

kubectl create namaspace  namespace名称

进入pod容器中

kubectl exec -it -n kube-system calico-kube-controllers-6c99c8747f-5z2wb sh

查看pod

kubectl get pod -A  
kubectl get pod -o wide 


#查看pod日志
kubectl -n kube-system describe po calico-kube-controllers-7ddc4f45bc-bvzf2

重启 POD

平滑重启k8s 集群


查看 deployment 
kubectl get pod -A -o wide 

kubectl rollout restart deployment tomcat-deploy -n default

删除pod       



1 先删除pod        2  在删除对应的deployment

kubeclt delete pod     pod名称

强制删除pod 
kubectl delete pod tomcat-deploy-c5c7bcfc4-4pk44 --force



查看deployment

kubectl get deployment 

删除deployment

kubectl delete deployment   deployment名称


删除 状态为 Terminating pod 
kubectl delete pod tomcat-deploy-c5c7bcfc4-4pk44  --grace-period=0 --force

Service 命令

查看服务列表,查看端口情况 
kubectl get svc 

查找 Service 关联的pod    service与pod之间用labels标签关联 

kubectl get svc --show-labels -A

RBAC 用户权限

k8s 不存储User信息,

用户类型: serviceaccount   ClusterRoleBinding 

serviceaccount  则是集群内部用户

ClusterRoleBinding   在整个集群中授权  

获取k8s 所有用户信息 

kubectl get clusterroles.rbac.authorization.k8s.io --all-namespaces
kubectl get roles.rbac.authorization.k8s.io --all-namespaces

创建一个 serviceaccount 用户 

kubectl create sa jenkins

查看 service account 用户

查看k8s 中定义的用户组

kubectl get clusterrolebindings | grep admin

对整个集群授权  使用 ClusterRoleBinding  用户组为admin 

ClusterRoleBinding.yaml      官网示例  

apiVersion: rbac.authorization.k8s.io/v1
# This cluster role binding allows anyone in the "manager" group to read secrets in any namespace.
kind: ClusterRoleBinding
metadata:
  name: read-secrets-global
subjects:
- kind: Group
  name: manager # Name is case sensitive
  apiGroup: rbac.authorization.k8s.io
roleRef:
  kind: ClusterRole
  name: secret-reader
  apiGroup: rbac.authorization.k8s.io

查看 集群中k8s的token值  在kube-system 的空间中 

kubectl -n kube-system get secrets

查看jenkisn用户的token  以及token值的具体信息 

kubectl -n kube-system describe secrets jenkins
kubectl -n kube-system get secrets jenkins -o go-template --template '{{index .data "token"}}' | base64 --decode

 确认k8s下jenkisn用户是否有token

# kubectl describe sa jenkins -n kube-system

Name:                jenkins
Namespace:           kube-system
Labels:              addonmanager.kubernetes.io/mode=Reconcile
                     kubernetes.io/cluster-service=true
Annotations:         <none>
Image pull secrets:  <none>
Mountable secrets:   <none>
Tokens:              jenkins
Events:              <none>

 允许 k8s master 节点部署 pod 节点

默认情况下 master节点不能部署pod节点 基于安全考虑

查看master的污点信息  版本不同  master污点的key 不同

kubectl get no -o yaml | grep taint -A 5
    taints:
    - effect: NoSchedule
      key: node-role.kubernetes.io/control-plane
  status:
    addresses:
    - address: 192.168.241.160

删除master 节点污点

kubectl taint nodes --all node-role.kubernetes.io/control-plane-
node/k-master untainted

  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
很抱歉,我无法提供思维导图。但是,我可以为您提供一些常用的Kubernetes命令。以下是一些常用的Kubernetes命令: 1. kubectl get pods:获取当前集群中的所有Pods的信息。 2. kubectl get deployments:获取当前集群中的所有Deployments的信息。 3. kubectl get services:获取当前集群中的所有Services的信息。 4. kubectl create deployment \[deployment-name\] --image=\[image-name\]:创建一个新的Deployment。 5. kubectl scale deployment \[deployment-name\] --replicas=\[number\]:扩展或缩小一个Deployment的副本数量。 6. kubectl delete deployment \[deployment-name\]:删除一个Deployment。 7. kubectl describe pod \[pod-name\]:获取一个Pod的详细信息。 8. kubectl logs \[pod-name\]:获取一个Pod的日志。 9. kubectl exec -it \[pod-name\] -- \[command\]:在一个Pod中执行一个命令。 10. kubectl apply -f \[file-name\]:使用一个YAML文件创建或更新资源。 这些是一些常用的Kubernetes命令,可以帮助您管理和操作Kubernetes集群中的资源。希望对您有所帮助! #### 引用[.reference_title] - *1* *2* *3* [k8s学习-思维导图与学习笔记](https://blog.csdn.net/lady_killer9/article/details/124544947)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

村长在路上

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值