首页 文章 精选 留言 我的

精选列表

搜索[信创替代],共10004篇文章
优秀的个人博客,低调大师

鲲鹏Arm+麒麟V10,国产化信创 K8s 离线部署保姆级教程

Rainbond V6 国产化部署教程,针对鲲鹏 CPU + 麒麟 V10 的离线环境,手把手教你从环境准备到应用上线,所有依赖包提前打包好,步骤写成傻瓜式操作指南。别说技术团队了,照着文档一步步来,让你领导来都能独立完成部署。 一、环境规划 准备至少两台机器。 | 架构 | OS | 作用 | | ----- | ---------------- | ------------------------ | | Arm64 | 任意,Mac 也可以 | 下载离线包 | | Arm64 | 麒麟 V10 | 单机部署 K8s 和 Rainbond | 二、准备离线包 2.1 准备 RKE2 离线包(K8s) 下载 RKE2 v1.30.4 离线安装包。 wget https://pkg.rainbond.com/rke2/v1.30.4+rke2r1/rke2-images-linux-arm64.tar wget https://pkg.rainbond.com/rke2/v1.30.4+rke2r1/rke2.linux-arm64.tar.gz wget https://pkg.rainbond.com/rke2/v1.30.4+rke2r1/sha256sum-arm64.txt wget https://rancher-mirror.rancher.cn/rke2/install.sh 2.2 准备 Helm 离线包 下载 Helm 二进制离线包。 wget https://get.helm.sh/helm-v3.18.1-linux-arm64.tar.gz 2.3 准备 Rainbond 离线包 使用脚本下载 Rainbond 离线镜像。 cat >download_rbd_images.sh <<'EOF' #!/bin/bash IMAGE_DOMAIN=registry.cn-hangzhou.aliyuncs.com IMAGE_NAMESPACE=goodrain VERSION=v6.3.0-release image_list="${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/rainbond:${VERSION} ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/rbd-chaos:${VERSION} ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/rbd-mq:${VERSION} ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/rainbond-operator:${VERSION} ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/rbd-worker:${VERSION} ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/rbd-api:${VERSION} ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/rbd-init-probe:${VERSION} ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/rbd-monitor:v2.20.0 ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/apisix-ingress-controller:v1.8.3 ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/apisix:3.9.1-debian ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/local-path-provisioner:v0.0.30 ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/minio:RELEASE.2023-10-24T04-42-36Z ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/rbd-db:8.0.19 ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/registry:2.6.2 ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/alpine:latest" for image in ${image_list}; do docker pull "${image}" done docker save -o rainbond-offline-images.tar ${image_list} EOF 获取 Rainbond Helm Chart 包。 git clone -b main --depth=1 https://github.com/goodrain/rainbond-chart.git 三、离线部署准备 以下操作在离线的麒麟 V10 服务器上执行。 3.1 导入离线包 导入上述准备的离线包。 3.2 安装 Helm 命令 解压离线包并将二进制移动到可执行目录。 tar zxvf helm-v3.18.1-linux-arm64.tar.gz && cp linux-arm64/helm /usr/local/bin 四、离线部署 K8s(RKE2 方式) 4.1 配置 RKE2 参数 创建 RKE2 配置文件目录。 mkdir -p /etc/rancher/rke2/config.yaml.d 配置 RKE2 参数,需禁用默认 Ingress 这会与 Rainbond 网关冲突。 cat >/etc/rancher/rke2/config.yaml.d/00-rbd.yaml <<EOL disable: - rke2-ingress-nginx system-default-registry: registry.cn-hangzhou.aliyuncs.com EOL 配置私有镜像仓库,goodrain.me 是 Rainbond 默认安装的私有镜像仓库域名。 cat >/etc/rancher/rke2/registries.yaml <<EOL mirrors: "goodrain.me": endpoint: - "https://goodrain.me" configs: "goodrain.me": auth: username: admin password: admin1234 tls: insecure_skip_verify: true EOL 4.2 安装 RKE2(K8s 集群) 将 RKE2 离线镜像包放到指定目录,启动时它会自动加载离线镜像包。 mkdir -p /var/lib/rancher/rke2/agent/images cp /root/artifacts-rke2/rke2-images* /var/lib/rancher/rke2/agent/images # 同时将 Rainbond 离线镜像包也放入该目录 cp /root/rainbond-offline-images.tar /var/lib/rancher/rke2/agent/images 准备安装目录。 mkdir /root/artifacts-rke2 将 rke2、rke2-images、sha256sum 移动到一个目录中,如下所示: mv install.sh rke2* sha256sum* /root/artifacts-rke2 cd /root/artifacts-rke2 执行安装命令。 INSTALL_RKE2_ARTIFACT_PATH=/root/artifacts-rke2 sh install.sh 启动 RKE2 服务。 systemctl enable rke2-server.service && systemctl start --no-block rke2-server.service 查看启动日志,大概需要 5-10 分钟才能完全启动。 journalctl -fu rke2-server 4.3 配置 Kubectl(K8s 命令行工具) 配置 Kubectl 访问。 mkdir /root/.kube cp /etc/rancher/rke2/rke2.yaml /root/.kube/config cp /var/lib/rancher/rke2/bin/kubectl /usr/local/bin 验证 K8s 集群状态。 kubectl get node kubectl get pod -n kube-system 五、离线部署 Rainbond V6 5.1 配置 Rainbond 安装参数 创建 Helm values.yaml 配置文件。 cat >values.yaml <<EOL Cluster: #集群入口IP,网关节点的公网IP或者内网IP,或者网关节点之上的负载均衡 gatewayIngressIPs: 192.168.0.100 nodesForGateway: # k8s节点外网IP,没外网IP填写内网IP - externalIP: 192.168.0.100 # k8s节点内网IP internalIP: 192.168.0.100 # k8s节点名称,通过 kubectl get node 获取 name: ecs-c893 # - More nodes for gateway nodesForChaos: # k8s节点名称 - name: ecs-c893 # - More nodes for chaos containerdRuntimePath: /var/run/k3s/containerd # containerd.sock文件路径 Component: rbd_app_ui: env: - name: DISABLE_DEFAULT_APP_MARKET # 禁用默认在线开源应用商店 value: "true" EOL 5.2 离线安装 Rainbond 执行命令离线安装 Rainbond。 helm install rainbond ./rainbond-chart --create-namespace -n rbd-system -f values.yaml 执行完安装命令后,在集群中执行以下命令查看安装状态。 watch kubectl get pod -n rbd-system 当名称包含 rbd-app-ui 的 Pod 为 Running 状态时即安装成功。如下所示,Pod rbd-app-ui-678979c995-94kzb 为 Running 状态时,表示 Rainbond 安装成功。 如果你需要在离线环境下使用 Rainbond 的源码构建功能,你需要额外下载离线源码构建的离线包,请阅读 Rainbond 离线环境下使用源码构建文档。 六、部署验证 6.1 访问 Rainbond 验证 使用 gatewayIngressIPs 配置的 IP 地址访问 Rainbond,例如: http://192.168.0.100:7070。 填写 Rainbond 注册信息并登录 Rainbond。 查看集群信息。 6.2 快速部署测试应用 以 Nginx 为例,在工作空间 -> 容器,通过 Nginx 镜像部署个应用。如下: 最后 按照本指南操作,即使是非技术背景的管理者也能独立完成国产化容器平台的落地。接下来,通过 Rainbond 图形化界面,无需编写代码即可将企业应用轻松迁移至 Rainbond。 官网:https://www.rainbond.com Github:https://github.com/goodrain/rainbond

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

