kubectl scale 一次缩容调整过程
查看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 一次缩容调整过程的更多相关文章
- k8s用kubectl管理应用升级,服务发布与回滚,扩缩容
应用升级 Kubectl set image --help 有案例指定新版本 [root@k8s-master ~]# kubectl set image deployment/nginx nginx ...
- Docker Swarm(七)Scale 扩(缩)容服务
扩(缩)容服务 扩容服务 Service还提供了复制(类似kubernetes里的副本)功能.可以通过 docker service scale 命令来设置服务中容器的副本数: docker serv ...
- 三十三、HPA实现自动扩缩容
通过HPA实现业务应用的动态扩缩容 HPA控制器介绍 当系统资源过高的时候,我们可以使用如下命令来实现 Pod 的扩缩容功能 $ kubectl -n luffy scale deployment m ...
- Kubernetes 笔记 11 Pod 扩容与缩容 双十一前后的忙碌
本文首发于我的公众号 Linux云计算网络(id: cloud_dev),专注于干货分享,号内有 10T 书籍和视频资源,后台回复「1024」即可领取,欢迎大家关注,二维码文末可以扫. Hi,大家好, ...
- 023.掌握Pod-Pod扩容和缩容
一 Pod的扩容和缩容 Kubernetes对Pod的扩缩容操作提供了手动和自动两种模式,手动模式通过执行kubectl scale命令或通过RESTful API对一个Deployment/RC进行 ...
- kubernetes中有状态应用的优雅缩容
将有状态的应用程序部署到Kubernetes是棘手的. StatefulSet使它变得容易得多,但是它们仍然不能解决所有问题.最大的挑战之一是如何缩小StatefulSet而不将数据留在断开连接的Pe ...
- 构建Docker平台【第四篇】创建服务及扩缩容等操作
第一步:创建服务 1. 配置 nginx 的 yaml 文件 apiVersion: extensions/v1beta1 kind: Deployment metadata: name: my-ng ...
- Kubernetes 笔记 012 Pod 的自动扩容与缩容
本文首发于我的公众号 Linux云计算网络(id: cloud_dev),专注于干货分享,号内有 10T 书籍和视频资源,后台回复「1024」即可领取,欢迎大家关注,二维码文末可以扫. Hi,大家好, ...
- Kubernetes---Pod的扩容和缩容
用RC的Scale机制来实现Pod的扩容和缩容 把redis-slave的pod扩展到3个 , kubectl scale rc redis-slave --replicas=3 现在来缩容,把 ...
随机推荐
- Airtest安装与简介
一:简介 什么是Airtest 网易的airtest其实是个测试套件,由Airtest框架.poco框架.airtestIDE 组成. Airtest框架 基于图像识别的自动化测试框架,是网易自己团队 ...
- 面试官:Redis集群有哪些方式,Leader选举又是什么原理呢?
哈喽!大家好,我是小奇,一位不靠谱的程序员 小奇打算以轻松幽默的对话方式来分享一些技术,如果你觉得通过小奇的文章学到了东西,那就给小奇一个赞吧 文章持续更新 一.前言 作为一名Java程序员,Redi ...
- RandomStringUtils 生成随机字符串
代码: System.out.println(RandomStringUtils.randomAlphanumeric(32));System.out.println(RandomStringUtil ...
- 创建一个 20G 的分区,并格式化为 ext4 文件系统
创建一个 20G 的分区,并格式化为 ext4 文件系统,并完成如下要求: (1)block 大小为 2048,预留空间 20%,卷标为 MYDATA #fdisk /dev/sdb -->n ...
- Fiddler——抓取https接口配置(web,安卓,ios)
作为一名合格的测试怎么能不会抓包呢. 抓包适用场景: 测试某个功能时,出现了bug,这时我们便需要抓包看一下这个bug到底是前端的还是服务端的: bug的精准指向,能加速bug得以解决. ...
- 浅析Java反射--Java
前言 上篇文章我们提到了可以使用反射机制破解单例模式.这篇文章我们就来谈一谈什么是反射,反射有什么用,怎么用,怎么实现反射. 概述 Java的反射(reflection)机制:是指在程序的运行状态中, ...
- 【死磕NIO】— 探索 SocketChannel 的核心原理
大家好,我是大明哥,一个专注于[死磕 Java]系列创作的程序员. [死磕 Java ]系列为作者「chenssy」 倾情打造的 Java 系列文章,深入分析 Java 相关技术核心原理及源码. 死磕 ...
- VUE开发--环境配置(一)(转)
无剑_君关注 0.312019.05.09 11:53:43字数 1,073阅读 19,627 https://www.jianshu.com/p/a494417def99?utm_so ...
- 在 java 中 wait 和 sleep 方法的不同?
最大的不同是在等待时 wait 会释放锁,而 sleep 一直持有锁.Wait 通常被用于线 程间交互,sleep 通常被用于暂停执行. 直接了解的深入一点吧: 在 Java 中线程的状态一共被分成 ...
- MySQL使用日期列作为UNIQUE索引
https://dev.mysql.com/doc/refman/8.0/en/date-and-time-functions.html#function_extract https://dev.my ...