Kusion v0.12.1 发布——完善产品功能,优化用户体验

为 Kubernetes 领域模型抽象应用层模型 - 使用 KCL 配置语言 & Konfig 配置库 Kusion 配置语言( KCL )是一个开源的基于约束的记录及函数语言。KCL 通过成熟的编程语言技术和实践来改进对大量繁杂配置比如云原生 kubernetes 配置场景的编写,致力于构建围绕配置的更好的模块化、扩展性和稳定性,更简单的逻辑编写,以及更快的自动化集成和良好的生态延展性。在 KCL 中, 推荐通过配置库的方式统一管理所有的配置清单和模型库,即不仅存放抽象模型本身的 KCL 定义,还存放各种类型的配置清单,比如应用的运维配置、策略配置等。 阅读详情

我们很高兴地向大家宣布,Kusion v0.12.1 版本已经正式发布啦!我们本次总共更新了超过 18 个新功能,8 处问题修复以及 5 篇文档更新,截止目前 Kusion 社区已共计有来自海内外 25 位贡献者 🎉

175305a220ccba865d17d73ee6d307e5.png

吉祥物小 K 同学带大家查收 Kusion v0.12.1 版本新特性

我们一如既往地对不断壮大的 KusionStack 社区的宝贵贡献表示感谢,在这篇文章中,您将了解一些我们精心挑选的令人兴奋的新功能。

新增特性

Backend Storage

01

优化存储后端管理

在 v0.12.1 版本中,我们为 Kusion 添加了对 AWS S3 路径样式(path-style)endpoint 的支持,并且提供了 kusion release unlock 命令用于解锁处于异常状态的 Release 文件。

0bd2392f9dec3d8041926084836e6a69.png

kusion release unlock command

Sensitive Data

02

优化敏感信息展示

在过去的版本中,kusion preview 命令展示 Kubernetes Secret 资源时会将 data 和 stringData 的明文数据直接透出,这将带来敏感信息泄漏的风险。在这个版本中,我们优化了敏感信息的预览效果,Kubernetes Secret 资源的 data 和 stringData 将不会明文展示(Secret 数据在更新时仍可以计算出发生了变化)。

9aee6de1edc2c7fd6c1432875908d568.png

masked data & stringData preview result

Terraform Resources

03

优化 Terraform 资源管理

在 v0.12.1 版本中,Kusion 提供了对存量 Terraform 云资源的导入能力,用户可以在 Workspace 的 Module 配置中填充 importedResources 字段,在其中声明 Spec 文件中 Kusion 资源 ID 到待导入云资源实例 ID 的映射,Kusion 在进行预览和生效时会先将指定的 Kusion 资源状态同步为待导入资源实例的状态。需要注意的是,对于导入的资源,Kusion 在进行 destroy 时会跳过对其的删除(因为可能存在多个应用共享该资源的情况)。此外,在这个版本中,Kusion 还支持并发操作独立的 Terraform 资源,从而可以提高运维执行效率。

一份示例配置可参考:

modules: 
    mysql: 
      path: oci://ghcr.io/kusionstack/mysql
      version: 0.2.0
      configs:
          default: 
            cloud: alicloud
            size: 20
            instanceType: mysql.n2.serverless.1c
            category: serverless_basic
            privateRouting: false
            subnetID: vsw-2zem*********
            databaseName: "wordpress-mysql"
            # Import an existing alicloud_db_instance. 
            importedResources: 
              "aliyun:alicloud:alicloud_db_instance:wordpress-mysql": "rm-2zem********"
    network:
        path: oci://ghcr.io/kusionstack/network
        version: 0.2.0
        configs:
            default: {}

Runtime Configs

04

支持 Workspace Runtime 配置

