查看master环境相关信息
一、版本信息

[root@master-web-38 ~]# kubectl version
Client Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.13", GitCommit:"954ff68d59e9dc62fa8252ffa9023a90ff8a358c", GitTreeState:"clean", BuildDate:"2019-02-13T11:03:32Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.13", GitCommit:"954ff68d59e9dc62fa8252ffa9023a90ff8a358c", GitTreeState:"clean", BuildDate:"2019-02-13T11:03:32Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"linux/amd64"}

[root@master-web-38 ~]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)

[root@fpNet-web-38 ~]# uname -r
3.10.0-327.el7.x86_64

[root@master-web-38 ~]# docker -v
Docker version 18.03.0-ce, build 0520e24

这里需要用到两个命令,示例命令:
[root@master ~]#kubectl scale sts....
[root@master ~]#kubectl  scale deployment....

例子:
# kubectl  scale deployment nginx-deployment --replicas=4
# kubectl scale sts cs-node  --replicas=4

实际情况调研:


//通过上面命令可以看到 rabbitmq是通过 deployment方式进行的部署.

我们查看有几个pod在运行

操作需求:我们要对rabbitmq进行缩容后,再次扩容,因为这样就不用直接删除rabbitmq pod了
目的是把所有的pod删除,转移到其他节点的机器上去,目前机器在主机名为ht1,ht2上,想转移到ht3去

执行

[root@master-web-38 ~]# kubectl scale deployment rabbitmq --replicas=2
deployment.extensions "rabbitmq" scaled

我们扩容中出现了这样的问题

我们接着来解决下,利用describe看下:

[root@master-web-38 ~]# kubectl describe pod rabbitmq-8565b4b7d8-69glr

初步判断就是从宿主机上加载时出错,应该是 docker images  仓库里面没有这个包,之前遇到过。
我们登录宿主机看下,确实没有这个包在docker images 命令显示结果里面,我在登陆之前好的那台部署好的,我登录看下

确实存在这个包,好我们需要导出,加入到出问题的机器上。

这里为什么要写下导出rabbitmq tar包这个步骤呢,因为你有时候不注意,直接导出,则标签可能会显示none
例如: docker save -o rabbitmq-v1-SNAPSHOT.zip bdefd564571b  或 docker load < rabbitmq.tar.gz // 这种就会出问题。
所以你有两种方法来修正这个错误
1、安装tar,在没有rabbitmq的那台机器上,重命名镜像
2、导出tar包时候,就把标签已经原样的导出了。
步骤为:
1、docker save -o rabbitmq.tar  127.0.0.1:35000/test/rabbitmq:v1
执行命令

[root@node1 rabbitmq]# docker save -o rabbitmq.tar 127.0.0.1:35000/test/rabbitmq:v1
[root@node1 rabbitmq]# ll
total 183148
-rw------- 1 root root 187540480 Feb 18 10:54 rabbitmq.tar
2、sz,rz 之后或scp
[root@node1 rabbitmq]#  scp -r /usr/local/src/rabbitmq/rabbitmq.tar root@10.121.51.24:/usr/local/src/tar
在另一个node节点 10.121.51.24 上执行
3、执行 docker load -i  < rabbitmq.tar

[root@node1 tar]# docker load -i rabbitmq.tar
5d6cbe0dbcf9: Loading layer [==================================================>] 129.2MB/129.2MB
5238a571b25e: Loading layer [==================================================>] 352.3kB/352.3kB
4b6d0457619d: Loading layer [==================================================>] 4.657MB/4.657MB
d2080f33d9e5: Loading layer [==================================================>] 6.656kB/6.656kB
4b3fc05f70d5: Loading layer [==================================================>] 3.584kB/3.584kB
ce98c94ff8e4: Loading layer [==================================================>] 45.34MB/45.34MB
0b025f55bda5: Loading layer [==================================================>] 6.656kB/6.656kB
d4e97504ea93: Loading layer [==================================================>] 3.584kB/3.584kB
327047f16aba: Loading layer [==================================================>] 7.764MB/7.764MB
2a4d27fea928: Loading layer [==================================================>] 11.78kB/11.78kB
df9bb8de3115: Loading layer [==================================================>] 2.048kB/2.048kB
104c5f54aed4: Loading layer [==================================================>] 1.536kB/1.536kB
c61e291bfc42: Loading layer [==================================================>] 10.75kB/10.75kB
4e3da2aaefea: Loading layer [==================================================>] 1.536kB/1.536kB
99f2452a9491: Loading layer [==================================================>] 62.98kB/62.98kB
3365b724bdfb: Loading layer [==================================================>] 3.072kB/3.072kB
f5b70732093d: Loading layer [==================================================>] 3.072kB/3.072kB
Loaded image: 127.0.0.1:35000/test/rabbitmq:v1

4、 docker images | grep rabbitmq 之后看到了加载的结果:

我们再次执行 
[root@master-web-38 ~]# kubectl  scale deployment rabbitmq --replicas=2
查看情况:

