CN114637650B - 一种基于Kubernetes集群的弹性伸缩方法 - Google Patents
一种基于Kubernetes集群的弹性伸缩方法 Download PDFInfo
- Publication number
- CN114637650B CN114637650B CN202210241431.1A CN202210241431A CN114637650B CN 114637650 B CN114637650 B CN 114637650B CN 202210241431 A CN202210241431 A CN 202210241431A CN 114637650 B CN114637650 B CN 114637650B
- Authority
- CN
- China
- Prior art keywords
- index
- time
- capacity
- lstm
- cluster
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3058—Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/32—Monitoring with visual or acoustical indication of the functioning of the machine
- G06F11/324—Display of status information
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本发明公开一种基于Kubernetes集群的弹性伸缩方法,应用于计算机技术领域,针对Kubernetes内置的弹性伸缩策略存在的不足,本发明基于深度学习平台来根据集群的历史指标值来预测未来的工作负载,通过当前指标值与预测指标值之差的绝对值与设定阈值进行比较,可以避免集群中的服务出现扩缩容频繁的情况;若绝对值大于或等于设定阈值,则认为未来即将出现指标高峰或指标低谷情况,则集群中的服务有执行扩容或缩容操作的必要,同时还设置一个计时器用于记录一次扩容或缩容操作的耗时,为了避免当前扩缩容操作与前一次的扩缩容操作发生冲突,还设置了一个时间阈值,只有当计时器的值大于或等于时间阈值,才进行扩容或缩容操作。
Description
技术领域
本发明属于计算机技术领域,特别涉及一种容器弹性伸缩技术。
背景技术
在Kubernetes集群中,弹性伸缩主要用来解决工程系统中两种突发问题:一种问题是由于短期内系统流量过大、系统负载增加,需要对指定的服务进行扩容操作,来保证系统的稳定性与可用性;另一种问题是由于系统内各项资源利用率不高,需要对指定的服务进行缩容操作,从而提高系统资源的利用率,保证系统资源的合理利用。
Kubernetes内置的弹性伸缩策略存在以下不足:
1.节点级别的伸缩策略对底层的物理集群或者云平台的依赖性较强,如果物理集群中节点数目过少,就无法进行扩容操作,而云平台的功能与云厂商作出的设定与限制有关,导致这些伸缩策略泛用性较差,比较局限。
2.服务级别的垂直伸缩策略在实施时,通常需要先停止原有的Pod的运行,根据资源分配的要求创建新的Pod承载服务,这一过程会导致服务在运行过程中出现一定时间的中断。
3.响应式的伸缩策略存在一定的滞后性,可能导致用户请求时间变长、用户体验下降。
发明内容
为解决上述技术问题,本发明提出一种基于Kubernetes集群的深度学习平台的弹性伸缩方法,根据集群的历史指标值准确地预测出集群的负载峰值并完成服务伸缩。
本发明采用的技术方案为:一种基于Kubernetes集群的深度学习平台的弹性伸缩方法,包括:
S1、构建集群的监控与信息收集模块;
S2、根据监控与信息收集模块收集的历史指标信息,使用CNN-LSTM混合网络进行指标预测;
S3、根据监控与信息收集模块收集的指标当前值与步骤S2得到的指标预测值,判断是否进行扩容或缩容操作。
步骤S1所述监控与信息收集模块的结构包括:Kubernetes、Node-exporter、Prometheus Server;通过Node-exporter对节点上的指标信息进行采集,再使用Prometheus Server收集来自Node-exporter及Kubernetes集群中的目标主机上的监控信息、存储时间序列数据。
所述指标为CPU使用率、内存占用、网络流量中的一种。
所述监控与信息收集模块还包括Grafana,使用Grafana将集群中的监控数据可视化。
CNN-LSTM混合网络具体包括串联的CNN结构与LSTM结构,所述CNN结构的输入为监控与信息收集模块收集的历史指标信息,CNN结构的输出作为LSTM结构的输入,LSTM结构的输出为指标预测值;
CNN结构包括:第一卷积层、第二卷积层、最大池化层、扁平层;所述第一卷积层与第二卷积层用于读取输入的时间序列数据,然后投影至特征图中并放大其中的特征;最大池化层对放大后的特征图进行最大池化操作;扁平层对最大池化操作后的特征图进行展平操作;
LSTM结构包括2个LSTM网络与全连接层,2个LSTM网络根据扁平层的输出进行时序数据预测,全连接层对预测结果进行处理并输出。
步骤S3通过设定阈值,将指标当前值与指标预测值之差的绝对值跟设定的阈值进行比较,若绝对值大于或等于设定阈值,则认为未来会出现指标高峰或指标低谷,需要进行扩容或缩容操作;否则未来不会出现指标高峰或指标低谷。
还包括设置计时器与时间阈值;每执行一次扩容或缩容操作前,将计时器清零并重新开始计时,通过计时器记录扩容或缩容操作的间隔时间;
当未来会出现指标高峰或指标低谷时,若当前计时器的时间大于或等于时间阈值,则执行扩缩容操作,否则等待一段时间,使得当前计时器的时间大于或等于时间阈值,再进行扩缩容操作。
所述等待一段时间具体为:时间阈值减去当前计时器的时间的差值。
本发明的有益效果:响应式的伸缩策略需要在工作周期内采集集群当前工作负载的运行情况、与期望值进行比对,再根据算法运算的结果执行具体的扩缩容操作,这一过程存在一定的滞后性。具体到深度学习平台而言:假如将周期设置得过长,在某一时间段内平台用户数量激增,需要对网页服务进行扩容,而从发现高峰到完成扩容之间需要一定的响应时间,在此时间内用户的请求时间变长、造成用户体验下降;而如果将周期设置得过短,可能导致平台扩缩容频繁、造成副本数量的抖动、平台运行的稳定性下降。本发明提出的方法可以根据集群的历史指标值来预测未来的工作负载,提前完成集群中的扩缩容操作,在保证平台性能的同时提高平台的稳定性。
附图说明
图1为本发明实施例提供的方案流程图。
图2为本发明实施例提供的集群监控模块的结构图。
图3为本发明实施例提供的混合网络结构图。
具体实施方式
为便于本领域技术人员理解本发明的技术内容,首先对以下技术术语进行定义:
Kubernetes:Google公司开发的开源一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。
节点:Kubernetes中最小的计算硬件单元,在大多数生产系统中,节点很可能是数据中心中的物理机器,或者是托管在像谷歌云平台这样的云供应商上的虚拟机。
Prometheus:由SoundCloud公司开发的开源监控报警系统和时序列数据库。
Node-exporter:在Prometheus组件中,exporter是一种用来进行数据汇报的程序,其命名规则均为XX-exporter,XX表示不同的业务。其中Node-exporter负责收集主机信息。
Prometheus Server:在Prometheus组件中,Prometheus Server负责实现对监控数据的获取及存储。
发现目标:Prometheus Server可以通过发现目标的方式监控Kubernetes集群,并支持两种发现目标的方式。第一种是修改Prometheus的配置文件,静态地指定所有监控目标;第二种是通过服务发现的方式,让Prometheus在运行时自动感知监控目标的变化,动态地发现目标。
PromQL:全称为Prometheus Query Language,是Prometheus的数据查询语言。
Grafana:一个跨平台的开源的度量分析和可视化工具,可以通过查询采集的数据,并对数据进行可视化的展示。
如图1所示,本发明的实现过程为:
步骤1.集群指标信息收集:
本实施例中使用Prometheus与Grafana构建了集群的监控及信息收集模块,其结构如图2所示。通过Node-exporter对节点上CPU、内存、网络情况等资源数据进行采集,再使用Prometheus Server收集来自Node-exporter及Kubernetes集群中的目标主机上的监控信息、存储时间序列数据,最后使用Grafana将集群中的各项监控数据可视化、通过由Prometheus Server提供的查询语言PromQL获取监控数据,并以图形界面的形式完成展示功能;
步骤1主要用于收集指标的时间序列数据。这里的指标具体指Node-exporter采集的例如CPU、内存、网络流量等指标,实际运用中可以以其中一种指标为准来作为弹性伸缩的判断指标;比如本实施例中以网络流量指标来进行弹性伸缩的判断,网络流量指标的时间序列包括若干时间点及各时间点对应的网络流量值。
步骤2.指标预测模型:根据步骤1中的监控模块收集的历史信息、使用CNN-LSTM混合网络进行指标预测,CNN-LSTM混合网络包括串联的CNN结构与LSTM结构,其中CNN结构用于提取数据特征,LSTM结构用于处理数据、完成模型的预测功能。
本步骤中所述的CNN-LSTM混合网络如图3所示。
21.CNN结构中使用两层卷积层,用于读取输入的时间序列数据、投影至特征图中并放大其中的特征,卷积核大小设置为3×3,卷积层(Conv1D)使用的特征图数量为64。将数据输入卷积层,卷积层提取特征,并最终获得包含特征值和特征值相对位置的特征图。特征图为矩阵形式。
22.CNN结构中使用一次最大池化(MaxPooling1D)操作,将一个输入的矩阵划分成更小的区域,对每个区域的值进行操作并获取一个结果值,再使用各个区域的结果值构成最终输出的新矩阵。通过池化操作可以在保证特征鲁棒性的同时对矩阵进行降维,从而提高网络的运算速度。将池化窗口大小设置为2×2。
23.CNN结构中使用一个扁平层(Flatten)对特征图执行展平操作,使被提取出的特征传入LSTM结构。
24.LSTM结构中使用两个LSTM(Long Short-Term Memory,长短期记忆网络)网络进行时序数据预测。
25.LSTM结构中使用全连接层(Dense)对数据进行处理并输出。这里的处理具体指:对提取到的特征进行分类、回归;对LSTM的数据进行转换。
步骤3.预测式弹性伸缩策略:根据步骤1中的监控模块收集的当前值和步骤2中的指标预测模型得出的预测值、使用弹性伸缩策略完成扩容及缩容操作。
31.根据步骤1中的监控模块,获取t时刻集群的监控数据信息datat。
32.使用步骤2中的指标预测模型对未来的指标情况进行预测,获取集群指标t时刻的预测值datap。
33.将目前的收集的指标值与预测值进行比对,判断未来是否出现指标高峰或指标低谷。
为避免集群中的服务出现扩缩容频繁的情况,设定阈值thresholddata,thresholddata将Kubernetes默认的弹性伸缩策略HPA中有扩容冷却时间和缩容冷却时间两个值作为参考取值。
使用公式(1)初步判断是否有必要执行扩缩容操作:
|datap-datat|>=thresholddata 公式(1)
若该公式成立,则表示预测值与当前值的差值超过阈值,认为集群中的服务有执行扩容或缩容操作的必要,进入下一项判定;若该公式不成立,则判定未来即将出现的指标高峰或指标低谷情况能够被集群容忍,不执行操作。
34.为避免当前扩缩容操作与前一次的扩缩容操作发生冲突,设置一个计时器timer,在每执行一次扩容或缩容操作前,将计时器清零并重新开始计时,以此记录扩缩容操作的间隔时间。
设置时间阈值thresholdtime,该阈值需大于扩缩容操作所需的一般时间。
使用公式(2)判断是否需要进行扩缩容操作:
timer>=thresholdtime 公式(2)
若该公式成立,则表示计时器满足间隔时间的要求,则判定需要执行扩缩容操作;若该公式不成立,则表示计时器未达到时间阈值时,进入等待状态,等待thresholdtime-timer时间后重新判断是否需要执行扩缩容操作。
35.将记录计时器timer清零。并针对当前的服务进行扩缩容操作。
本发明中步骤1每间隔5分钟采集一次指标数据,得到的数据集划分为训练集与测试集,实际应用中可以采用三七分(训练集占总的数据集的70%,测试集占总的数据集的30%)或二八分(训练集占总的数据集的80%,测试集占总的数据集的20%),通过训练集对CNN-LSTM混合网络进行训练,通过测试集预测得到当前时刻指标预测值。本实施例中的训练集包括7个星期的时间序列数据。
本发明的技术方案适用于深度学习平台,平台中的服务以容器的形式进行封装,本领域的技术人员应知一个web服务器中包括多个容器。当单个服务的业务量上升时,本发明可以提前完成对应容器的扩容操作,保证服务的质量及用户体验;当单个服务的业务量下降时,本发明可以提前完成对应容器缩容操作,避免资源浪费。
本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。
Claims (5)
1.一种基于Kubernetes集群的深度学习平台的弹性伸缩方法,其特征在于,包括:
S1、构建集群的监控与信息收集模块;
S2、根据监控与信息收集模块收集的历史指标信息,使用CNN-LSTM混合网络进行指标预测;CNN-LSTM混合网络具体包括串联的CNN结构与LSTM结构,所述CNN结构的输入为监控与信息收集模块收集的历史指标信息,CNN结构的输出作为LSTM结构的输入,LSTM结构的输出为指标预测值;CNN结构包括:第一卷积层、第二卷积层、最大池化层、扁平层;所述第一卷积层与第二卷积层用于读取输入的时间序列数据,然后投影至特征图中并放大其中的特征;最大池化层对放大后的特征图进行最大池化操作;扁平层对最大池化操作后的特征图进行展平操作;LSTM结构包括2个LSTM网络与全连接层,2个LSTM网络根据扁平层的输出进行时序数据预测,全连接层对预测结果进行处理并输出;
S3、根据监控与信息收集模块收集的指标当前值与步骤S2得到的指标预测值,判断是否进行扩容或缩容操作。
2.根据权利要求1所述的一种基于Kubernetes集群的深度学习平台的弹性伸缩方法,其特征在于,步骤S1所述监控与信息收集模块的结构包括:Kubernetes、Node-exporter、Prometheus Server;通过Node-exporter对节点上的指标信息进行采集,再使用Prometheus Server收集来自Node-exporter及Kubernetes集群中的目标主机上的监控信息、存储时间序列数据。
3.根据权利要求2所述的一种基于Kubernetes集群的深度学习平台的弹性伸缩方法,其特征在于,所述指标为CPU使用率、内存占用、网络流量中的一种。
4.根据权利要求3所述的一种基于Kubernetes集群的深度学习平台的弹性伸缩方法,其特征在于,步骤S3通过设定阈值,将指标当前值与指标预测值之差的绝对值跟设定的阈值进行比较,若绝对值大于或等于设定阈值,则认为未来会出现指标高峰或指标低谷,需要进行扩容或缩容操作;否则未来不会出现指标高峰或指标低谷。
5.根据权利要求4所述的一种基于Kubernetes集群的深度学习平台的弹性伸缩方法,其特征在于,还包括设置计时器与时间阈值;每执行一次扩容或缩容操作前,将计时器清零并重新开始计时,通过计时器记录扩容或缩容操作的间隔时间;
当未来会出现指标高峰或指标低谷时,若当前计时器的时间大于或等于时间阈值,则执行扩缩容操作,否则等待一段时间,使得当前计时器的时间大于或等于时间阈值,再进行扩缩容操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210241431.1A CN114637650B (zh) | 2022-03-11 | 2022-03-11 | 一种基于Kubernetes集群的弹性伸缩方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210241431.1A CN114637650B (zh) | 2022-03-11 | 2022-03-11 | 一种基于Kubernetes集群的弹性伸缩方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114637650A CN114637650A (zh) | 2022-06-17 |
CN114637650B true CN114637650B (zh) | 2023-04-18 |
Family
ID=81948849
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210241431.1A Active CN114637650B (zh) | 2022-03-11 | 2022-03-11 | 一种基于Kubernetes集群的弹性伸缩方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114637650B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117527591A (zh) * | 2022-07-29 | 2024-02-06 | 华为云计算技术有限公司 | 一种资源弹性伸缩方法、装置及设备 |
CN115237570B (zh) * | 2022-07-29 | 2023-06-16 | 上海佑瞻智能科技有限公司 | 一种基于云计算的策略生成方法及云平台 |
CN116414662B (zh) * | 2023-04-24 | 2023-10-10 | 山东溯源安全科技有限公司 | 一种存储空间扩容提示方法、装置、电子设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113010260A (zh) * | 2020-09-29 | 2021-06-22 | 证通股份有限公司 | 容器数量弹性伸缩方法以及容器数量弹性伸缩方法系统 |
KR102320324B1 (ko) * | 2020-11-11 | 2021-11-03 | 한국전자통신연구원 | 쿠버네티스 환경에서의 이종 하드웨어 가속기 활용 방법 및 이를 이용한 장치 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113971066A (zh) * | 2020-07-22 | 2022-01-25 | 中国科学院深圳先进技术研究院 | 一种Kubernetes集群资源动态调整方法及电子设备 |
CN112433819B (zh) * | 2020-11-30 | 2024-04-19 | 中国科学院深圳先进技术研究院 | 异构集群调度的模拟方法、装置、计算机设备及存储介质 |
CN112506444A (zh) * | 2020-12-28 | 2021-03-16 | 南方电网深圳数字电网研究院有限公司 | 基于Kubernetes集群的扩缩容控制方法和装置、电子设备 |
-
2022
- 2022-03-11 CN CN202210241431.1A patent/CN114637650B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113010260A (zh) * | 2020-09-29 | 2021-06-22 | 证通股份有限公司 | 容器数量弹性伸缩方法以及容器数量弹性伸缩方法系统 |
KR102320324B1 (ko) * | 2020-11-11 | 2021-11-03 | 한국전자통신연구원 | 쿠버네티스 환경에서의 이종 하드웨어 가속기 활용 방법 및 이를 이용한 장치 |
Non-Patent Citations (1)
Title |
---|
朱天放 ; 梁明 ; 王家乐 ; 杨志浩 ; 李亚敏 ; .基于容器云的深度学习平台设计与实现.电子设计工程.2019,(09),27-31. * |
Also Published As
Publication number | Publication date |
---|---|
CN114637650A (zh) | 2022-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114637650B (zh) | 一种基于Kubernetes集群的弹性伸缩方法 | |
CN108829494B (zh) | 基于负载预测的容器云平台智能资源优化方法 | |
CN112988398B (zh) | 一种微服务动态伸缩及迁移方法和装置 | |
CN102694868B (zh) | 一种集群系统实现及任务动态分配方法 | |
TWI725744B (zh) | 透過多層次相關性建立系統資源預測及資源管理模型的方法 | |
CN101635651A (zh) | 一种网络日志数据管理方法、系统及装置 | |
CN113032157B (zh) | 一种服务器自动智能扩缩容方法及系统 | |
CN112187512A (zh) | 一种基于流量监控的端口自动扩容方法、装置和设备 | |
CN112764920A (zh) | 一种边缘应用部署方法、装置、设备和存储介质 | |
WO2019085754A1 (zh) | 应用清理方法、装置、存储介质及电子设备 | |
US20230040051A1 (en) | Positioning method and system, and apparatus | |
CN111368166A (zh) | 资源搜索方法、资源搜索装置和计算机可读存储介质 | |
CN116866440B (zh) | 一种集群节点选择调度方法、装置、电子设备和存储介质 | |
CN110213778B (zh) | 一种网元主备智能配对的方法及装置 | |
CN108770014B (zh) | 网络服务器的计算评估方法、系统、装置及可读存储介质 | |
CN114116128B (zh) | 容器实例的故障诊断方法、装置、设备和存储介质 | |
CN115525394A (zh) | 容器数量的调整方法及装置 | |
WO2023089350A1 (en) | An architecture for a self-adaptive computation management in edge cloud | |
CN111324518B (zh) | 一种应用关联的方法及装置 | |
CN114153646A (zh) | 一种运维故障处置方法、装置及存储介质、处理器 | |
CN114035906A (zh) | 虚拟机迁移方法、装置、电子设备及存储介质 | |
CN114706893A (zh) | 故障检测方法、装置、设备及存储介质 | |
CN106648867B (zh) | 基于云数据中心的智能平滑重启方法及装置 | |
CN112436991A (zh) | 一种基于企业网的能耗感知的虚拟网络映射方法 | |
CN101482816B (zh) | 中介软件桥接系统及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |