dashboard-shell-shell 3.0.5-test.9 → 3.0.5-tsh.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (164) hide show
  1. package/assets/brand/csp/favicon.png +0 -0
  2. package/assets/icons/iconfont.css +4 -1
  3. package/assets/images/pl/dark/logo.png +0 -0
  4. package/assets/styles/all.scss +23 -3
  5. package/assets/styles/base/_variables.scss +2 -2
  6. package/assets/styles/fonts/_icons.scss +3 -2
  7. package/assets/styles/global/_button.scss +1 -1
  8. package/assets/styles/global/_form.scss +1 -0
  9. package/assets/styles/global/_select.scss +1 -1
  10. package/assets/styles/global/_tooltip.scss +5 -1
  11. package/assets/styles/themes/_light.scss +3 -3
  12. package/assets/styles/vendor/vue-select.scss +2 -1
  13. package/assets/translations/en-us.yaml +60 -0
  14. package/assets/translations/zh-hans.yaml +164 -21
  15. package/components/ButtonDropdown.vue +3 -1
  16. package/components/ClusterIconMenu.vue +1 -1
  17. package/components/CodeMirror.vue +6 -4
  18. package/components/ConsumptionGauge.vue +1 -1
  19. package/components/ContainerResourceLimit.vue +2 -2
  20. package/components/CruResource.vue +3 -2
  21. package/components/Drawer/ResourceDetailDrawer/ConfigTab.vue +22 -19
  22. package/components/Drawer/ResourceDetailDrawer/index.vue +3 -3
  23. package/components/ExplorerMembers.vue +10 -1
  24. package/components/GlobalRoleBindings.vue +52 -112
  25. package/components/PodSecurityAdmission.vue +1 -1
  26. package/components/PromptRemove.vue +23 -1
  27. package/components/RelatedResources.vue +3 -0
  28. package/components/Resource/Detail/TitleBar/composables.ts +16 -1
  29. package/components/Resource/Detail/TitleBar/index.vue +37 -24
  30. package/components/ResourceDetail/Masthead/index.vue +1 -1
  31. package/components/ResourceDetail/Masthead/latest.vue +1 -1
  32. package/components/ResourceDetail/Masthead/legacy.vue +8 -7
  33. package/components/ResourceDetail/legacy.vue +15 -15
  34. package/components/ResourceList/Masthead.vue +11 -15
  35. package/components/ResourceTable.vue +16 -0
  36. package/components/SideNav.vue +21 -21
  37. package/components/SingleClusterInfo.vue +2 -1
  38. package/components/SortableTable/THead.vue +46 -1
  39. package/components/SortableTable/index.vue +54 -18
  40. package/components/Tabbed/index.vue +6 -1
  41. package/components/auth/Principal.vue +16 -8
  42. package/components/auth/RoleDetailEdit.vue +11 -7
  43. package/components/breadcrumb/index.vue +13 -210
  44. package/components/form/ArrayList.vue +164 -147
  45. package/components/form/ArrayListGrouped.vue +5 -3
  46. package/components/form/ChangePassword.vue +1 -1
  47. package/components/form/ClusterAppearance.vue +4 -3
  48. package/components/form/Command.vue +4 -5
  49. package/components/form/Conditions.vue +15 -1
  50. package/components/form/Footer.vue +1 -0
  51. package/components/form/HealthCheck.vue +0 -2
  52. package/components/form/HookOption.vue +87 -58
  53. package/components/form/InputWithSelect.vue +8 -7
  54. package/components/form/KeyValue.vue +20 -2
  55. package/components/form/LabeledSelect.vue +3 -1
  56. package/components/form/Labels.vue +2 -2
  57. package/components/form/MatchExpressions.vue +4 -4
  58. package/components/form/Members/ClusterMembershipEditor.vue +1 -1
  59. package/components/form/Members/ClusterPermissionsEditor.vue +31 -28
  60. package/components/form/Members/MembershipEditor.vue +3 -3
  61. package/components/form/Members/ProjectMembershipEditor.vue +1 -1
  62. package/components/form/NameNsDescription.vue +4 -2
  63. package/components/form/Networking.vue +6 -9
  64. package/components/form/NodeAffinity.vue +29 -28
  65. package/components/form/PodAffinity.vue +23 -23
  66. package/components/form/Probe.vue +15 -11
  67. package/components/form/ProjectMemberEditor.vue +28 -25
  68. package/components/form/ResourceQuota/Namespace.vue +4 -4
  69. package/components/form/ResourceQuota/NamespaceRow.vue +11 -9
  70. package/components/form/ResourceQuota/Project.vue +4 -4
  71. package/components/form/ResourceQuota/ProjectRow.vue +36 -30
  72. package/components/form/ResourceSelector.vue +1 -1
  73. package/components/form/Security.vue +1 -3
  74. package/components/form/Select.vue +7 -1
  75. package/components/form/ServiceNameSelect.vue +2 -5
  76. package/components/form/ServicePorts.vue +149 -75
  77. package/components/form/Tolerations.vue +13 -9
  78. package/components/form/ValueFromResource.vue +110 -96
  79. package/components/formatter/WorkloadHealthScale.vue +4 -3
  80. package/components/nav/Group.vue +6 -0
  81. package/components/nav/Header.vue +17 -137
  82. package/components/nav/NamespaceFilter.vue +14 -19
  83. package/components/nav/TopLevelMenu.vue +99 -125
  84. package/components/nav/Type.vue +11 -3
  85. package/config/menuRouteMap.js +10 -0
  86. package/config/product/explorer.js +32 -10
  87. package/config/product/manager.js +28 -17
  88. package/config/router/navigation-guards/index.js +61 -3
  89. package/detail/node.vue +28 -23
  90. package/dialog/AddCustomBadgeDialog.vue +17 -9
  91. package/dialog/RollbackWorkloadDialog.vue +1 -1
  92. package/edit/autoscaling.horizontalpodautoscaler/external-metric.vue +1 -1
  93. package/edit/autoscaling.horizontalpodautoscaler/hpa-scaling-rule.vue +9 -6
  94. package/edit/autoscaling.horizontalpodautoscaler/index.vue +3 -1
  95. package/edit/autoscaling.horizontalpodautoscaler/metric-identifier.vue +2 -2
  96. package/edit/autoscaling.horizontalpodautoscaler/metric-object-reference.vue +7 -5
  97. package/edit/autoscaling.horizontalpodautoscaler/metric-target.vue +5 -3
  98. package/edit/autoscaling.horizontalpodautoscaler/metrics-row.vue +2 -2
  99. package/edit/autoscaling.horizontalpodautoscaler/object-metric.vue +2 -2
  100. package/edit/autoscaling.horizontalpodautoscaler/pod-metric.vue +1 -1
  101. package/edit/autoscaling.horizontalpodautoscaler/resource-metric.vue +2 -2
  102. package/edit/configmap.vue +4 -0
  103. package/edit/monitoring.coreos.com.alertmanagerconfig/receiverConfig.vue +32 -8
  104. package/edit/monitoring.coreos.com.alertmanagerconfig/types/dingding.vue +32 -0
  105. package/edit/monitoring.coreos.com.alertmanagerconfig/types/message.vue +52 -0
  106. package/edit/monitoring.coreos.com.alertmanagerconfig/types/snmp.vue +45 -0
  107. package/edit/monitoring.coreos.com.alertmanagerconfig/types/work.vue +31 -0
  108. package/edit/networking.k8s.io.ingress/Certificate.vue +14 -5
  109. package/edit/networking.k8s.io.ingress/DefaultBackend.vue +2 -2
  110. package/edit/networking.k8s.io.ingress/Rule.vue +5 -11
  111. package/edit/networking.k8s.io.ingress/RulePath.vue +105 -96
  112. package/edit/networking.k8s.io.networkpolicy/PolicyRule.vue +3 -3
  113. package/edit/networking.k8s.io.networkpolicy/PolicyRulePort.vue +4 -2
  114. package/edit/networking.k8s.io.networkpolicy/PolicyRuleTarget.vue +12 -11
  115. package/edit/networking.k8s.io.networkpolicy/index.vue +1 -1
  116. package/edit/persistentvolume/index.vue +3 -1
  117. package/edit/persistentvolumeclaim.vue +2 -0
  118. package/edit/provisioning.cattle.io.cluster/tabs/Basics.vue +1 -1
  119. package/edit/secret/index.vue +2 -2
  120. package/edit/service.vue +4 -1
  121. package/edit/storage.k8s.io.storageclass/index.vue +10 -8
  122. package/edit/storage.k8s.io.storageclass/provisioners/kubernetes.io/aws-ebs.vue +34 -27
  123. package/edit/storage.k8s.io.storageclass/provisioners/kubernetes.io/gce-pd.vue +15 -13
  124. package/edit/storage.k8s.io.storageclass/provisioners/kubernetes.io/vsphere-volume.vue +41 -39
  125. package/edit/workload/Job.vue +31 -34
  126. package/edit/workload/Upgrading.vue +5 -5
  127. package/edit/workload/index.vue +19 -15
  128. package/edit/workload/storage/Mount.vue +1 -0
  129. package/edit/workload/storage/awsElasticBlockStore.vue +9 -7
  130. package/edit/workload/storage/azureDisk.vue +14 -10
  131. package/edit/workload/storage/azureFile.vue +9 -7
  132. package/edit/workload/storage/csi/index.vue +6 -9
  133. package/edit/workload/storage/emptyDir.vue +7 -5
  134. package/edit/workload/storage/gcePersistentDisk.vue +9 -7
  135. package/edit/workload/storage/hostPath.vue +7 -5
  136. package/edit/workload/storage/nfs.vue +8 -6
  137. package/edit/workload/storage/persistentVolumeClaim/index.vue +12 -10
  138. package/edit/workload/storage/persistentVolumeClaim/persistentvolumeclaim.vue +20 -15
  139. package/edit/workload/storage/secret.vue +9 -6
  140. package/edit/workload/storage/vsphereVolume.vue +11 -7
  141. package/initialize/app-extended.js +7 -1
  142. package/list/management.cattle.io.podsecurityadmissionconfigurationtemplate.vue +8 -6
  143. package/mixins/create-edit-view/impl.js +10 -0
  144. package/models/provisioning.cattle.io.cluster.js +19 -18
  145. package/models/workload.js +2 -2
  146. package/package.json +1 -1
  147. package/pages/account/index.vue +93 -58
  148. package/pages/auth/login.vue +1 -1
  149. package/pages/auth/setup.vue +36 -17
  150. package/pages/c/_cluster/explorer/ConfigBadge.vue +1 -1
  151. package/pages/c/_cluster/explorer/index.vue +2 -1
  152. package/pages/c/_cluster/explorer/tools/index.vue +6 -6
  153. package/pages/home.vue +55 -13
  154. package/plugins/dashboard-store/actions.js +1 -1
  155. package/rancher-components/Banner/Banner.vue +14 -2
  156. package/rancher-components/Form/Radio/RadioGroup.vue +9 -1
  157. package/rancher-components/LabeledTooltip/LabeledTooltip.vue +31 -2
  158. package/scripts/build-pkg.sh +18 -23
  159. package/scripts/publish-shell.sh +1 -1
  160. package/store/i18n.js +1 -0
  161. package/store/type-map.js +0 -2
  162. package/utils/error.js +23 -3
  163. package/utils/errorTranslate.json +377 -8
  164. package/utils/errorTranslateNew.json +39 -0