kubectl scale 一次缩容调整过程的更多相关文章

  1. k8s用kubectl管理应用升级,服务发布与回滚,扩缩容

    应用升级 Kubectl set image --help 有案例指定新版本 [root@k8s-master ~]# kubectl set image deployment/nginx nginx ...

  2. Docker Swarm(七)Scale 扩(缩)容服务

    扩(缩)容服务 扩容服务 Service还提供了复制(类似kubernetes里的副本)功能.可以通过 docker service scale 命令来设置服务中容器的副本数: docker serv ...

  3. 三十三、HPA实现自动扩缩容

    通过HPA实现业务应用的动态扩缩容 HPA控制器介绍 当系统资源过高的时候,我们可以使用如下命令来实现 Pod 的扩缩容功能 $ kubectl -n luffy scale deployment m ...

  4. Kubernetes 笔记 11 Pod 扩容与缩容 双十一前后的忙碌

    本文首发于我的公众号 Linux云计算网络(id: cloud_dev),专注于干货分享,号内有 10T 书籍和视频资源,后台回复「1024」即可领取,欢迎大家关注,二维码文末可以扫. Hi,大家好, ...

  5. 023.掌握Pod-Pod扩容和缩容

    一 Pod的扩容和缩容 Kubernetes对Pod的扩缩容操作提供了手动和自动两种模式,手动模式通过执行kubectl scale命令或通过RESTful API对一个Deployment/RC进行 ...

  6. kubernetes中有状态应用的优雅缩容

    将有状态的应用程序部署到Kubernetes是棘手的. StatefulSet使它变得容易得多,但是它们仍然不能解决所有问题.最大的挑战之一是如何缩小StatefulSet而不将数据留在断开连接的Pe ...

  7. 构建Docker平台【第四篇】创建服务及扩缩容等操作

    第一步:创建服务 1. 配置 nginx 的 yaml 文件 apiVersion: extensions/v1beta1 kind: Deployment metadata: name: my-ng ...

  8. Kubernetes 笔记 012 Pod 的自动扩容与缩容

    本文首发于我的公众号 Linux云计算网络(id: cloud_dev),专注于干货分享,号内有 10T 书籍和视频资源,后台回复「1024」即可领取,欢迎大家关注,二维码文末可以扫. Hi,大家好, ...

  9. Kubernetes---Pod的扩容和缩容

    用RC的Scale机制来实现Pod的扩容和缩容 把redis-slave的pod扩展到3个  ,  kubectl scale rc redis-slave --replicas=3 现在来缩容,把 ...

随机推荐

  1. TCP | 你真的懂 HTTP 吗?

    前言 Hello 大家好,我是 Sam Zhang. HTTP 相信是每个 Web 开发者都耳熟能详的名词了.但是,新手开发者想要完全理解 HTTP 协议却需要时间.这期视频,我就来带大家入门 HTT ...

  2. vscode中使用git

    vscode中使用git 使用vscode打开git的文件时,会自动的跟踪文件的改动, 如果要提交修改,首先点击+,这个相当于git add, 这样会暂时保存,然后点击上面的√,然后在输入栏中输入修改 ...

  3. Linux-Centos7学习笔记

    镜像下载.域名解析.时间同步请点击阿里云开源镜像站 下载.安装与配置 下载 下载Centos镜像,网站见参考 点击大的版本,例如7,再选择isos进行下载 安装 这里使用的VMware 12 Pro, ...

  4. [SPDK/NVMe存储技术分析]011 - 内核态ib_post_send()源码剖析

    OFA定义了一组标准的Verbs,并在用户态提供了一个标准库libibverbs.例如将一个工作请求(WR)放置到发送队列的Verb API是ibv_post_send(), 但是在Linux内核,对 ...

  5. sql中数据统计

    今天来说一下使用sql统计数据. 用的H2数据库,用的是DBeaver连接工具.有三表,打印表PRINT_JOB,复印表COPY_JOB和扫描表SCANNER_JOB (这段可以忽略)任务是要统计相同 ...

  6. switch 是否能作用在byte 上,是否能作用在long 上,是否能作用在String上?

    答:在Java 5以前,switch(expr)中,expr只能是byte.short.char.int.从Java 5开始,Java中引入了枚举类型,expr也可以是enum类型,从Java 7开始 ...

  7. django关闭DEBUG,无法加载静态文件

    环境是:Python3.7 Django2.2 出现的问题根本原因是:当我们在开发django应用时如果设置了 DEBUG = True,那么django便会自动帮我们对静态文件进行路由:但是当我们设 ...

  8. Python - Pycharm常用快捷键

    1. 自动格式调整: pycharm有自动调整代码格式的快捷键,默认为Alt+Ctrl+L 2. 选中相同字符: 快捷键组合:Ctrl + Shift + Alt + J 3.批量缩进: 选择代码区域 ...

  9. (stm32学习总结)—LCD—液晶显示

    显示器简介 显示器属于计算机的 I/O 设备,即输入输出设备.它是一种将特定电子信息输出到屏幕上再反射到人眼的显示工具.常见的有 CRT 显示器.液晶显示器.LED 点阵显示器及OLED 显示器 本章 ...

  10. matlab中fmincon函数求解非线性规划问题

    Matlab求解非线性规划,fmincon函数的用法总结 1.简介 在matlab中,fmincon函数可以求解带约束的非线性多变量函数(Constrained nonlinear multivari ...