• k8s常用命令


    kubernetes 常用命令

    通过yaml文件创建:
    kubectl create -f xxx.yaml (不建议使用,无法更新,必须先delete)
    kubectl apply -f xxx.yaml (创建+更新,可以重复使用)
     
    通过yaml文件删除:
    kubectl delete -f xxx.yaml
     
    查看kube-system namespace下面的pod/svc/deployment 等等(-o wide 选项可以查看存在哪个对应的节点)
    kubectl get pod/svc/deployment -n kube-system
     
    查看所有namespace下面的pod/svc/deployment等等
    kubectl get pod/svc/deployment --all-namcpaces
     
    重启pod(无法删除对应的应用,因为存在deployment/rc之类的副本控制器,删除pod也会重新拉起来)
    kubectl get pod -n kube-system
     
    查看pod描述:
    kubectl describe pod XXX -n kube-system
     
    查看pod 日志 (如果pod有多个容器需要加-c 容器名)
    kubectl logs xxx -n kube-system
     
    删除应用(先确定是由说明创建的,再删除对应的kind):
    kubectl delete deployment xxx -n kube-system
     
    根据label删除:
    kubectl delete pod -l app=flannel -n kube-system
     
    扩容
    kubectl scale deployment spark-worker-deployment --replicas=8
     
    导出配置文件:
      导出proxy
      kubectl get ds -n kube-system -l k8s-app=kube-proxy -o yaml>kube-proxy-ds.yaml
      导出kube-dns
      kubectl get deployment -n kube-system -l k8s-app=kube-dns -o yaml >kube-dns-dp.yaml
      kubectl get services -n kube-system -l k8s-app=kube-dns -o yaml >kube-dns-services.yaml
      导出所有 configmap
      kubectl get configmap -n kube-system -o wide -o yaml > configmap.yaml
     
    复杂操作命令:
      删除kube-system 下Evicted状态的所有pod:
      kubectl get pods -n kube-system |grep Evicted| awk '{print $1}'|xargs kubectl delete pod -n kube-system
     
    以下为维护环境相关命令:
    重启kubelet服务
    systemctl daemon-reload
    systemctl restart kubelet
     
    修改启动参数
    vim /etc/systemd/system/kubelet.service.d/10-kubeadm.conf
     
    # 查看集群信息
    kubectl cluster-info
     
    # 查看各组件信息
    kubectl get componentstatuses
     
    #查看kubelet进程启动参数
    ps -ef | grep kubelet
     
    查看日志:
    journalctl -u kubelet -f
     
    设为不可调度状态:
    kubectl cordon node1
     
    将pod赶到其他节点:
    kubectl drain node1
     
    解除不可调度状态
    kubectl uncordon node1
     
    # k8s删除资源状态一直是Terminating,可使用kubectl中的强制删除命令
    # 删除POD
    kubectl delete pod PODNAME --force --grace-period=0
     
    master运行pod
    kubectl taint nodes master.k8s node-role.kubernetes.io/master-
    master不运行pod
    kubectl taint nodes master.k8s node-role.kubernetes.io/master=:NoSchedule
  • 相关阅读:
    Redhat7.4Python安装配置cx_Oracle
    Kafka与Zookeeper关系
    Centos7Prometheus+Granfana安装配置
    1day漏洞反推技巧实战(3)
    redis攻击篇redis写文件
    资产收集对抗子域名爆破
    ssrf漏洞利用攻击redis篇
    Spring Cloud Gateway actuator组建对外暴露RCE问题漏洞分析
    PHP/ASP.NET/ASP网站定制开发
    PHP 程序员的调试技术
  • 原文地址:https://www.cnblogs.com/wudongyu/p/12262936.html
Copyright © 2020-2023  润新知