Binary file
@@ -213,4 +213,7 @@ src: url('iconfont.woff2?t=1753758703852') format('woff2'),
213
213
  }
214
214
  .icon-mingming:before {
215
215
  content: "\e62c";
216
- }
216
+ }
217
+ .icon-default:before {
218
+ content: "\e61c";
219
+ }
Binary file
@@ -1,3 +1,21 @@
1
+ /* Chrome, Edge, Safari */
2
+ input[type="password"]::-webkit-textfield-decoration-container,
3
+ input[type="password"]::-webkit-inner-spin-button,
4
+ input[type="password"]::-webkit-clear-button {
5
+ display: none !important;
6
+ }
7
+
8
+ /* Edge / IE */
9
+ input[type="password"]::-ms-reveal {
10
+ display: none !important;
11
+ }
12
+
13
+ /* Firefox */
14
+ input[type="password"]::-moz-reveal {
15
+ display: none !important;
16
+ }
17
+
18
+
1
19
  .info-tab-title{
2
20
  font-size: 14px;
3
21
  line-height: 19px;
@@ -22,8 +40,8 @@ ul{
22
40
  }
23
41
 
24
42
  .radio-group{
25
- display: flex !important;
26
- }
43
+ display: flex !important;
44
+ }
27
45
 
28
46
  .clearFix{
29
47
  font-size: 16px;
@@ -56,7 +74,9 @@ ul{
56
74
  }
57
75
 
58
76
  :deep() .vs__actions:after {
59
- padding-top: 10px;
77
+ // padding-top: 10px;
78
+ display: flex;
79
+ align-items: center;
60
80
  }
61
81
  .TEXTAREA{
62
82
  border: solid var(--border-width) var(--input-border);
@@ -12,8 +12,8 @@ $unlabeled-input-height: 40px;
12
12
  $unlabaled-select-padding: 3px 0;
13
13
  $footer-height: 60px;
14
14
 
15
- $input-height: 32px;
16
- $unlabeled-input-height: 32px;
15
+ $input-height: 30px;
16
+ $unlabeled-input-height: 30px;
17
17
  $input-width: 400px;
18
18
 
19
19
 
@@ -38,8 +38,9 @@ $icon-inverse: #fff !default;
38
38
 
39
39
  // Sizes
40
40
  .icon-fw {
41
- width: math.div(18em, 14);
42
- text-align: center;
41
+ width: 32px;
42
+ // width: math.div(18em, 14);
43
+ // text-align: center;
43
44
  }
44
45
 
45
46
  .icon-sm {
@@ -120,7 +120,7 @@ button,
120
120
  line-height: $btn-sm-height - 2px;
121
121
 
122
122
  &:focus, &.focused {
123
- border: 0;
123
+ // border: 0;
124
124
  }
125
125
  }
126
126
  }
@@ -37,6 +37,7 @@ TEXTAREA,
37
37
  color: var(--input-label);
38
38
  }