在 v0.12.1 版本中,用户可以在 Workspace 中声明 Kubernetes 集群证书和 Terraform Provider 账密等 Runtime 配置,用户可以在 Workspace 的 Context 字段中声明下面的配置项:

  • KUBECONFIG_PATH:Kubernetes 集群证书路径

  • KUBECONFIG_CONTENT:Kubernetes 集群证书内容,支持填写明文或者引用 AWS 和阿里云的 Secrets Manager URL 来进行声明(如:ref://secret-store/kubeconfig)

  • AWS_ACCESS_KEY_ID:Terraform AWS Provider 访问密钥 ID,支持填写明文或者引用 AWS 和阿里云的 Secrets Manager URL 来进行声明

  • AWS_SECRET_ACCESS_KEY:Terraform AWS Provider 访问密钥,支持填写明文或者引用 AWS 和阿里云的 Secrets Manager URL 来进行声明

  • ALICLOUD_ACCESS_KEY:Terraform 阿里云 Provider 访问密钥 ID,支持填写明文或者引用 AWS 和阿里云的 Secrets Manager URL 来进行声明

  • ALICLOUD_SECRET_KEY:Terraform 阿里云 Provider 访问密钥,支持填写明文或者引用 AWS 和阿里云的 Secrets Manager URL 来进行声明

一份示例配置可参考:

modules: 
    mysql: 
      path: oci://ghcr.io/kusionstack/mysql
      version: 0.2.0
      configs:
          default: 
            cloud: alicloud
            size: 20
            instanceType: mysql.n2.serverless.1c
            category: serverless_basic
            privateRouting: false
            subnetID: vsw-2zem*********
            databaseName: "wordpress-mysql"
    network:
        path: oci://ghcr.io/kusionstack/network
        version: 0.2.0
        configs:
            default: {}
# The remote secrets manager for sensitive data storage. 
secretStore:
  provider:
    aws:
      region: us-east-1
# Runtime configs. 
context: 
  # Kusion will retrieve the encrypted kubeconfig with the secretStore provider declared above. 
  KUBECONFIG_CONTENT: ref://secret-store/kubeconfig
  ALICLOUD_ACCESS_KEY: LTAI5*********
  ALICLOUD_SECRET_KEY: LNOmf*********

Spec File as Input

05

支持使用 Spec 预览和生效

在 v0.12.1 版本中,Kusion 支持将 Spec 文件作为 kusion preview 和 kusion apply 的输入。用户可以在 Stack 目录中放置一份 Spec 文件,并通过 --spec-file 指定,Kusion 引擎可以直接消费该 Spec 文件,并将 apply 结果更新到 Stack 对应的 Release 文件中。

4da35478c30f4cc07cf9bdf2248e1085.png

kusion apply with specified spec file

Workload Modularization

06

完成 Workload Module 化

在此前的 v0.12.0 版本中,我们已将 Service 和 Job 这两个 Workload 的 Schema 定义从 Kusion 代码中拆分解耦出去;在这个版本中,我们已完全实现了 Workload 的 Module 化,Service 和 Job 模块的 Schema 定义和 Module Generator 的具体实现都已移至 catalog (https://github.com/KusionStack/catalog) 仓库中。用户还可以参考 Service 和 Job,根据自己的需要实现定制的 Workload 模块。

一份示例配置可参考:

[package]


[dependencies]
kam = { git = "https://github.com/KusionStack/kam.git", tag = "0.2.0" }
service = { oci = "oci://ghcr.io/kusionstack/service", tag = "0.2.0" }
import kam.v1.app_configuration as ac
import service
import service.container as c


quickstart: ac.AppConfiguration {
  workload: service.Service {
    containers: {
      quickstart: c.Container {
        image: "kusionstack/kusion-quickstart:latest"
      }
    }
  }
}

需要注意的是:v0.12.1 版本的 Kusion 与此前用户本地缓存的 0.1.0 版本的 Service 和 Job Module 不兼容,您需要使用 0.2.0 版本的 Service 和 Job Module,或者可将本地缓存的 $HOME/.kcl/kpm/service_0.1.0 和 $HOME/.kcl/kpm/job_0.1.0 目录删除。

问题修复

在 v0.12.1 版本中,我们主要修复了如下 bug: 

  • 修复了 Volume 配置被错误覆盖的相关问题

  • 修复了 Terraform Provider 缓存的相关问题

  • 修复了 JsonPatch 错误信息透出的相关问题

社区动态

KusionStack 社区新增了两位 Contributor!感谢 @hoangndst 和 @vietanhtwdk 两位来自越南的同学对 Kusion 的贡献 🎉 

总结

在 v0.12.1 版本中,我们优化了存储后端管理、敏感信息展示和对 Terraform 资源的管理,同时支持了在 Workspace 中声明 Runtime 配置,以及使用 Spec 文件进行预览和生效,并且完成了对 Workload 的 Module 化拆分。除了上述提到的改进之外,本次发布还包含了大量小改进与变化,您可以在 GitHub Release Note 中找到更多完整的细节:

https://github.com/KusionStack/kusion/releases

欢迎来玩~ 欢迎 star ⭐️

https://github.com/KusionStack/kusion

https://github.com/KusionStack/karpor 

https://github.com/KusionStack/operating

https://github.com/kcl-lang/kcl

概率论与数理统计基础概念与重要定义汇总 文章目录一、随机事件和概率1:互斥,对立,独立事件的定义和性质。2:概率,条件概率和五大概率公式3:古典型,几何型概率和伯努利试验 一、随机事件和概率 1:互斥,对立,独立事件的定义和性质。 互斥事件\color{red}\textbf{互斥事件}互斥事件 事件A和B的交集为空,A与B就是互斥事件,也叫互不相容事件。也可叙述为:不可能同时发生的事件。如A∩B为不可能事件(A∩B=Φ),那么称事件A与事件B互斥,其含义是:事件A与事件B在任何一次试验中不会同时发生。 则P(A+B)=P(A)+P(B)(这个公 阅读详情

相关推荐

保姆级教程:彻底清理Win11更新缓存并解除外设,一次搞定0xc1900101更新错误

本文提供了一套完整的Win11更新报错0xc1900101解决方案,涵盖软件环境净化和硬件设备隔离。通过终止干扰进程、重置更新组件、清理临时文件以及断开外设等步骤,有效提升更新成功率。特别强调外设驱动兼容性对解决0xc1900101错误的关键作用。

weixin_33483304的博客 417

KusionStack 开源|Kusion 模型库和工具链的探索实践

文|杨英明(花名:向野)KusionStack 核心贡献者蚂蚁集团高级研发工程师在基础设施技术领域深耕,专注IaC/XaC、GitOps 等方向本文4912字 阅读 12分钟前言KusionStackKusionStack 最早是为了解决蚂蚁内部复杂的运维场景而诞生的解决方案。思路是通过自研的 DSL(KCL)沉淀运维模型(Kusion Model),将基础设施部...

光谷码农 675

Transformer凭什么取代RNN?深入拆解自注意力机制与梯度消失问题的终极对决

本文深入探讨了Transformer如何通过自注意力机制解决RNN的梯度消失问题,成为自然语言处理领域的新标准。通过对比RNN和Transformer的架构差异,揭示了自注意力机制在并行计算、长期依赖处理等方面的技术优势,并提供了实际任务中的性能对比数据。

f6g7h8i9j的博客 190

KusionStack使用文档

如果想自定义默认安装版本,可以运行下述命令(将最后的 open@latest 替换为你想要默认安装的版本号就就行): 该脚本执行后会创建 $HOME/.kusionup 目录,该目录下会包含:执行完安装脚本后,默认已经安装好了 kusionup 和一个默认的 kusion 版本,你可以通过执行 kusionup 查看已安装的所有版本: 执行 kusionup ls-ver 列出来自内置安装源中的所有可安装的 **kusion** 版本: 执行 kusionup install $VERSION

王大雏的博客 417

UNET改进77:全网首发-添加CFBlock |

本文介绍了在UNet模型中集成CFBlock注意力机制的实现方法。主要分为三个步骤:1) 创建CFBlock模块,包含卷积注意力机制和MLP;2) 在UNet连接处添加注意力模块;3) 在卷积层中嵌入注意力机制。具体实现包括:定义Conv、MLP和ConvolutionalAttention等基础模块,构建CFBlock核心结构;在UNet跳跃连接处插入注意力模块;将注意力机制整合到DoubleConv和Down模块中。该方法通过在不同位置引入注意力机制,可有效提升模型的特征提取能力。代码实现使用PyTor

