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 现在来缩容,把 ...
随机推荐
- CF1428B题解
打比赛的时候sb了,用了一个似乎原本可以不用的东西来找环... 首先,根据题意,我们可以连成一张图,而蛇能不能回到自己的家, 只需要在一个环上就行了. 问题是怎么找环,我用了 Tarjan... 具体 ...
- 拉普拉斯特征映射(Laplacian Eigenmaps)
1 介绍 拉普拉斯特征映射(Laplacian Eigenmaps)是一种不太常见的降维算法,它看问题的角度和常见的降维算法不太相同,是从局部的角度去构建数据之间的关系.也许这样讲有些抽象,具体来讲, ...
- python爬虫-使用线程池与使用协程的实例
背景:爬取豆瓣电影top250的信息 使用线程池 import re from concurrent.futures import ThreadPoolExecutor import requests ...
- 更新或添加properties文件(保留存在的properties文件的原有格式)
转载: https://www.cnblogs.com/wangzhisdu/p/7815549.html import java.io.BufferedWriter; import java.io. ...
- CVE-2012-1823(PHP-CGI远程代码执行)
基于vulhub漏洞环境: 安装vulhub漏洞环境 https://blog.csdn.net/qq_36374896/article/details/84102101 CGI模式下的参数: -c ...
- sublime settings
{ "font_face": "Monaco", // 编辑器的字体 "font_size": 13, // 字号 "highli ...
- NET程序的代码混淆、加壳与脱壳
通常我们通过代码混淆.加密的形式达到软件保护的目的.在Web开发里我们接触过的可能就是JS代码加密了,可以通过对JS代码进行混淆.加密从而实现对核心JS代码的保护.如果没有接触过的可以在这里简单了解一 ...
- luoguP5319 [BJOI2019]奥术神杖(分数规划,AC自动机DP)
luoguP5319 [BJOI2019]奥术神杖(分数规划,AC自动机DP) Luogu 题解时间 难点在于式子转化,设有c个满足的子串,即求最大的 $ ans = \sqrt[c]{\prod_{ ...
- C++11移动语义之一(基本概念)
摘要 移动语义是C++11的新特性之一,利用移动语义可以实现对象的移动而非拷贝.在某些情况下,可以大幅度的提升性能.本文将介绍C++11移动语义中的一些基本概念. 表达式 表达式是由一个或者多个运算对 ...
- MybatisPlus 多租户的常见问题
mybatis plus :https://mp.baomidou.com/guide/interceptor-tenant-line.html 如果最终执行的sql出现select查询没有租户ID, ...