39
39
  &:hover:not(.focused):not(:focus):not(.disabled):not(:disabled):not(.view) {
40
+ box-shadow: 0 4px 6px 0 var(--input-border-box-shadow);
40
41
  &, .vs__dropdown-menu {
41
42
  border-color: var(--input-hover-border);
42
43
  }
@@ -56,7 +56,7 @@
56
56
 
57
57
  .vs__dropdown-toggle{
58
58
  border: solid var(--border-width) var(--input-border);
59
- height: 32px;
59
+ // height: 30px;
60
60
  }
61
61
  // .vs__dropdown-toggle,
62
62
  .vs__dropdown-toggle > * {
@@ -147,7 +147,7 @@
147
147
  }
148
148
 
149
149
  .v-popper__popper.v-popper--theme-dropdown {
150
- border-radius: 4px;
150
+ border-radius: 0px;
151
151
  z-index: z-index('tooltip');
152
152
  border: 1px solid #d9d9d9 !important;
153
153
 
@@ -157,6 +157,10 @@
157
157
  }
158
158
  }
159
159
  }
160
+ .v-popper__popper .v-popper__arrow-container {
161
+ display: none;
162
+ }
163
+
160
164
 
161
165
  .v-popper {
162
166
  display: inline;
@@ -268,9 +268,9 @@ BODY, .theme-light {
268
268
 
269
269
 
270
270
  --warning : #{$warning};
271
- --warning-text : #{contrast-color($warning)};
271
+ --warning-text : #fff;
272
272
  --warning-hover-bg : #{darken($warning, 10%)};
273
- --warning-hover-text : #{saturate($lightest, 20%)};
273
+ --warning-hover-text : #fff;
274
274
  --warning-active-bg : #{darken($warning, 25%)};
275
275
  --warning-active-text : #{contrast-color(darken($warning, 25%))};
276
276
  --warning-border : #{$warning};
@@ -353,7 +353,7 @@ BODY, .theme-light {
353
353
 
354
354
  &.btn:hover {
355
355
  color: var(--disabled-hover-text);
356
- background: var(--disabled-hover-bg);
356
+ background-color: #ccc !important;
357
357
  transition: all 0.3s ease;
358
358
  }
359
359
 
@@ -159,9 +159,10 @@
159
159
  content: $icon-chevron-down;
160
160
  font-family: 'icons';
161
161
  height: 32px;
162
- padding-top: 8px;
163
162
  color: var(--secondary);
164
163
  margin-right: 9px;
164
+ display: flex;
165
+ align-items: center;
165
166
  }
166
167
  }
167
168
 
@@ -762,6 +762,63 @@ assignTo:
762
762
  }
763
763
  workspace: Workspace
764
764
 
765
+ stateLabel:
766
+ Images preloaded: Images preloaded
767
+ Waiting Reboot: Waiting Reboot
768
+ warning: warning
769
+ upgrading: upgrading
770
+ Upgrading: Upgrading
771
+ Succeeded: Succeeded
772
+ Pending migration: Pending migration
773
+ Imagepullbackoff: Imagepullbackoff
774
+ VM error: VM error
775
+ Locked: Locked
776
+ Bound: Bound
777
+ Running: Running
778
+ Off: Off
779
+ Stopped: Stopped
780
+ pending: pending
781
+ Pending: Pending
782
+ failed: failed
783
+ Failed: Failed
784
+ Paused: Paused
785
+ Stopping: Stopping
786
+ Progressing: Progressing
787
+ Scheduling: Scheduling
788
+ Terminating: Terminating
789
+ Scheduled: Scheduled
790
+ Unknown: Unknown
791
+ CrashLoopBackOff: CrashLoopBackOff
792
+ Active: Active
793
+ Inactive: Inactive
794
+ Ready: Ready
795
+ Not Ready: Not Ready
796
+ Not ready: Not ready
797
+ Degraded: Degraded
798
+ Removing: Removing
799
+ Validated: Validated
800
+ Validating: Validating
801
+ Healthy: Healthy
802
+ Warning: Warning
803
+ Error: Error
804
+ Cordoned: Cordoned
805
+ Starting: Starting
806
+ Uploading: Uploading
807
+ Downloading: Downloading
808
+ In-use: In-use
809
+ Suspended: Suspended
810
+ Disabled: Disabled
811
+ Enabled: Enabled
812
+ Maintenance: Maintenance
813
+ Migrating: Migrating
814
+ Restoring: Restoring
815
+ Resizing: Resizing
816
+ Exporting: Exporting
817
+ Unavailable: Unavailable
818
+ Unschedulable: Unschedulable
819
+ VMI_WAITINH: VMI_WAITINH
820
+ Entering maintenance mode: Entering maintenance mode
821
+
765
822
  asyncButton:
