首页 文章 精选 留言 我的

精选列表

搜索[路径追踪],共10008篇文章
优秀的个人博客,低调大师

下载最新eclipse,jdk路径报错

jack@jacks-MacBook-Air:~$ find . -name eclipse.ini ./eclipse/android-neon/Eclipse.app/Contents/Eclipse/eclipse.ini ./eclipse/jee-neon/Eclipse.app/Contents/Eclipse/eclipse.ini 配置eclipse.ini里面的vm参数: -startup ../Eclipse/plugins/org.eclipse.equinox.launcher_1.3.201.v20161025-1711.jar --launcher.library /Users/jack/.p2/pool/plugins/org.eclipse.equinox.launcher.cocoa.macosx.x86_64_1.1.401.v20161122-1740 -product org.eclipse.epp.package.android.product --launcher.defaultAction openFile -showsplash org.eclipse.platform --launcher.appendVmargs -vm /Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home/bin -vmargs -Dosgi.requiredJavaVersion=1.8 -XX:+UseG1GC -XX:+UseStringDeduplication -XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts -Dosgi.requiredJavaVersion=1.8 -Xms256m -Xmx1024m -Xdock:icon=../Resources/Eclipse.icns -XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts -Declipse.p2.max.threads=10 -Doomph.update.url=http://download.eclipse.org/oomph/updates/milestone/latest -Doomph.redirection.index.redirection=index:/->http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/

优秀的个人博客,低调大师

ModStartCMS v5.6.0 CMS 访问控制,性能追踪优化

ModStart 是一个基于 Laravel 模块化极速开发框架。模块市场拥有丰富的功能应用,支持后台一键快速安装,让开发者能快的实现业务功能开发。 系统完全开源,基于 Apache 2.0 开源协议,免费且不限制商业使用。 功能特性 丰富的模块市场,后台一键快速安装 会员模块通用且完整,支持完整的API调用 大文件分片上传,进度条显示,已上传文件管理 强大的模块扩展功能,所有模块可以无缝集成,支持在线安装、卸载模块 完善的开发助手,实现模块、主题的的一键创建 完善的后台权限管理,支持基于RBAC的权限管理系统 后台管理支持使用手机、平板、PC,无论何时何地都可方便管理 第三方登录(QQ、微信、微博、支付宝、微信小程序) 第三方支付支持(微信、支付宝、支付宝当面付、微信扫码、微信小程序) 第三方云存储支持,支持云储存分片上传(阿里云、百度云、华为云、腾讯云、FTP、七牛云、UCloud、又拍云) 第三方短信支持(阿里云、腾讯云、华为云、百度云、253云通讯、聚合、七牛云、融云、赛邮、UCloud、云片、网易云) V5.6.0版本更新 2023年01月19日ModStartCMS发布v5.6.0版本,增加了以下16个特性: [新功能] 调整HTML过滤规则缓存目录为 cache/purifier [新功能] CMS内容访问无权限时基础字段保留 [新功能] 优化升级环境获取方式,兼容后续可能的多环境 [新功能] 多语言文件支持放置在 resources/lang 目录下 [新功能] 后台支持通用文章链接跳转功能 [新功能] 轮播图底部导航图标显示优化 [系统优化] 性能跟踪代码性能优化,提升执行效率 [系统优化] 后台升级图标样式,大小显示优化 [系统优化] 后台页面Tab点击触发时鼠标移动忽略规则 [系统优化] 模块信息获取为空异常信息兼容 [系统优化] 文件上传兼容多云存储驱动,可配置 [Bug修复] 导航栏新窗口打开异常问题修复 [Bug修复] values组件增加项不生效问题修复 [Bug修复] 后台多标签页面关闭窗口样式激活修复 [Bug修复] 用户名邮箱正则异常问题优化 [Bug修复] CountUp小数不生效问题 模块市场一键安装 系统内置模块市场,有行业应用、插件、云存储、云短信等功能模块,后台支持一键安装、启用、禁用、卸载,可快速搭建属于自己的系统应用。 系统演示与文档 码云仓库:https://gitee.com/modstart/ModStartCMS Github仓库:https://github.com/modstart/ModStartCMS 系统演示:https://cms.demo.tecmz.com/ 下载试用:https://modstart.com/download 开发者文档:https://modstart.com/doc 模块市场:https://modstart.com/store

优秀的个人博客,低调大师

记一次 Kubernetes 网络故障深度追踪