AIcurator的博客 388

生成mm grounding dino的onnx模型并在x-anylabeling中使用

X-AnyLabeling 是一款cvhub开发的交互式自动标注工具,其基于AnyLabeling进行构建和二次开发,在此基础上扩展并支持了许多的模型和功能,并借助Segment Anything和YOLO等主流模型提供强大的 AI 支持。其最新版基于grounding dino可以实现开放词汇检测及生成掩码。2024年,MMDet 3.3.0提出了 MM-Grounding-DINO。

blanokvaffy的博客 1729

KusionStack 开源有感|历时两年,打破 “隔行如隔山” 困境

本文撰写于 KusionStack 开源前夕,作者有感而发,回顾了团队从 Kusion 项目开发之初到现今成功走上开源之路的艰辛历程。当中既描述了作者及其团队做 Kusion 项目的初心和项目发展至今的成果,也表达了作者自身对团队的由衷感激,字里行间都散发着真情实感。...

金融级分布式架构 462

第八届传智杯微信小程序开发挑战赛练习题库

本文是微信小程序开发练习题库,包含单选题、多选题和判断题三种题型。单选题主要考察小程序开发基础知识,如数组方法、组件使用、API调用等;多选题涵盖样式属性、页面跳转、数据处理等综合知识;判断题则测试开发者对小程序特性、生命周期、功能限制等概念的理解。题目内容涉及小程序开发的各个方面,包括组件使用、API调用、数据绑定、页面配置等核心知识点,适合开发者进行自我测试和知识巩固。

