『高级篇』docker之kubernetes基础集群命令小实战(35)

栏目: 编程工具 · 发布时间: 6年前

内容简介:下面我们就来试试看怎么去操作,控制它。我们从最简单的命令开始,尝试一下kubernetes官方的入门教学:playground的内容。了解如何创建pod,deployments,以及查看他们的信息,深入理解他们的关系。源码:https://github.com/limingios/msA-docker k8s分支和https://github.com/limingios/kubernetes-starter 基础集群的搭建查看32节到34节

下面我们就来试试看怎么去操作,控制它。我们从最简单的命令开始,尝试一下kubernetes官方的入门教学:playground的内容。了解如何创建pod,deployments,以及查看他们的信息,深入理解他们的关系。源码:https://github.com/limingios/msA-docker k8s分支和https://github.com/limingios/kubernetes-starter 基础集群的搭建查看32节到34节

『高级篇』docker之kubernetes基础集群命令小实战(35)

kubernetes接触命令

  • kubectl version

    >查看版本

『高级篇』docker之kubernetes基础集群命令小实战(35)

  • kubectl get nodes

    >查看nodes

『高级篇』docker之kubernetes基础集群命令小实战(35)

  • kubectl get pods

    >查看pods

『高级篇』docker之kubernetes基础集群命令小实战(35)

  • 拉取官方的镜像

    >内存有点低比较慢

kubectl run kubernetes-bootcamp --image=jocatalin/kubernetes-bootcamp:v1 --port=8080

『高级篇』docker之kubernetes基础集群命令小实战(35)

  • 查看deploy的详细信息
kubectl describe  deploy kubernetes-bootcamp

『高级篇』docker之kubernetes基础集群命令小实战(35)

  • 查看pods的详细信息
kubectl describe  pods kubernetes-bootcamp-6b7849c495-xmmvh

『高级篇』docker之kubernetes基础集群命令小实战(35)

  • 如何访问刚才那个8080端口因为它在103那台机器上,可以通过apiserver的方式

    >启动2个窗口,一个窗口启动代理命令,

kubectl proxy

『高级篇』docker之kubernetes基础集群命令小实战(35)

然后操作另一个窗口

curl http://localhost:8001/api/v1/proxy/namespaces/default/pods/kubernetes-bootcamp-6b7849c495-xmmvh/

『高级篇』docker之kubernetes基础集群命令小实战(35)

  • 扩缩容

    >k8s会均匀的使用机器,不会存在一台机器用的很多,一台机器用的很少的情况。

#如果需要从2 变成1 直接还用这个命令
kubectl scale deploy kubernetes-bootcamp --replicas=2
#可以看到在102运行了一个实例,在103在运行了一个实例
kubectl get pods -o wide

『高级篇』docker之kubernetes基础集群命令小实战(35)

『高级篇』docker之kubernetes基础集群命令小实战(35)

  • 升级镜像

    >目前状态

kubectl describe deploy kubernetes-bootcamp

『高级篇』docker之kubernetes基础集群命令小实战(35)

升级镜像

#原来是v1升级为v2
kubectl  set image deploy kubernetes-bootcamp kubernetes-bootcamp=jocatalin/kubernetes-bootcamp:v2
kubectl describe deploy kubernetes-bootcamp

『高级篇』docker之kubernetes基础集群命令小实战(35)

『高级篇』docker之kubernetes基础集群命令小实战(35)

deploy的状态

kubectl rollout status deploy kubernetes-bootcamp

『高级篇』docker之kubernetes基础集群命令小实战(35)

回滚镜像

kubectl rollout undo deploy kubernetes-bootcamp
#又变回v1了
kubectl describe deploy kubernetes-bootcamp

『高级篇』docker之kubernetes基础集群命令小实战(35)

删除deploy

kubectl delete deploy kubernetes-bootcamp

『高级篇』docker之kubernetes基础集群命令小实战(35)

配置文件

上边用了比较多的命令了,老铁消化吸收一下,当然一直使用命令管理集群真的很不方便,当拥有大量的应用的时候很难胜任了,k8s也提供了配置文件的方式来管理。跟swarm的有点类似吧。设计和功能上有点区别。

  • yaml文件创建pod
mkdir services
cd services
vi nginx-pod.yaml

『高级篇』docker之kubernetes基础集群命令小实战(35)

nginx-pod.yaml 文件

apiVersion: v1
kind: Pod
metadata:
  name: nginx
spec:
  containers: 
    - name: nginx
      image: nginx:1.7.9
      ports: 
        - containerPort: 80

『高级篇』docker之kubernetes基础集群命令小实战(35)

命令生成pod

kubectl create -f nginx-pod.yaml
#文件写明的创建pod,就不可能创建deploy
kubectl get deploy
kubectl get pods -o wide

『高级篇』docker之kubernetes基础集群命令小实战(35)

『高级篇』docker之kubernetes基础集群命令小实战(35)

启动代理尝试访问nginx

老套路,一个窗口启动,一个窗口curl

#ip101启动代理
kubectl proxy
#ip101另一个窗口访问
curl http://localhost:8001/api/v1/proxy/namespaces/default/pods/nginx/

『高级篇』docker之kubernetes基础集群命令小实战(35)

『高级篇』docker之kubernetes基础集群命令小实战(35)

  • yaml文件创建deployment
vi nginx-Deployment.yaml

nginx-Deployment.yaml 文件

apiVersion: apps/v1beta1
kind: Deployment
metadata:
  name: nginx-deployment
spec:
  replicas: 2
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.7.9
        ports:
          - containerPort: 80

『高级篇』docker之kubernetes基础集群命令小实战(35)

命令生成deployment

kubectl create -f nginx-Deployment.yaml
kubectl get deploy
kubectl get pods -o wide
kubectl get pods -l app=nginx
kubectl get pods -l app=nginx -o wide

『高级篇』docker之kubernetes基础集群命令小实战(35)

PS:常用的命令就说到这里吧,下次继续说说service和dns。

百度未收录

>>原创文章,欢迎转载。转载请注明:转载自IT人故事会,谢谢!

>>原文链接地址:上一篇:

已是最新文章


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

编程珠玑(第二版)

编程珠玑(第二版)

[美] Jon Bentley / 谢君英、石朝江 / 中国电力出版社 / 2004-4 / 28.00元

《编程珠玑(第2版)》是计算机科学方面的经典名著。书的内容围绕程序设计人员面对的一系列实际问题展开。作者Jon Bentley 以其独有的洞察力和创造力,引导读者理解这些问题并学会解决方法,而这些正是程序员实际编程生涯中至关重要的。一起来看看 《编程珠玑(第二版)》 这本书的介绍吧!

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具