k8s命令式對象管理和配置

kubectl補全:?

# dnf install -y bash-completion
# echo "source <(kubectl completion bash)" >> ~/.bashrc
# kubectl completion bash > /etc/bash_completion.d/kubectl 

命令式對象管理

kubectl命令

# 查看所有pod
kubectl get pod
# 查看某個pod
kubectl get pod pod_name
# 查看某個pod,以yaml格式展示結果
kubectl get pod pod_name -o yaml

查看命名空間? ?并? 查看其中一個命名空間以yaml? 或者以json格式

?資源類型

?kubectl api-resources

經常使用的資源有下面這些?

?例子:看日志

看集群狀態

?

?下面以一個namespace / pod的創建和刪除簡單演示下命令的使用:

[root@k8s-master01 ~]# kubectl create ns dev
namespace/dev created
[root@k8s-master01 ~]# kubectl get ns dev -o yaml 
apiVersion: v1
kind: Namespace
metadata:creationTimestamp: "2024-05-25T07:05:24Z"labels:kubernetes.io/metadata.name: devname: devresourceVersion: "12664"uid: f1ab170b-f87b-4e02-883c-3343e89047c2
spec:finalizers:- kubernetes
status:phase: Active# 在此namespace下創建并運行一個nginx的Pod
[root@k8s-master01 ~]# kubectl run pod --image=nginx -n dev
pod/pod created# 查看新創建的pod
[root@k8s-master01 ~]#  kubectl get pod -n dev
NAME   READY   STATUS    RESTARTS   AGE
pod    1/1     Running   0          18s# 刪除指定的pod
[root@k8s-master01 ~]# kubectl delete ns dev
namespace "dev" deleted

?命令式對象配置

命令式對象配置就是使用命令配合配置文件一起來操作kubernetes資源。

# vim nginxpod.yaml
apiVersion: v1
kind: Namespace
metadata:name: dev
[root@k8s-master01 test]# kubectl create -f nginxpod.yaml 
namespace/dev created
[root@k8s-master01 test]# kubectl get ns
NAME              STATUS   AGE
default           Active   12d
dev               Active   25s
kube-node-lease   Active   12d
kube-public       Active   12d
kube-system       Active   12d
tigera-operator   Active   5d22h
# vim pod1.yaml
apiVersion: v1
kind: Pod
metadata:name: nginxpodnamespace: dev
spec:containers:- name: nginx-containersimage: nginx:1.14-alpine[root@k8s-master01 test]# kubectl create -f po1.yaml 
pod/nginxpod created
[root@k8s-master01 test]# kubectl get pod -n dev -o wide 
NAME       READY   STATUS    RESTARTS   AGE   IP              NODE         NOMINATED NODE   READINESS GATES
nginxpod   1/1     Running   0          90s   172.16.58.195   k8s-node02   <none>           <none>

或者

刪除

[root@k8s-master01 test]# kubectl delete -f nginxpod.yaml 
namespace "dev" deleted

總結: 其實聲明式對象配置就是使用apply描述一個資源最終的狀態(在yaml中定義狀態)

使用apply操作資源: 如果資源不存在,就創建,相當于 kubectl create

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?如果資源已存在,就更新,相當于 kubectl patch

擴展:kubectl可以在node節點上運行嗎 ?

kubectl的運行是需要進行配置的,它的配置文件是$HOME/.kube,如果想要在node節點運行此命令,需要將master上的.kube文件復制到node節點上,即在master節點上執行下面操作:

# scp -r $HOME/.kube k8s-node01:$HOME/

服務部署

接下來在kubernetes集群中部署一個nginx程序,測試下集群是否在正常工作。

# 部署nginx
[root@master ~]# kubectl create deployment nginx --image=nginx:1.14-alpine
deployment.apps/nginx created# 暴露端口
[root@master ~]# kubectl expose deployment nginx --port=80 --type=NodePort
service/nginx exposed# 查看服務狀態
[root@master ~]# kubectl get pods,service

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/15483.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/15483.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/15483.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