766
823
  alt:
767
824
  iconAlt: Async button icon
@@ -6407,6 +6464,9 @@ storageClass:
6407
6464
  tooltip: By default the default storage class on the host Harvester cluster is used.
6408
6465
 
6409
6466
  tableHeaders:
6467
+ claimedby: claimedby
6468
+ pod: pod
6469
+ volumeattributesclass: volumeattributesclass
6410
6470
  assuredConcurrencyShares: Assured Concurrency Shares
6411
6471
  accessKey: Access Key
6412
6472
  addressType: Address Type
@@ -111,6 +111,8 @@ generic:
111
111
  =1 {匹配 {total, number} 个中的 1 个:"{sample}"}
112
112
  other {匹配 {total, number} 中的 {matched, number} 个,包括 "{sample}"}
113
113
  }
114
+ ariaLabel:
115
+ genericAddRow: 添加
114
116
 
115
117
  graph:
116
118
  loading: 正在加载 Chart 数据...
@@ -216,7 +218,7 @@ product:
216
218
  backup: Rancher 备份
217
219
  cis: CIS Benchmark
218
220
  ecm: Cluster Manager
219
- explorer: 集群浏览器
221
+ explorer: 控制台
220
222
  fleet: 持续交付
221
223
  longhorn: Longhorn
222
224
  manager: 集群管理
@@ -593,11 +595,28 @@ assignTo:
593
595
  workspace: 工作空间
594
596
 
595
597
  stateLabel:
598
+ Wait Check-In: 等待加入
599
+ Provisioning: 配置中
600
+ Waiting: 等待中
601
+ waiting: 等待中
602
+ Images preloading: 图像预加载中
603
+ Images preloaded: 图像已预加载
604
+ Waiting Reboot: 等待重启
605
+ warning: 警告
606
+ upgrading: 升级中
607
+ Upgrading: 升级中
608
+ Succeeded: 成功
609
+ Pending migration: 待迁移
610
+ Imagepullbackoff: 镜像拉取失败
611
+ VM error: 错误
612
+ Locked: 锁定
596
613
  Bound: 已绑定
597
614
  Running: 运行中
598
615
  Off: 关闭
599
616
  Stopped: 关闭
617
+ pending: 准备中
600
618
  Pending: 准备中
619
+ failed: 失败
601
620
  Failed: 失败
602
621
  Paused: 暂停
603
622
  Stopping: 停止中
@@ -637,7 +656,6 @@ stateLabel:
637
656
  VMI_WAITINH: 等待中
638
657
  Entering maintenance mode: 维护中
639
658
 
640
-
641
659
  buttonLabel:
642
660
  Stop: 停止
643
661
  Restart: 重启
@@ -671,7 +689,7 @@ buttonLabel:
671
689
  Errors:
672
690
  changePassword:
673
691
  Password must be at least 12 characters: 密码至少为12个字符
674
- invalid current password: 当前的密码输入错误
692
+ "invalid current password": 当前的密码输入错误
675
693
 
676
694
 
677
695
  asyncButton:
@@ -781,6 +799,10 @@ asyncButton:
781
799
  action: 恢复编排
782
800
  success: 已恢复编排
783
801
  waiting: 正在恢复编排
802
+ redeploy:
803
+ action: 重新部署
804
+ success: 重新部署成功
805
+ waiting: 正在重新部署工作负载
784
806
  rollback:
785
807
  action: 回滚
786
808
  success: 已回滚
@@ -1187,6 +1209,9 @@ compliance:
1187
1209
  testsToSkip: 要跳过的测试
1188
1210
 
1189
1211
  cluster:
1212
+ jwtAuthentication:
1213
+ banner: "使用 JWT 认证的服务账户访问可在集群创建后通过以下路径配置:<br>
1214
+ <code>集群管理 > 高级 > JWT 认证</code>"
1190
1215
  addonChart:
1191
1216
  rancher-vsphere-cpi: vSphere CPI 配置
1192
1217
  rancher-vsphere-csi: vSphere CSI 配置
@@ -1438,6 +1463,25 @@ cluster:
1438
1463
  name:
1439
1464
  label: 集群名称
1440
1465
  placeholder: 请输入集群名称
1466
+ directoryConfig:
1467
+ title: 数据目录配置
1468
+ banner: 集群创建后,数据目录配置将无法更改
1469
+ radioInput:
1470
+ defaultLabel: 使用默认数据目录配置
1471
+ commonLabel: 为数据目录配置使用公共基础目录(子系统路径将使用子目录:system-agent、provisioning 和 distro)
1472
+ customLabel: 使用自定义数据目录
1473
+ common:
1474
+ label: 数据目录基础路径
1475
+ tooltip: 数据目录基础路径。我们将为每个目录附加相应的子目录(/agent、/provisioning 以及 /rke2 或 /k3s)
1476
+ systemAgent:
1477
+ label: 系统代理目录路径
1478
+ tooltip: 用于存储系统代理连接信息和计划的数据目录
1479
+ provisioning:
1480
+ label: 供应目录路径
1481
+ tooltip: 用于存储供应相关文件的数据目录
1482
+ k8sDistro:
1483
+ label: K8s 发行版目录路径
1484
+ tooltip: 用于存储 K8s 发行版的数据目录
1441
1485
  machineConfig:
1442
1486
  banner:
1443
1487
  updateInfo: 创建一个池用来更新主机配置