欧洲 AI 创企发布

欧洲知名AI初创公司Multiverse Computing近日发布了两款极其微小的AI模型,小到可以用鸡脑和蝇脑来命名。该公司声称这是全球最小但仍保持高性能的模型,能够处理聊天、语音识别,其中一款甚至具备推理能力。 这些超小型模型专为物联网设备设计,同时可以在智能手机、平板电脑和个人电脑上本地运行。公司创始人罗曼·奥鲁斯向TechCrunch表示:"我们可以将模型压缩到如此程度,使其能够适配各种设备。你可以在本地运行它们,直接在iPhone上,甚至在Apple Watch上。" Multiverse Computing总部位于西班牙多诺斯蒂亚,在全球设有办公室,员工约100人,是一家备受关注的欧洲AI初创公司。该公司由欧洲顶级量子计算和物理学教授罗曼·奥鲁斯、量子计算专家塞缪尔·穆格尔和前Unnim银行副首席执行官恩里克·利萨索·奥尔莫斯共同创立。 今年6月,该公司凭借名为"CompactifAI"的模型压缩技术成功融资1.89亿欧元(约2.15亿美元)。自2019年成立以来,公司累计融资约2.5亿美元。 CompactifAI是一种量子启发的压缩算法,能够在不牺牲模型性能的前提下减小现有AI模型的体积。奥鲁斯解释说:"我们拥有的压缩技术不是计算机科学或机器学习领域人员会采用的典型压缩技术,因为我们来自量子物理学背景。这是一种更加精妙和精细的压缩算法。" 该公司已经发布了大量开源模型的压缩版本,特别是流行的小型模型如Llama4Scout或Mistral Small3.1,并刚刚推出了OpenAI两个新开源模型的压缩版本。公司还压缩了一些大型模型,比如提供DeepSeek R1Slim版本。 专注于模型小型化的Multiverse将额外精力投入到创造尽可能小但功能强大的模型上。其两款新模型小到足以为几乎任何物联网设备带来聊天AI功能,并且无需互联网连接。公司幽默地称这个系列为"模型动物园",因为产品是根据动物大脑尺寸命名的。 名为SuperFly的模型是Hugging Face开源模型SmolLM2-135的压缩版本。原始模型有1.35亿个参数,专为设备端使用开发。SuperFly压缩至9400万个参数,奥鲁斯将其比作蝇脑的大小。他说:"这就像拥有一只苍蝇,但稍微聪明一点。" SuperFly专为在极其受限的数据上进行训练而设计,比如设备操作数据。Multiverse设想将其嵌入家用电器中,让用户能够通过语音命令操作设备,如对洗衣机说"开始快洗",或询问故障排除问题。通过少量处理能力(如Arduino),该模型就能处理语音界面,公司向TechCrunch进行了现场演示。 另一款名为ChickBrain的模型更大,有32亿个参数,但功能也更强大,具备推理能力。Multiverse表示这是Meta Llama3.18B模型的压缩版本,但小到足以在MacBook上运行,无需互联网连接。 更重要的是,奥鲁斯表示ChickBrain在多个标准基准测试中实际上略微超越了原始模型,包括语言技能基准MMLU-Pro、数学技能基准Math500和GSM8K,以及通用知识基准GPQA Diamond。 需要注意的是,Multiverse并未声称其模型动物园会在这些基准测试中击败最大的最先进模型,动物园的性能甚至可能不会出现在排行榜上。关键在于该公司的技术能够在不影响性能的情况下缩小模型尺寸。 奥鲁斯表示,公司已在与所有领先的设备和家电制造商进行洽谈。他说:"我们正在与苹果洽谈,也在与三星、索尼和惠普对话。惠普在最后一轮融资中作为投资者参与进来。"这轮融资由知名欧洲风投公司Bullhound Capital领投,包括HP Tech Ventures和东芝在内的多家机构参与。 这家初创公司还为其他形式的机器学习提供压缩技术,如图像识别,在六年时间里已获得巴斯夫、Ally、穆迪、博世等客户。 除了直接向主要设备制造商销售模型外,Multiverse还通过托管在AWS上的API提供压缩模型,任何开发者都可以使用,通常比竞争对手收取更低的token费用。

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