gbk轉utf-8

你們曾經有沒有因為文件的編碼問題而苦惱過&#xff1f;在Windows下開發時&#xff0c;尤其是項目初期&#xff0c;如果沒有特別注意文件的字符編碼問題&#xff0c;等到項目變大后&#xff0c;用Git對比代碼時&#xff0c;很可能會發現一些亂碼。這時才意識到字符編碼的重要性…

LLM——探索大語言模型在心理學方面的應用研究

1. 概述 心理學經歷了多次理論變革&#xff0c;目前人工智能&#xff08;AI&#xff09;和機器學習&#xff0c;特別是大型語言模型&#xff08;LLMs&#xff09;的使用&#xff0c;預示著新研究方向的開啟。本文詳細探討了像ChatGPT這樣的LLMs如何轉變心理學研究。它討論了LL…

docker- 鏡像 導出導入

文章目錄 前言docker- 鏡像 導出導入1. 導出2. 刪除鏡像3. 導入鏡像 前言 如果您覺得有用的話&#xff0c;記得給博主點個贊&#xff0c;評論&#xff0c;收藏一鍵三連啊&#xff0c;寫作不易啊^ _ ^。 ??而且聽說點贊的人每天的運氣都不會太差&#xff0c;實在白嫖的話&…

Nginx 從入門到精通-Nginx-Web服務器的瑞士軍刀

在當今互聯網高速發展的時代&#xff0c;作為Web服務器的Nginx可謂是一把"瑞士軍刀"&#xff0c;其強大的功能和出色的性能備受青睞。然而&#xff0c;僅僅停留在"會用"的層面是遠遠不夠的&#xff0c;要充分發揮Nginx的潛力&#xff0c;我們還需要深入了解…

SpringBoot Validation自定義注解之校驗指定最小整數

1&#xff0c;引入核心關鍵依賴 <!--數據校驗--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-validation</artifactId></dependency> 2&#xff0c;自定義注解 package com.taia.ym…

忘記“也是一門學問:機器如何忘記自己學到的知識?

在信息時代&#xff0c;我們常常希望人工智能能夠學到更多的知識&#xff0c;變得更加智能。但你是否想過&#xff0c;有時候讓機器"忘記"一些它學到的東西&#xff0c;也是一件很重要的事&#xff1f; 隨著用戶隱私保護意識的提高和相關法律法規的出臺&#xff0c;…

深入理解內聯函數(C語言)

目錄 1.什么是內聯函數2.內聯函數與宏3.編譯器對內聯函數的處理4.參考文獻 1.什么是內聯函數 很多人都會知道&#xff0c;可以將比較小的函數寫成內聯函數的形式&#xff0c;這樣會節省函數調用的開銷&#xff0c;具體是什么樣的開銷呢&#xff1f; 一個函數在執行過程中&…

v-if 與 v-show(vue3條件渲染)

v-if 是“真正”的條件渲染&#xff0c;因為它會確保在切換過程中條件塊內的事件監聽器和子組件適當地被銷毀和重建。 v-if 也是惰性的&#xff1a;如果在初始渲染時條件為假&#xff0c;則什么也不做——直到條件第一次變為真時&#xff0c;才會開始渲染條件塊。 相比之下&a…

Java—單例模式

什么是單例模式&#xff1f; 單例模式是一種軟件設計模式&#xff0c;它確保一個類只有一個實例&#xff0c;并提供一個全局訪問點來訪問該實例。在單例模式中&#xff0c;類自身負責創建自己的唯一實例&#xff0c;并且保證在整個應用程序中只能訪問到這個實例。 實現步驟&a…

IDEA通過tomcat運行注意事項

配置run--》edit configurations 以下的A B部分要保持一致 A和B的路徑要保持一致

前端vue項目遇到的問題01——那些初級問題

