kubernetes笔记(二)

k8s集群管理

集群管理命令

命令说明

子命令说明
help用于查看命令及子命令的帮助信息
cluster-info显示集群的相关配置信息
version查看服务器及客户端的版本信息
api-resources查看当前服务器上所有的资源对象
api-versions查看当前服务器上所有资源对象的版本
config管理当前节点上kubeconfig 的认证信息

 

# 查看帮助命令信息
[root@master ~]# kubectl help version

# 查看集群状态信息
[root@master ~]# kubectl cluster-info 

# 查看服务端与客户端版本信息
[root@master ~]# kubectl version

# 查看资源对象类型
[root@master ~]# kubectl api-resources 

# 查看资源对象版本
[root@master ~]# kubectl api-versions 

# 查看当前认证使用的用户及证书
[root@master ~]# kubectl config get-contexts 

# 使用 view 查看详细配置
[root@master ~]# kubectl config view 

主机管理授权

比如harbor主机想要像master主机一样控制其他节点

[root@harbor ~]# vim /etc/hosts
192.168.1.30    harbor
192.168.1.50    master
192.168.1.51    node-0001
192.168.1.52    node-0002
192.168.1.53    node-0003
192.168.1.54    node-0004
192.168.1.55    node-0005

#下载插件
dnf install -y kubectl
# 管理授权
mkdir -p $HOME/.kube
rsync -av master:/etc/kubernetes/admin.conf $HOME/.kube/config
chown $(id -u):$(id -g) $HOME/.kube/config

#验证
[root@harbor ~]# kubectl get nodes

Pod管理命令

Pod管理命令(一)

子命令说明备注
run/create创建资源对象可输出资源文件模板
get查看资源对象的状态信息常用参数: -o 显示格式
describe查询资源对象的属性信息
logs查看容器的报错信息常用参数: -c 容器名称

 创建

# 创建名称空间资源对象
[root@master ~]# kubectl create namespace work

# 查看名称空间
[root@master ~]# kubectl get namespaces


# 创建简单 Pod 资源对象
[root@master ~]# kubectl -n work run myhttp --image=myos:httpd

# 查询资源对象
[root@master ~]# kubectl -n work get pods -o wide


# 访问验证
[root@master ~]# curl http://10.244.2.2
Welcome to The Apache.

get

# 查看 Pod 资源对象
[root@master ~]# kubectl get pods

# 只查看资源对象的名字
[root@master ~]# kubectl get pods -o name

# 查看资源对象运行节点的信息
[root@master ~]# kubectl get pods -o wide

# 查看资源对象详细信息,Yaml 格式
[root@master ~]# kubectl get pod myweb -o yaml

# 查看名称空间
[root@master ~]# kubectl get namespaces 
或者kubectl get ns

# 查看 kube-system 名称空间中的 Pod 信息
[root@master ~]# kubectl -n kube-system get pods

describe

# 查看资源对象的属性信息
[root@master ~]# kubectl describe pod myweb


# 查看 work 名称空间下的 pod 信息
[root@master ~]# kubectl -n work describe pod myhttp

logs

# 访问服务,并查看日志
[root@master ~]# curl http://10.244.1.3/info.php
[root@master ~]# curl http://10.244.2.2/info.php

# 查看 myweb 日志
[root@master ~]# kubectl logs myweb 

# 查看 myhttp 日志
[root@master ~]# kubectl -n work logs myhttp

Pod 管理命令(二)

子命令说明备注
exec在某一个容器内执行特定的命令可选参数: -c 容器名称
cp在容器和宿主机之间拷贝文件或目录可选参数: -c 容器名称
delete删除资源对象可选参数: -l 标签

exec

# 在容器内执行命令
[root@master ~]# kubectl exec myweb -- ls 

[root@master ~]# kubectl exec -it myweb -- /bin/bash
[root@myweb html]# ifconfig eth0

cp

# 与容器进行文件或目录传输
[root@master ~]# kubectl cp myweb:/etc/yum.repos.d /root/aaa

[root@master ~]# tree /root/aaa
/root/aaa
├── local.repo
├── Rocky-AppStream.repo
├── Rocky-BaseOS.repo
└── Rocky-Extras.repo

[root@master ~]# kubectl -n work cp /etc/passwd myhttp:/root/mima
[root@master ~]# kubectl -n exec myweb -- ls /root/

delete

# 删除资源对象
[root@master ~]# kubectl delete pods myweb 


# 删除 work 名称空间下所有 Pod 对象
[root@master ~]# kubectl -n work delete pods --all


# 删除名称空间
[root@master ~]# kubectl delete namespaces work 

资源对象文件

资源文件管理命令

子命令说明备注
create创建文件中定义的资源支持指令式和资源对象文件配置
apply创建(更新)文件中定义的资源只支持资源对象文件(声明式)
delete删除文件中定义的资源支持指令式和资源对象文件配置

create

# 创建资源对象
[root@master ~]# kubectl create -f myweb.yaml 

# 不能更新,重复执行会报错
[root@master ~]# kubectl create -f myweb.yaml 

apply

# 创建资源对象
[root@master ~]# kubectl apply -f myweb.yaml 

# 更新资源对象
[root@master ~]# kubectl apply -f myweb.yaml 

# 删除资源对象
[root@master ~]# kubectl delete -f myweb.yaml 


# 拓展提高
# 与 kubectl apply -f myweb.yaml 功能相同
[root@master ~]# cat myweb.yaml | kubectl apply -f -  

delete

# 使用资源对象文件删除
[root@master ~]# kubectl delete -f myhttp.yaml

[root@master ~]# kubectl get pods

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值