Penpot —— Figma 开源替代方案

Penpot 是第一个面向跨域团队的开源设计和原型设计平台。Penpot 使用开放的 Web 标准 (SVG),且基于 Web ,不依赖操作系统,有浏览器就能用。 特性 适用于跨域多端协作 交互式原型,轻松设计 支持在项目中进行对话交互 使用 Svg 格式,与大多数矢量工具兼容 基于 Web ,对操作系统的依赖不大,有浏览器就行 基于社区的项目,提供大量库和模板,且不断地更新插件和扩展功能

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

Go 使用 'any' 替代 interface{}

最新发布的Go 1.18 Beta 1包含一个值得关注的 commit,它由 Go 开发团队技术 leader Russ Cox 提交,commit 内容是使用 gofmt 命令将 Go 源代码中的所有 'interface{}' 替换为 'any'。 gofmt -w -r 'interface{} -> any' src 此 commit 页面展示了 445 个被修改的文件。 rsc 写道,执行完命令后,会恢复 bootstrap cmd 目录和某些测试数据,并根据需要调整测试。但不会恢复 std 中被引导的变化,因为其中一些变化会出现在 API 文档中,而开发团队希望能够一致地使用 'any'。 据了解,这是类型别名 (type alias) 语法,主要是为泛型而引入,最新发布 Go 1.8 Beta1 已带来了泛型支持。

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

SparseArray和ArrayMap替代HashMap

用android 自己的api SparseArray和ArrayMap在有些情况下能带来更好的性能提升。 SparseArray SparseArray 只能存储key为int类型的数据,同时,SparseArray在存储和读取的时候,使用的是二分查找法。 添加数据 public void put (int key, E value) 删除数据 public void remove(int key) SparseArray 使用场景 数据量不大,最好在千级以内 key必须为int类型,这种情况的HashMap可以用SparseArray代替: HashMap<Integer, Object> map = new HashMap<>(); SparseArray<Object> array = new SparseArray<>(); ArrayMap ArrayMap是一个<key, value>映射的数据结构。 ArrayMap 和 HashMap 对比 // 遍历 ArrayMap for (int i=0; i<arrayMap.size(); i++) { String key = (String) arrayMap.keyAt(i); String val = (String) arrayMap.valueAt(i); System.out.println(key + "--" + val); } // 遍历 SparseArray for (int i=0; i<arrayMap.size(); i++) { String val = (String) sparseArray.get(i); System.out.println(val); }

资源下载

更多资源
Mario

Mario

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

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

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

用户登录
用户注册