前端vue項目遇到的問題01——那些初級問題 1. npm install 問題1.1 依賴沖突1.1.1 詳細問題1.1.2 報錯原因1.1.3 解決問題1.1.3.1 方式1——無視沖突1.1.3.1 方式2——更換依賴版本 1.2 nodejs版本問題1.3 node版本正確的情況&#xff08;audit問題&#xff09;&#xff08;這個…

Java鏈表簡介

在Java中使用鏈表作為一種數據結構&#xff0c;并將其與MySQL作為底層數據庫進行集成&#xff0c;涉及幾個關鍵方面&#xff0c;包括數據存儲、數據操作的效率、以及如何在應用層和數據庫層之間映射數據結構。下面是對這些方面的分析&#xff1a; ### Java中的鏈表數據結構 鏈…

HTML5新特性、JS【初識JS 、JS核心語法】--學習JavaEE的day47

day47 HTML5新特性 定義文檔類型 在文件的開頭總是會有一個標簽 語言文檔類型聲明方式html4<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">html5<!DOCTYPE html> 新增語義化標簽 理解&…

vite-plugin-vue-devtools插件

vite-plugin-vue-devtools插件旨在幫助開發者更快地理解并調試Vue應用。它通過提供全面的功能和直觀的界面&#xff0c;以圖形化的方式展示應用程序狀態&#xff0c;使開發者能夠更方便地查看和管理Vue應用的各個方面。此外&#xff0c;該插件還支持Vue3.0版本&#xff0c;并且…

【Go專家編程——內存管理——垃圾回收】

垃圾回收 所謂的垃圾就上不在需要的內存塊&#xff0c;垃圾如果不清理&#xff0c;這些內存塊就沒有辦法再次被分配使用。在不支持垃圾回收的編程語言中&#xff0c;這些垃圾內存就上泄露的內存。 1. 垃圾回收算法 常見的垃圾回收算法有3種 引用計數&#xff1a;對每個對象…

yolov10 快速使用及訓練

參考: https://docs.ultralytics.com/models/yolov10/ ultralytics其實大多數系列都能加載使用: 官方: https://github.com/THU-MIG/yolov10.git 代碼參考: https://colab.research.google.com/github/roboflow-ai/notebooks/blob/main/notebooks/train-yolov10-object-…

一篇文章講透排序算法之希爾排序

希爾排序是對插入排序的優化&#xff0c;如果你不了解插入排序的話&#xff0c;可以先閱讀這篇文章&#xff1a;插入排序 目錄 1.插入排序的問題 2.希爾排序的思路 3.希爾排序的實現 4.希爾排序的優化 5.希爾排序的時間復雜度 1.插入排序的問題 如果用插入排序對一個逆序…

521源碼-免費代碼基礎學習-PHP如何運用變量教程

更多網站源碼學習教程&#xff0c;請點擊&#x1f449;-521源碼-&#x1f448;獲取最新資源 為什么要學習PHP&#xff1f;“我可以用JavaScript來實現程序編寫。”但JavaScript的能力是有限的&#xff0c;JavaScript通常運行在瀏覽器&#xff08;客戶端&#xff09;&#xff0…

go語言中for的4種循環形式總結

和其他語言不一樣&#xff0c;go語言中的循環語句只有for一種&#xff0c;但是go里面的for卻有3種不同的循環形式&#xff0c;總結如下&#xff1a; 1. 無限循環 for { //這個就是一個“死循環”&#xff0c;注意必須要有 break條件&#xff0c;否則就真成死循環了 } 2. fo…

Redis 源碼學習記錄:集合 (set)

無序集合 Redis 源碼版本&#xff1a;Redis-6.0.9&#xff0c;本篇文章無序集合的代碼均在 intset.h / intset.c 文件中。 Redis 通常使用字典結構保存用戶集合數據&#xff0c;字典鍵存儲集合元素&#xff0c;字典值為空。如果一個集合全是整數&#xff0c;則使用字典國語浪費…