当前位置: 首页 > news >正文

男生可以做网站编辑工作吗网站建设报价明细表

男生可以做网站编辑工作吗,网站建设报价明细表,wordpress smzdm主题,做一网站需要哪些语言目录 一.k8s集群资源管理方式分类 1.陈述式资源管理方式 2.声明式资源管理方式 二.陈述式资源管理方法 三.kubectl命令 四.项目生命周期 1.创建 kubectl create命令 2.发布 kubectl expose命令 3.更新 kubectl set 4.回滚 kubectl rollout 5.删除 k…

目录

一.k8s集群资源管理方式分类

1.陈述式资源管理方式

2.声明式资源管理方式

二.陈述式资源管理方法

三.kubectl命令

四.项目生命周期

1.创建    kubectl create命令

2.发布    kubectl expose命令

3.更新    kubectl set

4.回滚    kubectl rollout 

5.删除    kubectl delete


一.k8s集群资源管理方式分类

1.陈述式资源管理方式

  • 增删查比较方便,但是改非常不方便
  • 使用一条kubectl命令和参数选项来实现资源对象管理操作

2.声明式资源管理方式

  • yaml文件管理
  • 使用yaml配置文件里定义的配置,实现资源对象的管理操作

二.陈述式资源管理方法

  • kubernetes 集群管理集群资源的唯一入口是通过相应的方法调用 apiserver 的接口
  • kubectl 是官方的CLI命令行工具,用于与 apiserver 进行通信,将用户在命令行输入的命令,组织并转化为 apiserver 能识别的信息,进而实现管理 k8s 各种资源的一种有效途径
  • kubectl 的命令大全:kubectl --help
  • k8s中文文档:http://docs.kubernetes.org.cn/683.html
  • 对资源的增、删、查操作比较方便,但对改的操作就不容易了

三.kubectl命令

查看版本信息
kubectl version

查看资源对象简写
kubectl api-resources

查看集群信息
kubectl cluster-info
kubectl get cs
kubectl get nodes
配置kubectl自动补全
source <(kubectl completion bash)vim /etc/bashrc  #可添加到该文件的末尾
bash切换环境即可

node节点查看日志
journalctl -u kubelet -f

kubectl get <resource> [-o wide|json|yaml] [-n namespace]
获取资源的相关信息,-n 指定命令空间,-o 指定输出格式
resource可以是具体资源名称,如pod nginx-xxx;也可以是资源类型,如pod;或者all(仅展示几种核心资源,并不完整)
--all-namespaces 或 -A :表示显示所有命名空间,
--show-labels :显示所有标签
-l app :仅显示标签为app的资源
-l app=nginx :仅显示包含app标签,且值为nginx的资源wide:显示详细信息

kubectl get -n kube-flannel pods   #查看命名空间kube-flannel下的所有pod资源
kubectl get -n kube-flannel pods kube-flannel-ds-c5zqz  #-n指定具体命名空间查看指定的kube-flannel-ds-c5zqz资源kubectl get -n kube-flannel pods kube-flannel-ds-c5zqz -o wide  #显示kube-flannel-ds-c5zqz资源的详细信息

kubectl get -n kube-system pods  --show-labels    # --show-labels    查看指定命名空间下资源的标签
kubectl get -n kube-system pods  --show-labels -l k8s-app    #通过-l筛选k8s-app 标签的资源
kubectl get -n kube-system pods  --show-labels -l k8s-app=kube-dns  #进一步筛选k8s-app标签值等于kube-dns的资源

kubectl get -n kubernetes-dashboard all  #all选项会列出指定命名空间下pod、service、控制器资源

kubectl get -n kubernetes-dashboard pods
kubectl get -n kubernetes-dashboard pods,service
kubectl get -n kubernetes-dashboard pods,service,deploy
#想提示查看多个资源,可在资源中间以,分隔
kubectl get -n kubernetes-dashboard all   #查看所有资源

查看 master 节点状态
kubectl get componentstatuses
kubectl get cs

查看命名空间
kubectl get namespace
kubectl get ns
命令空间的作用:用于允许不同 命名空间 的 相同类型 的资源 重名的

查看default命名空间的所有资源
kubectl get all [-n default]

创建命名空间
kubectl get nskubectl create namespace xy101
kubectl create deployment nginx1 --image=nginx -r 3 --port=80 -n xy101   #即可指定命名空间创建资源,不可在同一个命名空间中创建相同名称的同种资源
kubectl get -n xy101 all

查看某个资源的详细信息
kubectl describe -n xy101 deployments.apps nginx1  #deployments.apps资源的名称

查看命名空间xy101 中的pod 信息kubectl describe -n <命名空间> <资源类型> <资源名称> kubectl describe -n xy101 pod nginx1-794dd8cb7b-fcxnx 

