摘要:
今天在发布 EnyimMemcachedCore 的一个预览版 nuget 包时遇到的问题,在这篇博文中记录一下。当时发布的版本是 2.6.0-preview1,发布后在一个项目中将 EnyimMemcachedCore 升级到这个版本,运行时报错 阅读全文
摘要:
最近在学习 angular,记录一下昨天的进展,解决的问题是通过 theme 的配置修改 mat-toolbar 的背景色,避免对色彩的硬编码。首先通过 mat-toolbar (以下统一称为 toolbar)的实现源代码 _toolbar-theme.scss 得知背景色来自 theme 中 background palette 的 app-bar。 阅读全文
摘要:
分享一下我们在 ASP.NET Core 单页应用(前端用的是 Angular)中使用的配置代码:`UseProxyToSpaDevelopmentServer` 用于 Development 环境,需要自己另外启动前端开发服务器,比如 ng serve 命令;* `UseSpaStaticFiles` 用于配置用户针对 SPA 前端文件的 StaticFileMiddleware 阅读全文
摘要:
这两天在开发中的一个功能需要用到定时任务,正好最近准备更多使用 dapr,于是想到这个经常重复编写的代码看是否可以让 dapr 代劳,了解之后发现可以通过 cron binding 实现,动手之后轻松搞定,写博文记录一下 阅读全文
摘要:
使用下面的命令将 kube-master1 作为 control-plane 加入 k8s 集群,加入 etcd 集群时卡住,在 /var/log/containers 中发现 etcd 的错误日志,从日志看是请求 `https://10.0.9.171:2380/members` 时,10.0.9.171 返回的证书不对。 阅读全文
摘要:
昨天在一个高可用集群中添加一台 control-plane 时造成 etcd 无法启动,引发集群故障,在这篇博文中记录一下故障处理过程。Kubernetes 版本是 1.24,加入前集群中只有1台 control-plane,主机名是 kube-master0,待加入的 control-plane 主机名是 kube-master1。 阅读全文
摘要:
之前网络组件用的是 calico,本来想基于 calico 启用 eBPF,但折腾多次没有成功,详见博文`Kubernetes 集群尝试基于 Calico 启用 eBPF](https://www.cnblogs.com/dudu/p/16266354.html`,于是改用 cilium,轻松搞定,这边博文简单记录一下安装步骤。 阅读全文
摘要:
之前基于 Kubernetes 1.23.5 + calico 3.22 尝试过,但没有成功,遇到的问题详见 `K8s 网络切换到 Calico eBPF 后 service node port 与 ingress nginx 不能正常工作`,现在基于 Kubernetes 1.24 + calico 3.23 再次尝试启用 eBPF 阅读全文
摘要:
Kubernetes 1.24 于 2022 年 5 月 3 日正式发布(详见 [Kubernetes 1.24: Stargazer](https://kubernetes.io/blog/2022/05/03/kubernetes-1-24-release-announcement/)),1.24 版本的一个重大变化是从 kubelet 中移除了 dockershim,因此我们将 container runtime 从 docker 切换至 containerd,从而给升级过程中制造了不小的麻烦。 阅读全文
摘要:
刚开始测试 dapr 时为了图省事,使用了 pubsub.redis,现在准备上生产环境,改用支持消息支持化的 pubsub.rabbitmq。用 helm 安装 rabbitmq,使用 chart 的是 bitnami/rabbitmq。需要注意的是 host 参数部分,`user:password` 是连接 rabbitmq 的用户名与密码, 用 bitnami/rabbitmq chart 创建的 rabbitmq 默认用户名就是 `user`,密码在 secret 中 阅读全文
摘要:
最近我们在 kubernetes 集群上部署 rabbitmq 时遇到一个场景,需要将 rabbitmq 使用的 persistent volume 从阿里云性能型 nas 切换为极速型 nas,因为只有极速型 nas 才支持快照与备份功能。Persistent volume 是基于 kubernets dynamic volume provisioning 创建的,这篇博文分享一下我们的操作步骤。 阅读全文
摘要:
我们决定从这周开始在实际开发中使用 dapr,先在 pub/sub 场景使用。这篇博文记录一下在 kubernetes 集群中基于 ASP.NET Core 使用 dapr 发送/订阅消息的试验过程。Dapr 环境准备,应用A发送消息,应用B订阅消息,点火试验,待解决问题 阅读全文
摘要:
接着运行 dapr init ,报错:"docker: no matching manifest for windows/amd64 10.0.17763 in the manifest list entries." 查找资料后得知 docker engine 默认是 Windows container 模式,解决上面的错误需要切换到 Linux container 模式,这时才注意到安装 dapr 时的提示。 阅读全文
摘要:
准备将园子的部分图片站切换到华为云 CDN,切换前需要解决 CDN 缓存刷新问题。华为云 CDN 帮助文档列出的 SDK 中没有 .NET 版,原以为华为云没有提供官方 .NET SDK,于是在博问上提问看有没有非官方的 .NET SDK,
在园友的回答中惊喜地知道,原来华为云已经提供官方 .NET SDK 阅读全文
摘要:
将 k8s 从 1.17.0 升级到 1.22.3 之后部署 ingress 时报错,原来从 1.19 开始 ingress api 版本变成了 `networking.k8s.io/v1`,改为 `networking.k8s.io/v1` 后出现新的报错,我们添加的 ingress 规则多数是基于域名的,而 v1 版必须要指定 `path` 与 `pathType` 阅读全文
摘要:
今天在一个合作项目对接中遇到了不同技术平台的 AES 加解密问题,我们用的是 C#,合作方用的是 PHP,我们要把 AES 加密的密文传给合作方用 PHP 进行解密。在这篇随笔中记录一下今天下午折腾的小成果。 阅读全文
摘要:
经过实际验证的修改 master IP 地址的操作步骤,千真万确,错一罚十,kubernetes 版本是 v1.20.2。折腾过程中所走的弯路是有4个ssl证书(apiserver, apiserver-kubelet-client, front-proxy-client)没有重新生成,造成修改 IP 后 kubectl 命令是可以正常执行但 master 总是处于 NotReady 状态。 阅读全文
摘要:
今天写代码时遇到一个奇怪的问题,下面的代码 Console.WriteLine("pattern1: " + pattern); if (pattern == "测试1") { pattern = "测试2"; } Console.WriteLine("pattern2: " + pattern); 阅读全文
摘要:
CRD(Custom Resource Definition) 是 kubernetes 强大扩展能力的一处体现,联系到编程场景,CRD 相当于是类(class),custom resource 相当于是对象或者实例,通过 CRD 可以创建自己定义的资源类型,api server 会直接支持,可以通过 kubectl 命令创建对应的资源并对资源进行删/查/改的操作 阅读全文
摘要:
拿到集群 api server 地址,拿到集群 ca 证书,创建具有集群管理权限的 ServiceAccount 并拿到其 token,配置 kubectl,设置之前拿到的 api server 地址与 ca 证书,设置连接集群的 ServiceAccount 的 token,设置 context,设置默认 context,用配置好的 kubectl 开船 阅读全文