将字符串进行压缩后保存该如何做?
发表于|更新于
|浏览量:
如何将zip文件挂载到容器Pod中呢?
Prometheus operator中看到的一个特殊玩法。它将prometheus.yml进行压缩成.gz后再保存到secret中。可参考它来实现对数据的压缩与加密。
具体的操作如下:
1 | $ echo "abc" | gzip | base64 |
解密操作:
1 | $ echo "H4sIAAAAAAAAA0tMSuYCAE6BiEcEAAAA" | base64 -d | gunzip |
大家可以尝试下。另外需要注意的是,将该数据挂载到POD的文件中,文件是压缩后的gz文件。
文章作者: Michael Pan
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Michael Blog!
相关推荐

2024-10-15
Vault常见操作
Hashicorp Vault 是一个基于身份的秘密和加密管理系统,用于严格控制访问各种机密数据,如 API 加密密钥、密码和证书。以下是 Vault 的一些常见使用操作。 Login12$ export VAULT_ADDR='http://your-vault-address:8200'$ export VAULT_TOKEN='your-vault-token' Secret操作 secret引擎KV Pathregion/cluster/project/application Keydevops-api fieldk-name valuek-value 查看权限 1$ vault token lookup 新建kv 12345$ vault secrets enable \ -path=/git-av \ -description "k/v engine for the quickstart guide" \ -version=1 \ kv 查...
2020-05-20
持续交付发布可靠软件的系统方法(基础篇)第一章:软件交付的问题
《持续交付发布可靠软件的系统方法》读书笔记 软件构成部分:可执行的代码、配置信息、运行环境、数据 不同环境下只进行一次编译 对环境的任何修改都应该作为配置信息管理,配置信息的更改都需要经过测试 如果运行环境需要修改,则修改后的环境也需要进行测试。环境包括:操作系统配置、应用程序依赖的软件集、网络配置及任何基础设置、外部系统 数据结构发生变化,同样需要经过测试 反馈流程:指完全以自动化的方式尽可能地测试每一次变更 创建可执行代码的流程 单元测试 质量检测:测试覆盖率以及其他与技术相关的度量项 功能测试验收 性能、有效性、安全性等非功能测试 探索性测试,给客户/最终应用演示 自动化测试反馈【commit阶段】 运行速度快 尽可能全面,75%代码库覆盖率 环境中立,相对生产环境简单廉价 如果出现问题,绝不发布【commit之后测试】 运行速度慢一些,适合并行执行 即使有些测试问题,也可以发布应用程序 运行环境尽可能与生产相同 不同版本、不同环境的配置放在版本控制中 开发人员都拥有自己的专属开发环境 无论部署在什么目标环境都应采用同一种部署方法 开发环境是特例,可以有多...

2020-05-20
《凤凰项目—一个IT运维的传奇故事》整理
###《凤凰项目》三位作者 Gene Kim: Tripwire有限公司创始人,一直热衷于研究如何提高IT组织的效率 Kevin Behr:创建了信息技术流程研究院 George Spafford:行业分析师 向他们致敬。 故事内容雨前龙井整理的非常详细,可阅读它写的博客 凤凰项目 http://ijyun.github.io/2016/04/23/phoenix-project.html 书中的核心概念 三步工作法 本书中阐述了一个原理:所有开发运维模式都来自“三步工作法”,可以说它是我们平台开发运维的指导思想。 第一工作法是关于从开发到技术运营,再到客户的整个自左向右的工作流。为了使流量最大化,我们需要小的批量规模和工作间隔,绝不让缺陷流向下游工作中心,并且不断为了整体目标(相对于开发功能完成率、测试发现/修复比例或运维有效性等局部目标)进行优化。流程自动化 实践:持续构建、持续集成、持续部署,按需创建环境、限制半成品,构建起能够顺利变更的安全系统和组织。 第二工作法是关于价值流各阶段自右向左的快速持续反馈流,放大其效益以确保防止问题再次发生,或者更快地...

2022-05-20
Windows-WSL2开发环境,一点不逊色于Mac
一直使用Mac来做开发,但没想到现在Windows也这么好用。通过WSL,拥有了Windows酣畅的操作特性,又有了Linux的兼容性。作为开发环境一点不逊色于Mac,甚至更易使用。下面就操练起来吧。 WSL21. 安装控制面板 -> 程序和功能 -> 启用和关闭windows 功能, 勾选如下功能: - 适用于Linux的Windows子系统 - 虚拟机平台 确定。 2. 升级WSLhttps://docs.microsoft.com/en-us/windows/wsl/install-manual#step-4---download-the-linux-kernel-update-package下载 Linux 内核更新包 WSL2 Linux kernel update package for x64 machines,并安装。 设置wsl默认版本为 `2`, PowerShell 1wsl --set-default-version 2 升级已安装的分发,可使用wsl --set-version, PowerShell 1wsl --set...

2020-05-23
Vagrant扩展虚拟机盘
扩展虚拟机盘123456789101112131415161718# 停止虚拟机vagrant halt <machine_name># 进入VirtualBox VMs目录,查看并记录原磁盘uuid,留作后用vboxmanage showhdinfo box-disk1.vmdk# 克隆磁盘,vmdk格式无法调整大小,需要转成vdi格式vboxmanage clonehd box-disk1.vmdk new-virtualdisk.vdi --format vdi# 调整克隆磁盘的大小,这里调整为400Gvboxmanage modifyhd new-virtualdisk.vdi --resize 409600# 在克隆磁盘的基础上再克隆vdi格式的磁盘vboxmanage clonehd new-virtualdisk.vdi resized.vmdk --format vmdk# 覆盖原磁盘(如果担心磁盘数据出现不可逆损坏,请先做好备份)mv resized.vmdk box-disk1.vmdk# 此时节已删除中间文件rm new-virtualdisk....
2020-05-20
持续交付发布可靠软件的系统方法(部署流水线)第六章:构建与部署的脚本化
《持续交付发布可靠软件的系统方法》读书笔记 ##构建工具概览 Make Ant NAnt与MSBuild Maven Rake Buildr Psake 构建部署脚本化的原则与实践 为部署流水线的每个阶段创建脚本 使用恰当的技术部署应用程序 使用同样的脚本向所有环境部署 使用操作系统自带的包管理工具 确保部署流程是幂等的 部署系统的增量式演进 部署脚本化 多层的部署和测试 层 配置 应用/服务/组件 应用配置 中间件 中间件配置 操作系统 操作系统配置 硬件 硬件 测试环境配置 部署前对基础设施做标准冒烟测试,如果发现问题,就让环境配置流程快速失败,并给出测试结果 确认能从数据库中拿到一条记录 确认能连上网站 断言消息代理中的已注册的消息集合是正确的 透过防火墙发送ping,证明线路通畅 推荐策略 总是使用相对路径 消除手工步骤 从二进制包到版本控制库的内建可追溯性二进制包记录版本信息,如Java应用可以在MANIFEST中包含元数据,另外可以将构建流程生成的每个二进制包的MD5值及名字和版本标识符一起放在数据库中 不要把二进制包作为构建的...