@@ -1755,6 +1799,9 @@ cluster:
1755
1799
  rke2-k3-reprovisioning: '更改集群配置可能导致节点重新配置。详情请参见 <a target="blank" href="{docsBase}/how-to-guides/new-user-guides/launch-kubernetes-with-rancher/rke1-vs-rke2-differences#cluster-api" target="_blank" rel="noopener nofollow">文档</a>。'
1756
1800
  desiredNodeGroupWarning: 没有可用于运行 Cluster Agent 的节点。要让集群变为 Active 状态,至少需要有 1 个可用的节点。
1757
1801
  haveArgInfo: 所选 Kubernetes 版本的配置信息不可用。此屏幕中可用的选项将受到限制,你可能需要使用 YAML 编辑器。
1802
+ cloudProviderAddConfig: '在 Kubernetes 1.27 或更高版本中,<b>Amazon</b> 云提供商需要额外配置。请参阅<a href="https://ranchermanager.docs.rancher.com/how-to-guides/new-user-guides/kubernetes-clusters-in-rancher-setup/set-up-cloud-providers/amazon" target="_blank" rel="noopener noreferrer nofollow">文档</a>以了解更多信息。'
1803
+ cloudProviderUnsupportedAzure: '在 Kubernetes 1.30 或更高版本中,<b>Azure</b> 云提供商已被移除。请参阅<a href="https://ranchermanager.docs.rancher.com/how-to-guides/new-user-guides/kubernetes-clusters-in-rancher-setup/set-up-cloud-providers/azure" target="_blank" rel="noopener noreferrer nofollow">文档</a>以了解更多信息。'
1804
+ cloudProviderMigrateAzure: '在 Kubernetes 1.30 或更高版本中,<b>Azure</b> 云提供商已被移除。要升级 Kubernetes,应先将集群迁移到外部提供商。请参阅<a href="https://ranchermanager.docs.rancher.com/how-to-guides/new-user-guides/kubernetes-clusters-in-rancher-setup/set-up-cloud-providers/azure" target="_blank" rel="noopener noreferrer nofollow">文档</a>以了解更多信息。'
1758
1805
  rkeTemplateUpgrade: 模板修订版 {name} 可用于升级
1759
1806
 
1760
1807
  availabilityWarnings:
@@ -1835,10 +1882,13 @@ cluster:
1835
1882
  searchPlaceholder: 请输入搜索
1836
1883
  noResults: 没有匹配的结果
1837
1884
  privateRegistry:
1838
- label: Rancher 系统容器镜像启用集群级别的容器镜像仓库
1839
- description: "如果启用,Rancher 将在集群配置期间从该镜像仓库中拉取容器镜像。默认情况下,Rancher 在安装 Rancher 的官方 Helm Chart 应用程序时也会使用此镜像仓库。如果集群级别的镜像仓库被禁用,将从全局设置中的系统默认镜像仓库中拉取系统镜像。"
1840
- docsLinkRke2: "如需配置私有镜像仓库 mirror 的帮助,请参阅 RKE2 <a href=\"https://docs.rke2.io/install/private_registry\" target=\"_blank\">文档</a>。"
1841
- docsLinkK3s: "如需配置私有镜像仓库 mirror 的帮助,请参阅 K3s <a href=\"https://docs.k3s.io/installation/private-registry\" target=\"_blank\">文档</a>。"
1885
+ header: Rancher 系统容器镜像仓库
1886
+ label: Rancher 系统容器镜像启用集群范围容器镜像仓库
1887
+ description: "如果启用,Rancher 将在集群配置期间从此镜像仓库拉取容器镜像。默认情况下,Rancher 在安装官方 Helm Chart 应用时也会使用此镜像仓库。如果禁用集群范围镜像仓库,系统镜像将从全局设置中的系统默认镜像仓库拉取。"
1888
+ importedDescription: "默认情况下,Rancher 在安装官方 Helm Chart 应用时也会使用此镜像仓库。如果禁用集群范围镜像仓库,系统镜像将从全局设置中的系统默认镜像仓库拉取。"
1889
+ docsLinkRke2: "有关配置私有镜像仓库的帮助,请参阅 RKE2 <a href=\"https://docs.rke2.io/install/private_registry\" target=\"_blank\">文档。</a>"
1890
+ docsLinkK3s: "有关配置私有镜像仓库的帮助,请参阅 K3s <a href=\"https://docs.k3s.io/installation/private-registry\" target=\"_blank\">文档。</a>"
1891
+ privateRegistryUrlError: 镜像仓库必须是有效的 URL。协议头可选。
1842
1892
  provider:
1843
1893
  aliyunecs: Aliyun ECS
1844
1894
  aliyunkubernetescontainerservice: Alibaba ACK
@@ -1959,7 +2009,19 @@ cluster:
1959
2009
  drain:
1960
2010
  label: 清空节点
1961
2011
  toolTip: 清空操作预先移除每个节点上的 Pod,使得升级中的节点上没有运行的工作负载。不清空的升级速度更快,造成的混乱更少,但是 Pod 仍可能根据进行中的升级进行重启。
1962
- deleteEmptyDir: "默认情况下,使用 emptyDir 卷的 pod 会在升级时被删除。在 pod 生命周期中依赖于 emptyDir 持久卷的操作可能会受到影响。"
2012
+ deleteEmptyDir:
2013
+ warning: "默认情况下,使用 emptyDir 卷的 Pod 将在升级时被删除。依赖 emptyDir 卷在 Pod 生命周期内持久化的操作可能会受到影响。"
2014
+ label: 删除使用 emptyDir 卷的 Pod
2015
+ tooltip: emptyDir 卷通常用于临时数据,但其中的数据将被永久删除。如果未设置此选项且存在使用 emptyDir 的 Pod,排水操作将失败。
2016
+ force:
2017
+ label: 删除独立 Pod
2018
+ tooltip: 删除不受工作负载控制器(Deployment、Job 等)管理的独立 Pod。如果未设置此选项且存在独立 Pod,排水操作将失败。
2019
+ gracePeriod:
2020
+ checkboxLabel: 覆盖 Pod 终止宽限期
2021
+ inputLabel: 宽限期
2022
+ timeout:
2023
+ checkboxLabel: 超时时间
2024
+ inputLabel: 排水超时
1963
2025
  truncateHostnames: 将主机名截断为 15 个字符来兼容 NetBIOS。