qq_73044452的博客 506

KusionStack 是什么?

KusionStack 是蚂蚁开源的云原生可编程技术栈!一、KusionStack 的目标愿景KusionStack 是一个可编程、高灵活性的应用交付及运维技术栈,灵感源于融合(Fusion)一词,旨在帮助企业构建的应用运维配置管理平面及 DevOps 生态。融合专有云,混合云,多云混合场景融合以云原生技术为主,同时采用多种平台技术的混合平台技术选型融合多项目、多团队、多角色、多租户、多环境的企业...

光谷码农 949

零基础实战:用 Docker 和 vLLM 本地部署 bge-reranker-v2-m3 重排序模型

本文介绍了如何利用Docker容器和vLLM推理框架在本地部署BAAI开发的bge-reranker-v2-m3文本排序模型。

举世誉之而不加劝,举世非之而不加沮,定乎内外之分,辩乎荣辱之境,斯已矣。 5971

YOLOv11改进 | Conv篇 | DWRSeg扩张式残差助力小目标检测 (附创新修改后的C3k2DWRSeg)

本文内容给大家带来的DWRSeg中的DWR模块来改进YOLOv11中的C2f和Bottleneck模块,主要针对的是小目标检测,主要创新点可以总结如下:多尺度特征提取机制的深入研究和创新的DWR模块和SIR模块的提出这种方法使得网络能够更灵活地适应不同尺度的特征,从而更准确地识别和分割图像中的物体。DWRSeg的基本原理和框架,并且能够在你自己的网络结构中进行添加DWRSeg需要增加一定的计算量一个DWR模块大概增加0.4GFLOPsYOLOv11改进系列专栏——本专栏持续复习各种顶会内容——科研必备。

Snu77的博客 4186

深入解读 `@expo/json-file`:Expo 工具链中读写与操纵 JSON 文件的基础库

