博客「装修」小记
有段时间没有更新文章了,打开网站忽然就有了换个主题的念头,当时选择 White-Paper 是因为考虑到它足够简单,毕竟「less is more」,但是在使用过程中发现它对中文的支持有些水土不服,总结来看主要存在以下问题: h2,h3,h4 标题以及正文的中文大小显示差强人意 正文中列表显示效果差 正文中代码部分显示字体过小,且不提供粘贴按钮 文章的标签归档需要手动执行...
有段时间没有更新文章了,打开网站忽然就有了换个主题的念头,当时选择 White-Paper 是因为考虑到它足够简单,毕竟「less is more」,但是在使用过程中发现它对中文的支持有些水土不服,总结来看主要存在以下问题: h2,h3,h4 标题以及正文的中文大小显示差强人意 正文中列表显示效果差 正文中代码部分显示字体过小,且不提供粘贴按钮 文章的标签归档需要手动执行...
本文记录 tanzu community 版本在 vSphere7 环境的安装部署以及功能测试。 环境信息 因为资源受限,本文将在一台物理服务器上部署所有 TKG(Tanzu Kubernetes Grid)环境。 cpu: 8核 内存: 40G 硬盘: 500G 网卡: 千兆网卡 enp0s31f6 系统: Ubuntu 20.04 LTS 通过 kvm 创建 ESXi 虚...
云原生(cloud native)应用其中有一条就是能够快速迭代,应用不断升级过程中不可避免就是启停操作,删除旧版本,更新新版本,如果应用是部署在 kubernetes 上面的,那么 update deployment 过程中 kubelet 会发送 SIGTERM 信号给容器 PID 1 的进程,做为应用程序应当捕获这个信号,可以在真正退出之前做一些清理工作,例如通知注册中心自己已消亡。 ...
命令行解析几乎是所有程序的标准功能,go 语言标准库中提供了 flag 模块,而 kubernetes 中则使用了 pflag 和 cobra 来构建。 flag 标准库 flag 包内置了常用的几种参数类型:string,int,bool,time.Duration,如果需要自定义类型,例如以 , 分割的字符串数组,就需要实现 flag.Value 接口。 基本类型 基本的使用方法...
开始新项目之前我总是会习惯先设计好日志模块,这样可以避免在开发过程中代码行中充斥着大量且临时的 print 输出语句。kubernetes 的日志模块是 C++ 版本 google/glog 的 Go 语言实现,基本实现了原生 glog 的日志格式,早期版本中是 golang/glog,目前已经迁移到 klog 作为日志库,被替换的原因总结下来有以下几条: glog 默认会在 ini...
写在前面:本系列是在阅读 kubernetes 源码过程中逐渐整理的一些值得借鉴的编程范式(recipe),汇集起来也就有了这个 cookbook,所以内容展示的更多的可能是 code snippet,而不是 How to use Kubernetes。 Kubernetes Project Layout Go 语言社区提供了一套标准的工程目录结构方案,详细参考:https://gith...
本文记录了如何使用 kickstart PXE 批量部署服务器。 安装步骤 1. 配置 dnsmasq yum install dnsmasq /etc/dnsmasq.conf domain=jfbrother.centos7.lan # DNS server=114.114.114.114 #bind-interfaces interface=eth0 # DHCP rang...
最近在做高校大数据实验室项目过程中发现,就场景而言相比较容器老师更容易接受虚拟机的模式,例如想让学生搭个 hadoop 集群,然后在此基础上做实验,就需要有一个直观的网络拓扑让学生理解。kubernetes 只暴露应用入口的设计原则显然不适合。因此,kubernetes on openstack 兴许是个好的解决方案。 openstack 已经发布到 rocky 版本了,各个核心组件已经相...
最近在研究 kubernetes 各个节点间容器通信的原理,深感自己网络知识的不足,从简单的 flannel 开始看起,搜集整理了网上的资料,记录下来。 kubernetes 各节点间网络结构如下图: 实验环境如下: IP 角色 服务 node1 192.1...
最近在尝试使用 ansible 部署 ceph 作为对象存储使用,因为没有部署 openstack,所以只能手动对虚拟机进行快照以及回滚操作了。但是发现 virsh 没有对挂载盘进行 snapshot 相关的操作。只能对虚拟机整机级别的快照回滚。回忆 cinder 对 volume 的快照,取决于后端存储是否支持,例如 ceph 对 rbd 就提供了 snapshot 的操作。这篇文章基于 ...