k8s-重启Pod方法

kubectl 没有 restart pod 这个命令,主要是由于在 k8s 中pod 的管理属于rs 等控制器,并不需要手动维护,但有时更新了yaml文件后,期望破都能够”重启”重新加载yaml文件,比如修改了configmap 的配置文件后,希望重启pod 加载配置,此时就需要 “重启” Pod。而”重启”准确地来说是重建pod,但给用户的感觉是重启。

方法一:kubectl rollout restart

上述命令会重建这个deployment下的 pod,和滚动升级类似,不会一次性杀死Pod,比较平滑。

kubectl rollout restart deployment <deployment_name> -n <namespace>

方法二:kubectl scale

此方法存在风险,不建议使用。其流程是先将副本调成 0,然后再改回目的副本数,会中断服务。

kubectl scale deployment <deployment name> -n <namespace> --replicas=0
kubectl scale deployment <deployment name> -n <namespace> --replicas=10

方法三:kubectl delete pod

删除pod重建,单不建议并行删除全部pod,建议一个一个串行删除,至少保留一个pod可用,常用于删除一个pod(多pod情况下)。

kubectl delete pod <pod_name> -n <namespace>

方法四:kubectl replace

通过更新Pod ,从触发k8s pod 的更新。

kubectl get pod <pod_name> -n <namespace> -o yaml | kubectl replace --force -f -

方法五:kubectl set env

通过 设置环境变量,其实也是更新pod spec 从而触发滚动升级。

kubectl set env deployment <deployment name> -n <namespace> DEPLOY_DATE="$(date)"

通过API 更新pod spec 后也会触发滚动升级 。

方法六:kill 1

在容器里面 kill 1 号进程,但是有个局限,必须要求1 号进程要 捕获 TERM 信号,否则在容器里面是杀不死1号进程的。

kubec`tl exec -it <pod_name> -c <container_name> --/bin/sh -c "kill 1"

查看k8s证书时间及可信IP

openssl x509 -in apiserver.crt -noout -enddate
opnessl x509 -in apiserver.crt -noout -text

# 找到证书的CERTIFICATE文件
openssl x509 -in ca.crt -noout -dates
notBefore=Apr 19 07:45:42 2020 GMT   # 证书颁发时间
notAfter=Apr 17 07:45:42 2030 GMT    # 证书失效时间
补充:

生成证书
$ openssl genrsa -out ca.key 4096 
$ openssl req -new -x509 -days 7304 -key ca.key -out ca.crt
openssl genrsa -out server.key 1024
openssl req -new -key server.key -out server.csr
openssl x509 -req -in server.csr -out server.crt -signkey server.key -days 3650

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/9786

(0)
郭靖的头像郭靖
上一篇 2023年10月8日 下午5:20
下一篇 2023年10月10日 下午9:22

相关推荐

  • Centos7下FTP安装与配置

    一、前述 企业中linux搭建ftp服务器还是很实用的,所以本文基于Centos7搭建服务器教程做个总结。 FTP协议占用两个端口号: 21端口:命令控制,用于接收客户端执行的FTP命令。 20端口:数据传输,用于上传、下载文件数据。 二、服务端安装 1.安装vsftpd yum -y install vsftpd 2.配置vsftp vim /etc/vs…

    2022年6月15日
    1.4K00
  • cobbler搭建

    什么是cobbler Cobbler是一个Linux系统安装的服务,可以通过网络启动(PXE)的方式来快速安装、重装物理服务器和虚拟机,同时还可以管理DHCP,DNS等。 Cobbler可以使用命令行方式管理,也提供了基于Web的界面管理工具(cobbler-web),还提供了API接口,可以方便二次开发使用。 Cobbler是较早前的kickstart的升…

    2022年11月26日
    1.2K00
  • Pmail——仅用一分钟就可以搭建好一个邮箱服务器

    有一个自己的邮箱,是不是光想着就觉得很酷。在之前,我介绍过一个邮箱poste.io 的搭建过程。虽然说是用docker但是其实搭建起来还是挺麻烦的。今天再来介绍一个搭建简单的邮局系统 pmail。 项目的优势: 1、部署简单 2、资源占用极小 编译后二进制文件仅15MB,运行过程中占用内存10M以内。 3、安全方面 支持dkim、spf校验。正确配置的情况下…

    2024年7月2日
    3.3K00
  • Linux如何调整Swap空间大小

    查看当前Swap文件位置以及大小 要查看当前正在使用的swap文件或分区的位置,您可以使用swapon命令。 执行以下命令: 这将显示所有活动的swap空间,包括其类型(例如文件或分区)、大小、使用情况和位置。 如果您只对文件路径或分区路径感兴趣,您可以通过/proc/swaps文件查看相同的信息: 这将列出系统上所有的swap空间,包括它们的位置。 设置一…

    2023年11月6日
    1.1K00
  • MySQL 如何使用离线模式维护服务器

    离线模式 作为 DBA,最常见的任务之一就是批量处理 MySQL 服务的启停或其他一些活动。在停止 MySQL 服务前,我们可能需要检查是否有活动连接;如果有,我们可能需要把它们全部杀死。通常,我们使用 pt-kill 杀死应用连接或使用 SELECT 语句查询准备杀死语句。例如: MySQL 有一个名为 offline_mode 的变量…

    2023年10月20日
    1.0K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信