`@expo/json-file` 是 Expo 开源仓库中一个面向 JSON 文件的高效封装库,提供类型安全的读、写、查询、合并与删除等操作。本文将以其 [README](https://link.gitcode.com/i/f977f368d3ee86fc1ae483a0952048db) 为核心骨架,结合 [核心实现](https://link.gitcode.com/i/697c9521a

gitblog_00350的博客 452

YOLO模型轻量化实战:剪枝、量化与知识蒸馏三大技术落地详解

这篇文章结合我自己的实战经验,从原理、操作、效果、避坑四个方面,给大家讲清楚了YOLO模型轻量化的三大核心技术:剪枝、量化、知识蒸馏。先明确应用场景,再选择合适的技术组合,不要盲目追求极致压缩,要在“大小、速度、精度”之间找平衡。实战才是最好的学习方式——大家可以先拿自己的数据集试试剪枝和量化,感受一下效果,有问题可以在评论区留言。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 592

Kusion v0.12.0 发布——全面优化各项能力,提供生产实践案例

Kusion v0.12.0 版本已经发布啦!本次总共更新了超过26个新功能,18处问题修复以及14篇文档更新,新增了2位贡献者????吉祥物小 K 同学带大家查收 v0.12.0 版本新特性团队一如既往地对不断壮大的 KusionStack 社区的宝贵贡献表示感谢,正是这些来自社区的贡献与反馈帮助 Kusion 达到了v0.12.0这一重要里程碑。在这篇文章中,您将了解一些团队精...

金融级分布式架构 269

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Kusion v0.11.1 发布——命令行功能增强,支持更丰富的应用配置能力

很高兴向大家宣布,Kusion v0.11.1 版本发布啦!本次总共更新了超过 23 个新功能、8 处问题修复以及 18 篇文档,截至目前 Kusion 已共计有 21 位贡献者 ????吉祥物小 K 同学带大家查收 v0.11.1 版本新特性Kusion 团队一如既往地对 KusionStack 社区的宝贵贡献者表示感谢。在这篇文章中,您将了解Kusion 团队精心挑选的令人兴奋的新功能。新增特性...

金融级分布式架构 224

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

分享69个ASP.NET企业网站源码,总有一款适合您

分享69个ASP.NET企业网站源码,总有一款适合您

zy0412326的专栏 2064

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Kusion v0.13.0 发布啦,更丰富的命令行功能,还添加了对 AI 应用的支持!

Kusion v0.13.0 版本已发布!本次总共更新了超过14个新功能,9处问题修复以及13篇文档更新,截至目前 Kusion 已共计有28位贡献者 ????吉祥物小 K 同学带大家查收 v0.13.0 版本新特性团队一如既往地对不断壮大的 KusionStack 社区的宝贵贡献表示感谢,正是这些来自社区的贡献与反馈帮助我们达到了v0.13.0这一重要的里程碑。在这篇文章中,您将了...

金融级分布式架构 312

PCV库扩展开发指南:为你的计算机视觉项目贡献新功能

PCV(Open source Python module for computer vision)是一个功能强大的计算机视觉开源Python模块,它提供了丰富的工具和算法,帮助开发者快速构建计算机视觉应用。本指南将带你了解如何为PCV库扩展新功能,从环境搭建到代码实现,一步步成为PCV贡献者。 ## 一、开发环境准备 ### 1.1 克隆PCV仓库 首先,你需要将PCV仓库克隆到本地。打开终

gitblog_01084的博客 523

双十一第二波活动来了,酷客scrm助力商家大卖

11月1号0点,双11“抢先购”正式开抢,数亿“尾款人”涌入淘宝疯狂下单。 开场1分钟,阿迪达斯成交额超1亿,耐克紧随其后超1亿。随后,科沃斯、巴拉巴拉、百雀羚、全友家居等国货品牌也争相破亿。 截至1:51,苹果、欧莱雅、海尔、雅诗兰黛、耐克、华为、美的、兰蔻、小米、阿迪达斯等100个品牌成交额突破1亿元,火速迈入天猫双11“亿元俱乐部”。其中,美妆和3C家电品牌贡献了最多的“王牌”。 当然,随着定金交付一时爽,随之而来的支付压力更是催生了“尾款人”一词,“冲啊尾款人”在当天凌晨冲..

KUKRSCRM的博客 600

VS2010 + OGRE1.7.2 环境安装

1 WIN7_32bit + VS2010 + OGRE1.7.2 环境安装 一、编译环境准备。 1. OGRE源码:到ogre官网下载最新的源码包解压,这里使用1.7.2版本。 2. 下载并安装DirectX SDK,这里使用 DirectX SDK - February 2010。 3. 安装Boost库,提高性能和开启后台加载等一些功能。非必需。这里Boost库版本使用1.4

flyingleo1981的专栏 1363

2021-07-28

kubeadmin 安装k8s1.20集群 标签(空格分隔): kubernetes架构系列 一:k8s1.20.x 的重要更新 二:k8s1.20.x 的安装 2.1 :高可用Kubernetes集群规划 2.2 yum 的更新配置 (所有节点全部安装) 一:k8s1.20.x 的重要更新 1、Kubectl debug 设置一个临时容器 2、Sidecar 3、Volume:更改目录权限,fsGroup 4、ConfigMap和Secret K8S官网:https://kubernetes.io/

lixiaoxianer的博客 4433

精彩回顾|KusionStack 开源啦~

????KusionStack Open Day 圆满结束????感谢大家抽空参加我们一起来回顾下????本次活动的精彩瞬间吧~????蚂蚁集团高级技术专家、Kusion 项目发起人及负责人——朵晓东作为整场活动的主持人,带领大家一起回顾了 Kusion 项目演进历程,并宣布了 KusionStack 正式开源的好消息!活动开场,Kusion 项目的两位 Sponsor——蚂蚁集团可信原生技术部...

光谷码农 630

通过vjudge刷Uva的题目(解决Uva网站打开慢的问题)

最近在跟着算法竞赛入门经典刷题,发现Uva网站打开超级慢,进个主页面都需要好几秒。后来发现可以通过vjudge网站刷Uva的题目,很是方便,在这mark一下,顺便做一下推荐。 vjudge网址:https://vjudge.net,点击后会进入vjudge网站主页,如下图: 可以发现vjudge支持包括POJ、Uva、ZOJ等等一系列OJ网站的题目评测。第一次通过该网站刷题需要先注册一个账号,点...

weixin_43899069的博客 2882

生成树算法:C++里的“修路大王”,让你的代码不绕路!

摘要:生成树算法——C++中的“修路大王” 本文用幽默生动的语言讲解了最小生成树(MST)算法在C++中的应用。通过生活化类比(如WiFi断网、快递绕路等),阐释了生成树的核心概念:在连通图中选择总权重最小的n-1条边连接所有节点且不形成环路。重点对比了Prim算法(贪心选择最近节点)和Kruskal算法(按权重排序选边)的实现思路,并提供了带有详细注释的C++代码示例(如优先队列的使用)。文章还澄清了常见误区(如MST与最短路径的区别),指出其在网络设计、电路布线等场景的实际价值,让读者在轻松氛围中掌握这

Sunnyside_______的博客 6111

探索MessengerKit架构设计:iOS聊天框架的最佳实践

MessengerKit是一款专为iOS平台打造的UI框架,旨在帮助开发者快速构建功能丰富、界面精美的聊天应用。作为一款专注于即时通讯界面的开发工具,它提供了灵活的架构设计和丰富的自定义选项,让开发者能够轻松实现类似iMessage的交互体验。 ## 为什么选择MessengerKit? 在移动应用开发中,聊天功能往往是最复杂的模块之一。从消息气泡的展示到键盘交互,从媒体文件的处理到实时状态的

gitblog_00079的博客 419

云服务开发流程

前言   部署微信小程序,能够通过小程序客户端访问互联网的服务端。实现一个在线工时统计的小程序。   前置条件: 1.微信小程序与服务器通信需要https协议和服务器域名,不能通过ip访问。 2.服务器域名需要icp备案 3.icp备案需要购买云服务器 4.备案后的域名才能指向云服务器的ip 5.备案后的域名才能申请https证书,与服务端通行   所以我们前期的准备工作,需要购买云服务器,域名服务,然后备案,申请https证书。同时能开发微信小程序和服务端接口,发布小程序。待备案完成后部署运行小程序。

weixin_36120107的博客 2810
上一篇: Koupleless 可演进架构的设计与实践|当我们谈降本时,我们谈些什么
下一篇: HTNN 开源 - MOSN 社区新网络产品
SOFAStack
博客等级 码龄7年 747粉丝 389原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值