1964
2026
  address:
1965
2027
  tooltip: 创建集群后无法更改集群网络值。
@@ -2408,7 +2470,12 @@ glance:
2408
2470
  eventsTable: 完整事件列表
2409
2471
 
2410
2472
  clusterBadge:
2473
+ badgeAppearance: 集群徽章外观
2474
+ clusterComment: "集群注释 - {text}"
2475
+ customizeAppearance: 自定义外观
2411
2476
  addLabel: 添加集群徽章
2477
+ setClusterAppearance: 集群外观设置
2478
+ customize: 自定义
2412
2479
  editLabel: 编辑集群徽章
2413
2480
  modal:
2414
2481
  title: 自定义集群徽章
@@ -2573,7 +2640,7 @@ ingress:
2573
2640
  required: 目标服务是必填的
2574
2641
  warning: "警告:默认后端将全局用于整个集群"
2575
2642
  ingressClass:
2576
- label: IngressClass
2643
+ label: Ingress类
2577
2644
  rules:
2578
2645
  addPath: 添加路径
2579
2646
  addRule: 添加规则
@@ -2914,7 +2981,7 @@ logging:
2914
2981
  default: /run/log/journal
2915
2982
  elasticsearch:
2916
2983
  host: 主机
2917
- scheme: Scheme
2984
+ scheme: 协议
2918
2985
  port: 端口
2919
2986
  indexName: 索引名称
2920
2987
  user: 用户名
@@ -3170,13 +3237,14 @@ login:
3170
3237
  label: 记住用户名
3171
3238
 
3172
3239
  logout:
3173
- message: 正在退出登陆...
3240
+ message: 正在退出登录...
3174
3241
 
3175
3242
  managementNode:
3176
3243
  customName: 自定义名称
3177
3244
 
3178
3245
  members:
3179
3246
  clusterMembers: 集群成员
3247
+ memberRoles: 成员角色
3180
3248
  clusterAndProject: 集群和项目成员
3181
3249
  createActionLabel: 添加
3182
3250
  clusterMembership: 集群成员
@@ -3753,6 +3821,7 @@ node:
3753
3821
  operatingSystem: 操作系统
3754
3822
  osImage: 镜像
3755
3823
  systemUUID: 系统 UUID
3824
+ swap: 内存交换区
3756
3825
  pods: Pod
3757
3826
  taints: 污点
3758
3827
  actions:
@@ -4549,6 +4618,12 @@ promptRemove:
4549
4618
  promptRemoveApp:
4550
4619
  removeCrd: "删除与此应用关联的 CRD"
4551
4620
 
4621
+ promptRemoveText:
4622
+ globalrole: "角色"
4623
+ globalroles: "角色"
4624
+ roletemplate: "角色"
4625
+ roletemplates: "角色"
4626
+
4552
4627
  promptRestore:
4553
4628
  title: 还原快照
4554
4629
  name: 名称
@@ -4571,6 +4646,10 @@ promptRollback:
4571
4646
  multipleWorkloadError: "一次只能回滚一个工作负载。"
4572
4647
  singleRevisionBanner: 没有可用于回滚的修订版本。
4573
4648
 
4649
+ promptRedeploy:
4650
+ title: 重新部署 {type}?
4651
+ attemptingToRedeploy: "您正在尝试重新部署 {type} {names} 重新部署将重启所选工作负载,可能导致暂时性服务中断。"
4652
+
4574
4653
  promptSaveAsRKETemplate:
4575
4654
  title: 将 {cluster} 转换为新的 RKE 模板
4576
4655
  name: 集群模板名称
@@ -5421,6 +5500,10 @@ storageClass:
5421
5500
  tooltip: 默认使用主机 Cloud 集群上的默认存储类。
5422
5501
 
5423
5502
  tableHeaders:
5503
+ claimedby: 占用者
5504
+ pod: pod
5505
+ ip: ip
5506
+ volumeattributesclass: 卷属性类
5424
5507
  assuredConcurrencyShares: 确保并发份额
5425
5508
  accessKey: Access Key
5426
5509
  addressType: 地址类型
@@ -5498,7 +5581,7 @@ tableHeaders:
5498
5581
  iP: IP
5499
5582
  image: 镜像
5500
5583
  imageSize: 大小
5501
- ingressClass: IngressClass
5584
+ ingressClass: Ingress 类
5502
5585
  ingressDefaultBackend: 默认
5503
5586
  ingressTarget: 目标
5504
5587
  internalExternalIp: 外网 IP/内网 IP
@@ -5527,7 +5610,12 @@ tableHeaders:
5527
5610
  missingPL: 缺少 PL
5528
5611
  memory: 内存
5529
5612
  monitored: 已监控
5613
+ request: 资源请求量
5614
+ limit: 资源限制
5530
5615
  name: 名称
5616
+ maxunavailable: 最大不可用数
5617
+ minAvailable: 最小可用数
5618
+ alloweddisruptions: 允许中断数
5531
5619
  nameDisplay: 显示名称
5532
5620
  nameUnlinked: 名称
5533
5621
  namespace: 资源组
@@ -5597,6 +5685,11 @@ tableHeaders:
5597
5685
  scope: 范围
5598
5686
  selector: 选择器
5599
5687
  secrets: 密文
5688
+ secret:
5689
+ project-clone: 由 Project Secret 创建
5690
+ project-clone-tooltip: 是否由 Project Scoped Secret 在本命名空间创建
5691
+ project-scoped: Project Secret
5692
+ project-scoped-tooltip: 此 Project Scoped Secret 会在所属命名空间中生成匹配的 Secret
5600
5693
  schedule: 调度
5601
5694
  service: 服务
5602
5695
  serviceAccounts: Service Account
@@ -5642,6 +5735,7 @@ tableHeaders:
5642
5735
  volume: 卷
5643
5736
  volumeMode: 卷模式
5644
5737
  weight: 权重
5738
+ action: 操作
5645
5739
  target:
5646
5740
  router:
5647
5741
  label: 路由
@@ -5935,7 +6029,9 @@ workload:
5935
6029
  exec: 容器内运行的命令以 0 状态退出
5936
6030
  image: 容器镜像