删除pod
kubectl delete -n <命名空间> <资源类型> <资源名称> kubectl delete -n xy101 pod nginx1-794dd8cb7b-bc6cv   #此种方法创建的pod资源若直接删除pod,无法删除由于设置了副本数,删除一个会自动再创建一个

创建pod资源方法2(此种方法创建的pod是独立存在的,没有控制器管理)
kubectl run -n xy101 nginx2 --image=nginx --port=80   #此种方法创建的pod无控制器进行管理,可直接删除kubectl delete -n xy101 pod nginx2   #此种方法创建的pod可直接删除

kubectl exec可以跨主机登录容器,docker exec 只能在容器所在主机上登录kubectl exec -n <命名空间> -it <Pod资源名称> [-c 容器名称] -- sh|bash|命令kubectl exec -it -n xy101 pod/nginx1-794dd8cb7b-cbdjd -- sh   
exec -it -n xy101 pod/nginx1-794dd8cb7b-cbdjd -- ls -l  #在不进入容器的前提下查看其中内容

当一个pod中存在多个容器,可使用-c指定登录的容器kubectl describe -n xy101 pod/nginx1-794dd8cb7b-cbdjd  #查看资源下的容器
kubectl exec -it -n xy101 -c nginx pod/nginx1-794dd8cb7b-cbdjd -- sh   #使用-c指定登录的容器

查看Pod中容器日志
kubectl logs -n <命名空间> <Pod资源名称> [-c 容器名称] [-f] [-p]       #-p表示查看Pod容器重启前的日志kubectl logs -n xy101 nginx1-794dd8cb7b-cbdjd -c nginx

扩缩容
kubectl scale -n <命名空间> <Pod控制器资源类型>    <资源名称> --replicas=副本数deployment|statefulsetkubectl scale -n xy101 deployment nginx1 --replicas=3

删除副本控制器
kubectl get -n xy101 all
kubectl delete -n xy101 deployments.apps nginx2

删除(重启)pod资源,由于存在deployment/rc之类的副本控制器,删除pod也会重新拉起,若pod无法删除,总是处于terminate状态,则要强行删除pod
kubectl delete pod <pod-name> -n <namespace> --force --grace-period=0
#grace-period表示过渡存活期,默认30s,在删除pod之前允许pod慢慢终止其上的容器进程,从而优雅退出,0表示立即终止podkubectl delete -n xy101 pod nginx1-794dd8cb7b-lmjls --force --grace-period=0
kubectl get -n xy101 all

删除全部pod资源进行重建
kubectl delete -n xy101 pods --all
kubectl get -n xy101 all

删除命名空间
kubectl delete ns 网络空间
kubectl delete ns xy101

查看service关联的Pod端点
kubectl describe -n <命名空间> <资源类型> <资源名称>
kubectl describe -n xy101 svc svc-nginx1kubectl get -n xy101 endpoints <资源名称>    #直接查看关联端点
#以上两种方法可以查看端点不多的情况,若端点比较多就无法详细查看到kubectl describe -n <命名空间> endpoints <资源名称>
kubectl describe -n xy101 endpoints svc-nginx1

如何修改标签选择器的值
#创建service
kubectl create -n <命名空间>  service <svc资源类型>  <资源名称>  --tcp=<clusterIP的端口>:<容器端口>
kubectl create -n xy101 service nodeport svc-1 --tcp=8080:80

修改service标签选择器
kubectl set -n <命名空间>  selector  <资源类型>  <资源名称>  '标签key=value'kubectl set -n xy101 selector svc svc-1 'app=nginx1'

四.项目生命周期

项目的生命周期:创建-->发布-->更新-->回滚-->删除

1.创建    kubectl create命令

  • 创建并运行一个或多个容器镜像
  • 创建一个deployment 或job 来管理容器
kubectl create ns xy101   #创建命名空间
kubectl create -n xy101 deployment nginx1 --image=nginx --port=80 --replicas=3  #创建资源


 

2.发布    kubectl expose命令

  • 将资源暴露为新的 Service
为deployment的nginx创建service,并通过Service的8080端口转发至容器的80端口上,Service的名称为
nginx-service,类型为NodePortkubectl expose deployment nginx --port=8080 --target-port=80 --name=nginx-service --type=NodePortkubectl create service nodeport nginx-service --tcp=8080:80

service 的 type 类型

  • ClusterIP(默认类型):分配一个集群内部的虚拟 IP 地址,仅在集群内部可访问。例如Pod和Pod之间的通信,如果是Kubernetes集群外的请求访问是不行的。
  • NodePort:宿主机上开启一个特定端口(默认范围 30000-32767),直接与Pod的端口相连,实现访问宿主机IP:端口能够直接访问到Pod。用途:允许外部访问,但通常用于开发或测试。
  • LoadBalancer:使用外接负载均衡器完成到服务的负载分发,此模式需要使用云提供商的负载均衡器,将请求分发到所有的Node上,再结合kube-proxy实现流量接入:外部客户端 -> 云负载均衡器 -> Kubernetes 节点 -> kube-proxy -> Pod
  • LoadBalancer和NodePort很相似,目的都是向外部暴露一个端口,区别在于LoadBalancer会在集群的外部再来做一个负载均衡设备,而这个设备需要外部云环境支持的,外部服务发送到这个设备上的请求,会被设备负载均衡转发到K8S集群中
  • externalName:将外部服务映射到集群内部,并以DNS的形式用于Pod中服务对外部服务访问
创建service方法1kubectl expose -n <命名空间>  <Pod控制器资源类型>  <资源名称> --name=<svc资源名称>  --tpye=<svc类型>  --port=<clusterIP的端口>  --targetPort=<容器端口>kubectl expose -n xy101 deployment nginx1 --name=svc-nginx1 --port=8080 --target-port=80 --type=ClusterIP     #创建类型为ClusterIP的service所有节点服务器即可通过访问http://clusterIP:port访问service  
curl http://10.96.194.137:8080

kubectl expose -n xy101 deployment nginx1 --name=svc-nginx2 --port=8080 --target-port=80 --type=NodePort  #创建service类型为NodePortkubectl get -n xy101 svcnetstat -lntp | grep :31373    #在每个节点都可监听到这个端口,  K8S集群外部/内部用户都可以通过nodeIP:nodePort来访问service

3.更新    kubectl set

重新创建一个service做测试
kubectl create -n xy101 deployment myapp-test01 --image=soscscs/myapp:v1 --port=80 --replicas=2   #创建pod资源
kubectl expose -n xy101 deployment myapp-test01 --name=test02 --port=8080 --target-port=80 --type=NodePort  #创建service,类型选择NodePort
外部服务器即可通过nodeip:nodeport访问关联的pod

kubectl set image  -n <命名空间>  <Pod控制器资源类型>  <资源名称>  <容器名=镜像名:标签>
kubectl set image -n xy101 deployment myapp-test01 myapp=soscscs/myapp:v2kubectl describe -n xy101 deployments.apps myapp-test01

4.回滚    kubectl rollout 

kubectl rollout history -n <命名空间>  <Pod控制器资源类型>   <资源名称> kubectl rollout undo -n <命名空间>  <Pod控制器资源类型>  <资源名称>  [--to-revision=N]kubectl rollout status -n <命名空间>  <Pod控制器资源类型>  <资源名称>kubectl rollout history -n xy101 deployment myapp-test01    #查看历史回滚记录
kubectl rollout undo -n xy101 deployment myapp-test01       #撤销上一次的 rollout
kubectl rollout undo -n xy101 deployment myapp-test01 --to-revision=5  #指定回滚版本
kubectl rollout status -n xy101 deployment myapp-test01  #查看回滚状态

5.删除    kubectl delete

kubectl delete -n xy101 deployments.apps myapp-test01 #删除控制器
kubectl delete -n xy101 service test02   #删除service

http://www.dinnco.com/news/25954.html

相关文章:

  • 国内做家具外贸的网站有哪些洗发水营销推广软文800字
  • 宝鸡大学生做网站网站点击快速排名
  • 网络服务推广易下拉技巧威海seo公司
  • 北京欢迎你 网站建设南通seo网站优化软件
  • 学做网站论坛vip号码山西太原网络推广
  • 织梦 视频网站源码免费网络推广方式
  • 网站设计团队对seo的认识和理解
  • 自做网站好做吗亚洲长尾关键词挖掘
  • 帮别人做网站代写文章
  • 如何做旅游网站的思维导图网站域名查询
  • 可以做视频推广的网站网络广告策划案例
  • 有没有好玩的网页游戏网站seo优化方案策划书
  • 网站规划与建设报告怎么写域名注册网站有哪些
  • 企业营销型网站有特点社交媒体营销
  • 造价人员做兼职的网站百度seo服务公司
  • 马上飞做的一些网站网络软文发布
  • 网站设计联盟html简单网页成品
  • 在微信中做网站百度信息流怎么投放
  • 手机网站发布页电脑版免费b站推广网站
  • 合肥网站建设哪个好微信朋友圈软文大全
  • 西安网站制作平台注册网站免费注册
  • 济南网页设计企业网站优化公司
  • 在网站上做的图表怎么放到PPT里面制作网站的基本流程
  • 郑州网站建深圳优化怎么做搜索
  • 玉环做企业网站站长工具seo综合查询广告
  • 怎么找出网站的备案号媒体资源网
  • php网站语言切换功能如何做来客seo
  • 为什么做游戏网站被封seo全网优化推广
  • 做火锅加盟哪个网站好搜狗搜索网页版
  • 网站源码后台手机app开发