将字符串进行压缩后保存该如何做?
发表于|更新于
|浏览量:
如何将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!
相关推荐
2020-05-20
持续交付发布可靠软件的系统方法(交付生态圈)第十四章:版本控制进阶
《持续交付发布可靠软件的系统方法》读书笔记 版本控制用来维护应用程序每次修改的完整历史,包括源代码、文档、数据库定义、构建脚本和测试等。团队可以在一个代码版本控制库上一起开发应用程序的不同部分。一旦团队人数超过一定数量,就需要规划版本控制库的使用,让开发更加高效。 分支与合并分支,即为选择的基线创建一个副本,该副本与原基线相互独立,开发者能在两个工作流上同时开发。团队为什么使用分支? 物理上:系统物理配置而分支,即为文件、组件和子系统而分支 功能上【最常见】:系统功能配置而分支,即为特性、逻辑修改、缺陷修复和功能增加,以及其他可交付的功能而分支 环境上:系统运行环境而分支,即由构建平台和运行时平台的不同而分支 组织上:团队的工作量而分支,即为活动/任务、子项目、角色和群组而分支 流程上:团队的工作行为而分支,支持不同规章政策、流程和状态而分支 在开发中,经常会遇到分支合并的情况,除非那些为了发布或者技术预研而创建的分支。两次合并时间间隔越长,每个分支上工作的人越多,合并发生冲突的可能性就越大。以下两种方法来减小冲突: 创建更多的分支来减少在每个分支上的修改。这只是...

2025-06-09
Mac配置Windows键盘与鼠标:让你的Mac体验更像Windows
背景为什么需要这样的配置?Mac 电脑的鼠标滚轮方向、键盘快捷键以及操作逻辑与Windows系统存在显著差异。对于长期使用Windows系统的用户来说,突然转换到Mac可能会遇到以下问题: 鼠标滚轮方向相反:Mac的”自然滚动”与Windows相反 Alt+Tab切换逻辑不同:Mac的Command+Tab与Windows的Alt+Tab行为差异很大 剪贴板功能缺失:Mac缺少类似Windows的剪贴板历史功能 修饰键位置不同:Command、Option、Control键的位置和功能与Windows的Ctrl、Alt键不同 通过合理的软件配置和系统设置,我们可以让Mac的使用体验更接近Windows,减少学习成本,提高工作效率。 核心软件解决方案1. Scroll Reverser - 解决鼠标滚轮方向问题软件介绍Scroll Reverser 是一款免费的开源软件,专门用于调整Mac的滚轮滚动方向。 主要功能 独立控制鼠标和触控板的滚动方向 支持水平和垂直滚动的独立设置 可以针对不同应用程序设置不同的滚动行为 菜单栏快速切换功能 详细配置步骤 下载安装:访问官网下载最新...
2020-05-20
WSL2-+-microK8s-+-K8s
Windowns 10 (WSL2) + Ubuntu 20.04 enable systemd snapd microk8s 启动systemd,并使用snap安装 123$ sudo apt install daemonize$ sudo daemonize /usr/bin/unshare --fork --pid --mount-proc /lib/systemd/systemd --system-unit=basic.target$ sudo nsenter -t $(pidof systemd) -a su - $LOGNAME 安装microk8s 12$ snap info microk8s$ sudo snap install microk8s --classic 使用microk8s 123$ microk8s status$ sudo usermod -a -G microk8s mpan$ sudo chown -f -R mpan ~/.kube 添加节点 1$ microk8s add-node 注意 每次使用micr...

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
系统性能测试与监测工具汇总
综合能力性能测试(Unixbench)1[root@localhost] $ ./Run 计算查看当前CPU负载(uptime)1[root@localhost] $ uptime 测试单cpu计算能力(bc)1[root@localhost] $ time echo "scale=5000;4*a(1)" | bc -l -q 内存查看当前内存使用的情况的状态(free)1[root@localhost] $ free -m 进程对内存的占用情况(pmap) 1[root@localhost] $ pmap -d 35713 # 查看进程35713占用内存的情况 磁盘磁盘IO测试(dd)测试磁盘的IO写速度 1# time dd if=/dev/zero of=test.dbf bs=8k count=300000 oflag=direct 测试磁盘的IO读速度 1# dd if=test.dbf bs=8k count=300000 of=/dev/null 表示每次写入/读取8k的数据,执行300000次 实时查看各磁盘的io(iostat)...
2020-05-20
持续交付发布可靠软件的系统方法(交付生态圈)第十二章:数据管理
《持续交付发布可靠软件的系统方法》读书笔记 应用程序可以通过删除前一个版本,使用新版本替换旧版本的方式部署,但是大多数系统,数据无法使用这种方式进行变更,一旦某个系统发布到了生产环境中,关联的数据将不断增加。数据往往是系统中最有价值的部分。当我们需要对数据系统进行结构修改或者内容修改时,就需要相关的策略。对数据的修改是不可避免的,关键在于将数据迁移过程自动化。目前有一些工具对数据迁移提供了较多支持,它们还允许对数据库进行版本化管理。另一个重要部分是测试数据的管理。 数据库脚本化任何数据库的修改都应该通过自动化过程来管理。包括数据库的初始化,数据库所有的迁移都需要脚本化,并将脚本提交到版本控制库中。几乎所有的数据管理系统都支持通过自动化脚本进行数据存储的初始化工作。 清除原有的数据库 创建数据库结构、数据弯路实例以及模式等 向数据库加载数据 在大多数据项目中,数据库的使用要复杂得多。 增量式修改绝大多数据系统,对数据库更新时,要保留它们的数据。由于在部署时需要保留数据库中的已有数据,所以需要有回滚策略,以便部署失败时使用。这就需要对数据库进行版本控制。 在数据库中创建一个数据...
