上一页 1 2 3 4 5 6 7 ··· 86 下一页
摘要: 准备将园子的部分图片站切换到华为云 CDN,切换前需要解决 CDN 缓存刷新问题。华为云 CDN 帮助文档列出的 SDK 中没有 .NET 版,原以为华为云没有提供官方 .NET SDK,于是在博问上提问看有没有非官方的 .NET SDK, 在园友的回答中惊喜地知道,原来华为云已经提供官方 .NET SDK 阅读全文
posted @ 2021-11-15 14:40 dudu 阅读(714) 评论(1) 推荐(2) 编辑
摘要: 将 k8s 从 1.17.0 升级到 1.22.3 之后部署 ingress 时报错,原来从 1.19 开始 ingress api 版本变成了 `networking.k8s.io/v1`,改为 `networking.k8s.io/v1` 后出现新的报错,我们添加的 ingress 规则多数是基于域名的,而 v1 版必须要指定 `path` 与 `pathType` 阅读全文
posted @ 2021-11-13 15:37 dudu 阅读(8703) 评论(0) 推荐(4) 编辑
摘要: 今天在一个合作项目对接中遇到了不同技术平台的 AES 加解密问题,我们用的是 C#,合作方用的是 PHP,我们要把 AES 加密的密文传给合作方用 PHP 进行解密。在这篇随笔中记录一下今天下午折腾的小成果。 阅读全文
posted @ 2021-10-26 18:59 dudu 阅读(1315) 评论(0) 推荐(1) 编辑
摘要: 经过实际验证的修改 master IP 地址的操作步骤,千真万确,错一罚十,kubernetes 版本是 v1.20.2。折腾过程中所走的弯路是有4个ssl证书(apiserver, apiserver-kubelet-client, front-proxy-client)没有重新生成,造成修改 IP 后 kubectl 命令是可以正常执行但 master 总是处于 NotReady 状态。 阅读全文
posted @ 2021-07-17 07:48 dudu 阅读(3044) 评论(1) 推荐(1) 编辑
摘要: 今天写代码时遇到一个奇怪的问题,下面的代码 Console.WriteLine("pattern1: " + pattern); if (pattern == "测试1") { pattern = "测试2"; } Console.WriteLine("pattern2: " + pattern); 阅读全文
posted @ 2021-07-12 19:01 dudu 阅读(310) 评论(0) 推荐(2) 编辑
摘要: CRD(Custom Resource Definition) 是 kubernetes 强大扩展能力的一处体现,联系到编程场景,CRD 相当于是类(class),custom resource 相当于是对象或者实例,通过 CRD 可以创建自己定义的资源类型,api server 会直接支持,可以通过 kubectl 命令创建对应的资源并对资源进行删/查/改的操作 阅读全文
posted @ 2021-03-08 17:22 dudu 阅读(2247) 评论(0) 推荐(3) 编辑
摘要: 拿到集群 api server 地址,拿到集群 ca 证书,创建具有集群管理权限的 ServiceAccount 并拿到其 token,配置 kubectl,设置之前拿到的 api server 地址与 ca 证书,设置连接集群的 ServiceAccount 的 token,设置 context,设置默认 context,用配置好的 kubectl 开船 阅读全文
posted @ 2021-03-05 22:26 dudu 阅读(2006) 评论(0) 推荐(0) 编辑
摘要: 尝试通过远程的一台电脑用 curl 命令连接 k8s 集群,实地体验 k8s 的安全机制。连接集群三要素:1)control plane 地址(api server 地址);2)集群 ca 证书;3)ServiceAccount token(访问 api server 的 access token) 阅读全文
posted @ 2021-03-05 11:58 dudu 阅读(1433) 评论(1) 推荐(0) 编辑
摘要: 问题场景:基于 ASP.NET Core 路由模板(route template)从 url 字符串取值,路由模板是 "/{blogApp}/{postType}/{idOrSlug}.html",需要取值的博文 url 地址实例 https://www.cnblogs.com/cmt/p/14408628.html 。参考 ASP.NET Core 源码中的测试代码 RouteTest.cs#L56,通过 Route.RouteAsync() 方法实现了,RouteTest 中好几处用了 Mock,这里实现时没有使用 Mock。 阅读全文
posted @ 2021-03-01 16:10 dudu 阅读(493) 评论(1) 推荐(0) 编辑
摘要: 园子 open api (api.cnblogs.com) 的授权服务器(authorization server,oauth.cnblogs.com)基于 IdentyServer 实现,而登录则通过单独的登录中心(account.cnblogs.com)完成,这样的场景对 IdentyServer 来说似乎是非典型应用场景,在网上几乎找不到相关的参考资料。IdentyServer 的典型应用场景是授权(authorization)与登录验证(authentication)在同样一个应用中 阅读全文
posted @ 2021-02-15 15:01 dudu 阅读(1562) 评论(1) 推荐(2) 编辑
摘要: 我们有一个前端使用 Angular 的项目,采用 Kubenetes 默认部署方式 rolling updates 发布时,在更新 pod 的阶段有时会出现灰屏的现象,问题源于新旧 pod 的前端静态文件不兼容,想通过 kubernetes 的蓝绿部署(blue-green deployments)解决这个问题。 阅读全文
posted @ 2021-02-03 22:06 dudu 阅读(978) 评论(2) 推荐(5) 编辑
摘要: 在 gitlab 的 Amin Area 页面,打开侧边栏的 Kubernetes ,点击 Integrate with a cluster certificates,选择 Connect existing cluster,输入以下:Kubernetes cluster name:输入集群名称 `cnblogs-production`;CA Certificate: 通过下面的命令获取证书;* Service Token:通过以下步骤拿到 service token;然后点击 "Add Kubernetes cluster" 按钮进行提交,提交时报错 阅读全文
posted @ 2021-02-01 18:48 dudu 阅读(2306) 评论(3) 推荐(3) 编辑
摘要: 我们部署在 kubernetes 集群上的每个 ASP.NET Core 应用的 appsettings.Production.json 都保存在各个应用的 ConfigMap 中,这些 appsettings.Production.json 中有些重复的配置,如果要修改这些配置,需要到各个应用中一个一个修改,很是麻烦。 阅读全文
posted @ 2021-01-25 22:42 dudu 阅读(601) 评论(3) 推荐(1) 编辑
摘要: 这篇博文记录的是修改 k8s 集群 master(control plane) 的主机名与节点名称的操作步骤,是“用 master 服务器镜像恢复出新集群”的后续博文,目标是将 master 主机名与节点名称由 `k8s-master0` 修改为 `kube-master0`。服务器操作系统是 Ubuntu 18.04,Kubernetes 版本是 1.20.2。 阅读全文
posted @ 2021-01-21 11:03 dudu 阅读(14732) 评论(0) 推荐(3) 编辑
摘要: 本文记录的是将 kubernetes 集群从 1.17.0 升级至最新版 1.20.2 的实际操作步骤,由于 1.17.0 无法直接升级到 1.20.2,需要进行2次过滤升级,1.17.0 -> 1.18.0 -> 1.19.0 -> 1.20.2。先在 control plane node 上进行升级操作,通过下面的命令查看最新版 kubeadm 的版本号 阅读全文
posted @ 2021-01-16 12:19 dudu 阅读(4044) 评论(0) 推荐(1) 编辑
摘要: 我们的生产环境 kubernetes 集群是用阿里云服务器自己搭建的,这篇博文记录的是如何通过已有集群的1台 master 服务器的阿里云ECS镜像恢复出同样配置的新集群。这台 master 服务器的主机名是 k8s-master0,IP地址是 10.0.1.81。首先对 k8s-master0 服务器打快照并生成镜像,用这个镜像创建新的服务器 阅读全文
posted @ 2021-01-13 21:24 dudu 阅读(880) 评论(1) 推荐(0) 编辑
摘要: 昨天基于 ASP.NET Core Policy-based authorization 重构了博文访问授权的代码,在这篇随笔中记录一下。创建 Authorization Requirement,配置 Policy,添加 Claim,实现 PermissionEvaluator,调用 IPermissionEvaluator 获取博文访问授权结果 阅读全文
posted @ 2020-06-27 12:01 dudu 阅读(950) 评论(0) 推荐(3) 编辑
摘要: 今天优化了 k8s 生产集群的部署,为系统(linux 与 k8s系统pod)保留最低资源,以免应用 pod 负载高拖垮整个节点。配置方法是手动给每个节点的 kubelet 添加配置文件 `/etc/default/kubelet` ,并在其中通过 UBELET_EXTRA_ARGS 环境变量,添加了 `kube-reserved`, `system-reserved`, `eviction-hard` 这3个配置 阅读全文
posted @ 2020-03-28 14:26 dudu 阅读(1832) 评论(3) 推荐(0) 编辑
摘要: 由于使用 nginxinc/kubernetes-ingress 后遭遇“K8s 中 ASP.NET Core 应用获取不到客户端真实 IP 地址”的问题(X-Forwarded-For转发问题),于是被迫见异思迁试试换成 kubernetes/ingress-nginx 作为 nginx ingress controller 。 阅读全文
posted @ 2020-02-21 12:23 dudu 阅读(7518) 评论(2) 推荐(5) 编辑
摘要: 开始天真地以为只要写一个 ingress 配置文件并部署好就行了。但部署后发现所有 node 服务器上没有任何进程监听 80 端口,显然不对。原来 k8s 没有内置 ingress controller ,需要安装第三方的 ingress controller ,比如 nginx ingress controller ,上面通过 cnblogs-ingress.yaml 只是创建了 ingress 资源 阅读全文
posted @ 2020-01-29 17:56 dudu 阅读(3818) 评论(5) 推荐(2) 编辑
上一页 1 2 3 4 5 6 7 ··· 86 下一页