5937
6031
  imagePullPolicy: 镜像拉取策略
5938
- imagePullSecrets: 拉取密文
6032
+ imagePullSecrets:
6033
+ label: 镜像拉取密钥
6034
+ tooltip: 必须为 kubernetes.io/dockercfg 或 kubernetes.io/dockerconfigjson 类型
5939
6035
  init: 初始化容器
5940
6036
  lifecycleHook:
5941
6037
  postStart:
@@ -5963,7 +6059,7 @@ workload:
5963
6059
  label: 端口
5964
6060
  placeholder: 例如:3000
5965
6061
  scheme:
5966
- label: Scheme
6062
+ label: 协议
5967
6063
  placeholder: 例如:HTTP
5968
6064
  httpHeaders:
5969
6065
  title: HTTP 头部
@@ -6014,7 +6110,7 @@ workload:
6014
6110
  hostPID: 使用主机 PID 资源组
6015
6111
  podFsGroup: Pod 文件系统组
6016
6112
  privileged:
6017
- label: Privileged
6113
+ label: 特权模式
6018
6114
  'false': 否
6019
6115
  'true': "是:容器可以完全访问主机"
6020
6116
  readOnlyRootFilesystem:
@@ -6161,7 +6257,7 @@ workload:
6161
6257
  replicas: 副本数量
6162
6258
  showTabs: '显示高级选项'
6163
6259
  scheduling:
6164
- activeDeadlineSeconds: 判定 Pod 是否活跃的截止时间
6260
+ activeDeadlineSeconds: 判定Pod是否活跃的截止时间
6165
6261
  activeDeadlineSecondsTip: 系统将 Pod 判定为失败,并终止其关联容器前的等待时长
6166
6262
  affinity:
6167
6263
  addNodeSelector: 添加节点选择器
@@ -6331,7 +6427,7 @@ workload:
6331
6427
  pod: Pod 是你可以在 Kubernetes 中创建和管理的最小可部署计算单元。Pod 是一个或多个容器,具有共享的存储和网络资源以及运行容器的规范。
6332
6428
  upgrading:
6333
6429
  activeDeadlineSeconds:
6334
- label: 判定 Pod 是否活跃的截止时间
6430
+ label: 判定Pod是否活跃的截止时间
6335
6431
  tip: 系统将 Pod 判定为失败,并终止其关联容器前的等待时长
6336
6432
  concurrencyPolicy:
6337
6433
  label: 并发
@@ -6482,7 +6578,7 @@ typeDescription:
6482
6578
  kubevirt.io.virtualmachine: 云虚拟机是一种安全可靠、弹性可伸缩的云计算服务器,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。
6483
6579
  harvesterhci.io.volume: 虚拟磁盘具有高性能和低时延的特点,支持随机读写,可以像使用物理硬盘一样,在虚拟机上进行格式化并建立文件系统来使用块存储。
6484
6580
  harvesterhci.io.volumesnapshot: 虚拟磁盘快照功能通过捕获虚拟磁盘在特定时间点的状态,生成增量副本,支持快速回滚磁盘状态,为测试验证、容灾恢复提供高效解决方案
6485
- harvesterhci.io.virtualmachinebackup: 虚拟机备份功能通过创建包含磁盘数据、配置信息的完整副本,支持跨环境恢复及长期数据保护,为系统故障或灾难提供可靠容灾方案。
6581
+ harvesterhci.io.virtualmachinebackup: 虚拟机备份恢复功能通过创建包含磁盘数据、配置信息的完整副本,支持跨环境恢复及长期数据保护,为系统故障或灾难提供可靠容灾方案。
6486
6582
  harvesterhci.io.schedulevmbackup: 虚拟机备份策略功能通过创建定时任务,对虚拟机进行完整备份或增量快照,为用户提供自动化的数据备份和容灾方案。
6487
6583
  harvesterhci.io.vmsnapshot: 虚拟机快照功能通过捕获特定时间点的系统状态,支持快速恢复虚拟机状态,为数据备份与系统调试提供灵活解决方案。
6488
6584
  harvesterhci.io.keypair: SSH密钥对是一种安全便捷的登录认证方式,您可以实现免密码远程登录,并在无需人工干预的情况下进行安全的自动化操作,实现服务器配置和应用程序部署的自动化。
@@ -6509,7 +6605,34 @@ typeDescription:
6509
6605
  management.cattle.io.setting: 统一配置平台基础选项与全局设置,支持CA证书、密码规则、域名、Token时效等核心配置。
6510
6606
  management.cattle.io.user: 用于管理用户账号,支持创建、维护用户信息,可设置用户权限、管理密码等,保障系统资源仅由授权用户访问,提升系统安全性。
6511
6607
  harvesterhci.io.management.cluster: 提供虚拟化集群的实时健康状态监控、版本号管理及资源负载管理,支持批量导入/删除集群、配置调优与权限分级功能,实现高效运维管控。
