<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          K8s Kubectl集群管理工具使用技巧

          共 8494字,需瀏覽 17分鐘

           ·

          2023-06-09 13:14

          kubectlKubernetes命令行管理工具,可以使用它部署、查看和管理集群所有資源。

          作為一名K8s運維工程師,必須要熟悉它,下面總結(jié)一些kubectl常用的命令示例,供大家練習~

          創(chuàng)建資源

          創(chuàng)建命名空間:使用? kubectl create namespace ?命令可以創(chuàng)建新的命名空間。

                kubectl create?namespace?my-namespace
              

          使用 kubectl apply 命令創(chuàng)建資源對象:使用 kubectl apply 命令可以從配置文件中創(chuàng)建或更新資源對象。

              
                    kubectl?apply?-f?my-pod.yaml
          kubectl?apply?-f?my-deployment.yaml
          kubectl?apply?-f?my-service.yaml


          使用 kubectl create 命令創(chuàng)建資源對象:使用 kubectl create 命令可以通過命令行參數(shù)直接創(chuàng)建資源對象。

              
                    kubectl create?pod my-pod --image=my-image
          kubectl create?deployment my-deployment --image=my-image
          kubectl create?service my-service --port=8080 --target-port=80


          從模板生成資源對象:使用 kubectl create 命令結(jié)合 --dry-run=client -o yaml 選項可以從模板生成資源對象的配置文件,并進行進一步修改或保存。

              
                    kubectl create?pod my-pod --image=my-image --dry-run=client -o yaml > my-pod.yaml
          kubectl create?deployment my-deployment --image=my-image --dry-run=client -o yaml > my-deployment.yaml
          kubectl create?service my-service --port=8080 --target-port=80 --dry-run=client -o yaml > my-service.yaml

          查看資源

          查看所有資源對象:使用 kubectl get 命令可以列出當前命名空間中的所有資源對象。

              
                    kubectl get?all
                  


          查看特定類型的資源:

              
                    kubectl get?pods
          kubectl get?deployments
          kubectl get?services


          查看所有命名空間中的資源:使用 --all-namespaces 選項可以列出所有命名空間中的資源對象。

              
                    kubectl get?all?--all-namespaces
                  


          使用標簽過濾資源:使用 -l 選項可以根據(jù)標簽過濾資源對象。

              
                    kubectl get?pods -l?app=my-app
          kubectl get?deployments -l?environment=production


          顯示資源詳細信息:使用 -o yaml -o json 選項可以獲取資源對象的詳細信息,以YAML或JSON格式顯示。

              
                    kubectl get?pods ?-o?yaml
          kubectl get?services ?-o?json


          查看資源的事件日志:使用 kubectl describe 命令可以查看資源對象的事件日志,包括創(chuàng)建、更新和刪除等操作的詳細信息。

              
                    kubectl describe?pod name>
          kubectl describe?service name>


          使用字段選擇器顯示特定字段:使用 -o custom-columns 選項可以選擇要顯示的特定字段,并按自定義列格式輸出。

              
                    kubectl get?pods -o?custom-columns=NAME:.metadata.name,STATUS:.status.phase
          kubectl get?services -o?custom-columns=NAME:.metadata.name,TYPE:.spec.type

          修改資源

          使用 kubectl edit 命令進行交互式編輯:使用 kubectl edit 命令可以在默認編輯器中打開指定資源對象的配置,并進行交互式編輯。

              
                    kubectl edit?pods 
          kubectl edit?deployments
          kubectl edit?services


          直接修改原有YAML文件:使用文本編輯器編輯資源對象的YAML配置文件,并使用 kubectl apply -f ?命令指定配置文件將更新應(yīng)用到集群中。

              
                    kubectl?apply?-f?my-pod.yaml
          kubectl?apply?-f?my-deployment.yaml
          kubectl?apply?-f?my-service.yaml


          使用 kubectl patch 命令進行部分更新:使用 kubectl patch 命令可以對資源對象進行部分更新,而不必修改整個配置文件。

              
                    kubectl patch pods ?--patch '{"spec": {"containers": [{"name": "my-container", "image": "new-image"}]}}'
          kubectl patch deployments ?--patch '{"spec": {"replicas": 3}}'
          kubectl patch services ?--patch '{"spec": {"type": "LoadBalancer"}}'


          使用標簽選擇器批量修改資源:使用 kubectl label 命令可以使用標簽選擇器批量修改符合條件的資源對象的標簽。

              
                    kubectl label pods -l app=my-app new-label=value
          kubectl label deployments -l environment=production new-label=value


          使用 kubectl annotate 命令添加注釋:使用 kubectl annotate 命令可以為資源對象添加注釋信息。

              
                    kubectl annotate pods ?description="www.aliangedu.cn"
          kubectl annotate services ?owner="www.aliangedu.cn"

          刪除資源

          刪除指定類型的資源:使用 kubectl delete 命令可以刪除指定類型的資源對象。

              
                    kubectl delete?pods name>
          kubectl delete?deployments name>
          kubectl delete?services name>


          刪除所有資源對象:使用 --all 選項可以刪除當前命名空間中的所有資源對象。

                kubectl delete?all?--all
              

          刪除特定命名空間中的資源:使用 -n 選項可以刪除指定命名空間中的資源對象。

              
                    kubectl delete?pods -n 
          kubectl delete?deployments -n
          kubectl delete?services -n


          刪除符合標簽選擇器條件的資源:使用 -l 選項可以根據(jù)標簽選擇器刪除符合條件的資源對象。

              
                    kubectl delete?pods -l app=my-app
          kubectl delete?deployments -l environment=production


          批量刪除資源對象:使用 --filename -f 選項可以從配置文件中批量刪除資源對象。

              
                    kubectl delete?-f my-pods.yaml
          kubectl delete?-f my-deployments.yaml
          kubectl delete?-f my-services.yaml


          刪除命名空間:使用 kubectl delete namespace 命令可以刪除指定的命名空間及其所有相關(guān)資源對象。

              
                    kubectl delete?namespace?<namespace>
                  


          請注意,刪除操作是不可逆的,并且會立即刪除資源對象。在刪除資源對象之前,請確保你了解刪除操作的影響,并謹慎操作。

              

          - END -

                
                  
                    
                        
                          
                              
                                
                                  
                                      
                                        
                                            ?
                                            推薦閱讀?
                                            
                                              





                                    
                                      原來懂Kubernetes,找工作這么吃香!?K8S 常用資源 YAML 詳解
                                      DevOps與CI/CD常見面試問題匯總
                                        
          我會在Docker容器中抓包了!
          Ansible 批量100臺服務(wù)器添加 Crontab 19 個 K8S集群常見問題總結(jié),建議收藏 運維高可用架構(gòu)的 6 大常規(guī)方案
          運維監(jiān)控指標全方面總結(jié) 9 個實用 Shell 腳本,建議收藏!
          詳解 K8S Helm CI/CD發(fā)布流程
          ES+Redis+MySQL,這套高可用架構(gòu)設(shè)計太頂了! 一臺服務(wù)器最大能支持多少條TCP連接? K8S運維必知必會的 Kubectl 命令總結(jié)
          16 張圖硬核講解 Kubernetes 網(wǎng)絡(luò)
          史上最全 Jenkins Pipeline流水線詳解 Jenkins 自動化部署實例講解,另附安裝教程! 主流監(jiān)控系統(tǒng) Prometheus 學習指南
                                      
                                          搭建一套完整的企業(yè)級 K8s 集群(二進制方式)
                                        
                                        
                                        
                                            40個 Nginx 常問面試題
                                          
                                        
                                            Linux運維工程師 50個常見面試題
                                          
                                        
                      
                        
                            
                                

          點亮,服務(wù)器三年不宕機4cc108a2c5f6746b5fe1deb11e0b67b5.webp
          瀏覽 70
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  51妺妺嘿嘿午夜福利 | 国产熟女乱伦 | 一本无码视频 | 国产avwww | 黄色三级片免费看的 |