作者:骆冰利,端点技术专家 某天晚上,客户碰到了 K8S 集群一直扩容失败,所有的节点都无法正常加入集群。在经过多番折腾无解后,反馈到我们这里进行技术支持。这个问题的整个排查过程比较有意思,所以对其中的排查思路和用到的方法进行整理分享。 问题现象 运维同学在对客户的 K8S 集群进行节点扩容时,发现新增的节点一直添加失败。该同学进行了初步的排查如下: 在新增节点上,访问 k8s master service vip 网络不通; 在新增节点上,直接访问 k8s master hostIP + 6443 网络正常 在新增节点上,访问其他节点的容器 IP 可以正常 ping 通 在新增节点上,访问 coredns service vip 网络正常; 该客户使用的 Kubernetes 版本是 1.13.10,宿主机的内核版本是 4.18(centos 8.2)。 问题排查过程 收到该一线同事的反馈,我们已经初步怀疑是 ipvs 的问题。根据以往网络问题排查的经验,先对现场做了些常规排查: 确认内核模块 ip_tables 是否加载(正常) 确认 iptable forward 是否默认 accpet (正常) 确认宿主机网络是否正常(正常) 确认容器网络是否正常(正常) ... 排除了常规的问题之后,基本可以缩小范围,再继续基于 ipvs 相关层面进行排查。 通过 ipvsadm 命令排查 10.96.0.1 是客户集群 k8s master service vip 可以发现有异常连接,处于 SYN_RECV 的状态,并且可以观察到,启动时 kubelet + kube-proxy 是有正常建连的,说明是在启动之后,k8s service 网络出现异常。 tcpdump 抓包分析 两端进行抓包,并通过 telnet 10.96.0.1 443 命令进行确认。 结论:发现 SYN 包在本机没有发送出去。 初步总结 通过上面的排查,可以再次缩小范围,问题基本就在 kube-proxy 身上。我们采用了 ipvs 模式,也会依赖了 iptables 配置实现一些网络的转发、snat、drop 等等。 根据上面的排查过程,我们又缩小了范围,开始分析怀疑对象 kube-proxy。 查看 kube-proxy 日志 发现异常日志,iptables-restore 命令执行异常。通过 Google、社区查看,确认问题。 相关 issue 链接可以参考下: https://github.com/kubernetes/kubernetes/issues/73360 https://github.com/kubernetes/kubernetes/pull/84422/files https://github.com/kubernetes/kubernetes/pull/82214/files 继续深入 通过代码查看(1.13.10 版本 pkg/proxy/ipvs/proxier.go:1427),可以发现该版本确实没有判断 KUBE-MARK-DROP 是否存在并创建的逻辑。当出现该链不存在时,会出现逻辑缺陷,导致 iptable 命令执行失败。 k8s master service vip 不通,但是实际容器相关的 ip 是通的原因,与下面这条 iptable 规则有关: iptable -t nat -A KUBE-SERVICES ! -s 9.0.0.0/8 -m comment --comment "Kubernetes service cluster ip + port for masquerade purpose" -m set --match-set KUBE-CLUSTER-IP dst,dst -j KUBE-MARK-MASQ 根因探究 前面我们已经知道了 kube-proxy 1.13.10 版本存在缺陷,在没有创建 KUBE-MARK-DROP 链的情况下,执行 iptables-restore 命令配置规则。但是为何 k8s 1.13.10 版本跑在 centos8.2 4.18 内核的操作系统上会报错,跑在 centos7.6 3.10 内核的操作系统上却正常呢? 查看下 kube-proxy 的源码,可以发现 kube-proxy 其实也就是执行 iptables 命令进行规则配置。那既然 kube-proxy 报错 iptables-restore 命令失败,我们就找一台 4.18 内核的机器,进入 kube-proxy 容器看下情况。 到容器内执行下 iptables-save 命令,可以发现 kube-proxy 容器内确实没有创建 KUBE-MARK-DROP 链(符合代码预期)。继续在宿主机上执行下 iptables-save 命令,却发现是有 KUBE-MARK-DROP 链。 这里有两个疑问: 为何 4.18 内核宿主机的 iptables 有 KUBE-MARK-DROP 链? 为何 4.18 内核宿主机的 iptables 规则和 kube-proxy 容器内的规则不一致? 第一个疑惑,凭感觉怀疑除了 kube-proxy,还会有别的程序在操作 iptables,继续撸下 K8S 代码。 >>> 结论:发现确实除了 kube-proxy,还有 kubelet 也会修改 iptables 规则。具体代码可以查看 pkg/kubelet/kubelet_network_linux.go 第二个疑惑,继续凭感觉吧。Google 一发捞一下为何 kube-proxy 容器挂载了宿主机 /run/xtables.lock 文件的情况下,宿主机和容器 iptables 查看的规则不一致。 >>> 结论:CentOS 8 在网络方面摒弃 iptables 采用 nftables 框架作为默认的网络包过滤工具。 至此,所有的谜团都解开了。 团队完成过大量的客户项目交付,还是有些问题可以再解答下: 问题一:为何这么多客户环境第一次碰到该情况? 因为需要 k8s 1.13.10 + centos 8.2 的操作系统,这个组合罕见,且问题是必现。升级 k8s 1.16.0+ 就不会有该问题。 问题二:为何使用 k8s 1.13.10 + 5.5 内核却没有该问题? 因为那是与 centos 8 操作系统有关,我们手动升级 5.5 版本后,默认还是使用的 iptables 框架。 可以通过 iptables -v 命令来确认,是否使用了 nftables。 nftables 是何方神圣?比 iptables 好么?这是另一个值得进一步学习的点,这里就不再深入了。 解决方法 针对以上的排查问题,我们总结下解决方法: 调整内核版本到 3.10(centos 7.6+),或者手动升级内核版本到 5.0 +; 升级 kubernetes 版本,当前确认 1.16.10+ 版本没有该问题。

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册