6608
+ projectsnamespaces: 项目/资源组是用于在集群内实现资源隔离和多租户管理的基本单元。通过项目可以对一组命名空间及相关资源进行统一的权限、配额和策略管理。
6609
+ members: 集群和项目成员管理页面用于配置用户和用户组对资源的访问权限。通过角色绑定(RBAC)来控制成员在集群或项目范围内的操作权限,实现安全的协同管理。
6610
+ event: 事件记录了 Kubernetes 资源(如 Pod、节点等)的状态变化、错误信息和生命周期事件。通过查看事件可以快速诊断应用部署和运行中的问题。
6611
+ autoscaling.horizontalpodautoscaler: HorizontalPodAutoscaler (HPA) 用于根据观察到的 CPU 利用率或其他自定义指标自动调整工作负载的 Pod 副本数量,实现应用的水平自动扩缩容。
6612
+ networking.k8s.io.ingress: Ingress 用于管理对集群内服务的外部访问,提供 HTTP 和 HTTPS 路由规则。通过 Ingress 可以配置负载均衡、SSL 终止和基于名称的虚拟主机等能力。
6613
+ service: Service 用于将一组 Pod 暴露为网络服务,提供稳定的 IP 地址和 DNS 名称,并实现负载均衡。Service 确保您的应用程序在网络中可被发现和可靠访问。
6614
+ storage.k8s.io.storageclass: 存储池页面用于集中管理和配置集群中的持久化存储资源。您可以在此查看存储提供商、创建存储类(StorageClass)并为有状态应用动态提供持久卷(Persistent Volume)。
6615
+ persistentvolume: PersistentVolume (PV) 是集群中的一块持久化存储资源,由管理员预先配置或通过存储类动态供应。PV 为需要持久化数据的应用提供独立于 Pod 生命周期的存储空间。
6616
+ persistentvolumeclaim: 虚拟磁盘是提供给虚拟机使用的持久化存储设备,为虚拟机操作系统和应用数据提供独立的、可扩展的存储空间。虚拟磁盘的生命周期可以与虚拟机解耦,实现数据的持久化保存。
6617
+ configmap: ConfigMap 用于将非机密的配置数据以键值对形式保存,并注入到 Pod 中作为环境变量、命令行参数或配置文件使用。实现应用配置与容器镜像的分离,便于配置管理。
6618
+ secret: Secret 用于存储和管理敏感信息,如密码、OAuth 令牌和 SSH 密钥等。Secret 以加密方式保存数据,并可以安全地挂载到 Pod 中供容器使用,避免敏感信息硬编码。
6619
+ projectsecret: Secret 用于存储和管理敏感信息,如密码、OAuth 令牌和 SSH 密钥等。Secret 以加密方式保存数据,并可以安全地挂载到 Pod 中供容器使用,避免敏感信息硬编码。
6620
+ networking.k8s.io.networkpolicy: 网络策略用于控制 Pod 组之间的网络通信规则,实现 Kubernetes 集群内的网络隔离。通过定义入站和出站规则,可以精确控制 Pod 之间的网络访问权限。
6621
+ limitrange: 限制范围用于在命名空间内限制资源的使用量,包括 Pod 的计算资源(CPU、内存)请求和限制、存储卷大小以及可创建的资源对象数量,防止资源过度消耗。
6622
+ resourcequota: 资源配额用于限制命名空间可以使用的总体资源总量,包括计算资源、存储资源以及可创建的对象数量。它确保命名空间内的资源使用不会超过分配的配额限制。
6623
+ policy.poddisruptionbudget: Pod 中断预算用于限制自愿中断期间同时终止的 Pod 副本数量,确保应用的高可用性。它可以防止在节点维护或集群缩容时导致的应用服务中断。
6624
+ apps.daemonset: DaemonSet 在每个符合条件的节点上仅运行一个 Pod。当新节点添加到集群时,DaemonSet 会自动部署新节点。推荐用于全系统或可垂直扩展,且每个节点永远不需要超过一个 pod 的工作负载。
6625
+ apps.deployment: Deployment 运行分布在符合条件的节点中的可扩展数量的 Pod 副本。变更会逐步推出,并可回滚到之前的版本。推荐用于无状态和水平可扩展的工作负载。
6626
+ apps.statefulset: StatefulSet 管理有状态的应用,并保证创建的 Pod 的顺序和唯一性。推荐用于具有持久化存储或严格身份、法定人数或升级顺序要求的工作负载。
6627
+ batch.cronjob: CronJob 创建 Job,然后按照重复调度来运行 Pod。该调度以标准的 Unix cron 格式表示,并使用 Kubernetes Control Plane 的时区(通常是 UTC)。
6628
+ batch.job: Job 创建一个或多个 Pod。 Job 通过运行 Pod 直到其成功退出,以可靠执行一次性任务。失败的 Pod 会自动被替换,直到达到指定的完成运行次数。Job 还可以并行运行多个 Pod,或作为批处理工作队列。
6629
+ pod: Pod 是你可以在 Kubernetes 中创建和管理的最小可部署计算单元。Pod 是一个或多个容器,具有共享的存储和网络资源以及运行容器的规范。
6512
6630
  typeLabel:
6631
+ management.cattle.io.project: |-
6632
+ {count, plural,
6633
+ one { 项目 }
6634
+ other { 项目 }
6635
+ }
6513
6636
  management.cattle.io.token: |-
6514
6637
  {count, plural,
6515
6638
  one { API 密钥 }
@@ -6753,8 +6876,8 @@ typeLabel:
6753
6876
  }
6754
6877
  autoscaling.horizontalpodautoscaler: |-
6755
6878
  {count, plural,
6756
- one { HorizontalPodAutoscaler }
6757
- other { HorizontalPodAutoscaler }
6879
+ one { HPA }
6880
+ other { HPA }
6758
6881
  }
6759
6882
  networking.k8s.io.ingress: |-
6760
6883
  {count, plural,
@@ -6861,6 +6984,26 @@ typeLabel:
6861
6984
  one { 工作负载 }
6862
6985
  other { 工作负载 }
6863
6986
  }
6987
+ cluster : |-
6988
+ {count, plural,
6989
+ one { 集群 }
6990
+ other { 集群 }
6991
+ }
6992
+ servicediscovery : |-
6993
+ {count, plural,
6994
+ one { 服务发现 }
6995
+ other { 服务发现 }
6996
+ }
6997
+ storage : |-
6998
+ {count, plural,
6999
+ one { 存储 }
7000
+ other { 存储 }
7001
+ }
7002
+ policy : |-
7003
+ {count, plural,
7004
+ one { 策略 }
7005
+ other { 策略 }
7006
+ }
6864
7007
  harvesterhci.io.management.cluster: |-
6865
7008
  {count, plural,
6866
7009
  one { Cloud 集群 }
@@ -7931,4 +8074,4 @@ component:
7931
8074
  title: 标签
7932
8075
  keyValue:
7933
8076
  noRows: 此资源上没有配置{propertyName}.
7934
- showConfiguration: 显示配置
8077
+ showConfiguration: 显示配置
@@ -266,7 +266,9 @@ export default {
266
266
  :deep() .vs__dropdown-toggle .vs__actions {
267
267
  &:after {
268
268
  color: var(--accent-btn-hover-text);
269
- padding-top: 10px;
269
+ // padding-top: 10px;
270
+ display: flex;
271
+ align-items: center;
270
272
  }
271
273
  }
272
274
  }