1.4. 弃用和删除的功能


之前版本中的一些功能已被弃用或删除。

弃用的功能仍然包含在 OpenShift Container Platform 中,并将继续被支持。但是,这个功能会在以后的发行版本中被删除,且不建议在新的部署中使用。有关 OpenShift Container Platform 4.4 中已弃用并删除的主要功能的最新列表,请参考下表。表后列出了更详细的、已弃用和删除的功能信息。

在下表中,被标记为以下状态的功能:

  • GA: 正式发行
  • DEP: 已弃用
  • -: 已删除
表 1.1. 过时和删除的功能
功能OCP 4.2OCP 4.3OCP 4.4

Service Catalog

DEP

DEP

DEP

Template Service Broker

DEP

DEP

DEP

OpenShift Ansible Service Broker

DEP

DEP

-

OperatorSources

DEP

DEP

DEP

CatalogSourceConfigs

DEP

DEP

DEP

Operator Framework 的软件包清单格式

GA

GA

DEP

System Containers for Docker, CRI-O

-

-

-

Hawkular 代理

-

-

-

Pod 预设置

-

-

-

Audit 策略

-

-

-

集群的 MongoDB 模板

-

-

-

集群的 MySQL 模板

-

-

-

CephFS 置备程序

-

-

-

Manila 置备程序

-

-

-

1.4.1. 已弃用的功能

1.4.1.1. OpenShift CLI config 标志

oc 命令中使用 --config 标志已被弃用。现在需要使用 --kubeconfig 标志。

1.4.1.2. OpenShift CLI timeout 标志

oc rsh 命令中使用 --timeout 标志已被弃用。现在需要使用 --request-timeout 标志。

1.4.1.3. OpenShift 编辑器

OS_EDITOR 已弃用。现在需要使用 KUBE_EDITOREDITOR

1.4.1.4. machineCIDR 网络参数

install-config.yaml 文件中使用 machineCIDR 网络参数现已弃用。您应该使用 machineNetwork.cidr

1.4.1.5. Service Catalog、Template Service Broker、 Ansible Service Broker 以及它们的 Operator

注意

默认情况下,OpenShift Container Platform 4 不安装 Service Catalog。

从 OpenShift Container Platform 4.2 开始,Service Catalog、Template Service Broker、Ansible Service Broker 以及它们的 Operator 已被弃用。

Ansible Service Broker、Ansible Service Broker Operator 和以下 APB 现已从 OpenShift Container Platform 4.4 中删除:

  • APN 基础镜像
  • APB 工具容器
  • PostgreSQL APB
  • MySQL APB
  • MariaDB APB

以下相关的 API 也被删除:

  • .automationbroker.io/v1alpha1
  • .osb.openshift.io/v1

Service Catalog、Template Service Broker 以及以下相关的 API 将在以后的 OpenShift Container Platform 发行版本中移除。

  • .servicecatalog.k8s.io/v1beta1

如果在 4.4 中启用了这些功能,Web 控制台会警告集群管理员这些功能仍处于启用状态。以下警报可以在 Monitoring Alerting 页面中查看 ,其严重性级别为 Warning

  • ServiceCatalogAPIServerEnabled
  • ServiceCatalogControllerManagerEnabled
  • TemplateServiceBrokerEnabled

现在,service-catalog-controller-managerservice-catalog-apiserver 集群 Operator 还会在 4.4 中被设置为 Upgradeable=false。这意味着,如果集群将来仍被安装,它们将阻断升级到下一个次版本,如 4.5。但是,升级到 z-stream 发行本版本(如 4.4.z)仍被允许。

如果安装了 Service Catalog,集群管理员可在发布下一个 OpenShift Container Platform 次要版本前看到 Uninstalling Service Catalog 来卸载它。

1.4.1.6. OperatorSourcesCatalogSourceConfig 和打包格式已弃用。

OperatorSourcesCatalogSourceConfigs 对象已从 OperatorHub 中弃用。以后的发行版本会删除以下相关的 API:

  • operatorsources.operators.coreos.com/v1
  • catalogsourceconfigs.operators.coreos.com/v2
  • catalogsourceconfigs.operators.coreos.com/v1

Operator Framework 的当前打包格式 Package Manifest Format 在此版本中已被弃用,在以后的版本中它将被新的捆绑格式(Bundle Format)替代。因此,oc adm catalog build 命令也被弃用,它使用较老的、已北弃用的 Package Manifest Format 构建目录。

如需有关即将推出的 Bundle Format 和 opm CLI 的更多信息,请参阅上游社区的 OKD 文档

1.4.1.6.1. 转换自定义 OperatorSourcesCatalogSourceConfigs 对象

如果 OpenShift Container Platform 4.4 集群中存在任何自定义 OperatorSourcesCatalogSourceConfigs 对象,则 marketplace 集群 Operator 现在会设置一个 Upgradeable=false 条件并发出一个 Warning 警报。这意味着,如果集群将来仍被安装,它将阻断升级到下一个次版本,如 4.5。然而,升级到 z-stream 发行本,如 4.4.z,仍被允许。

集群管理员可以转换自定义 OperatorSourceCatalogSourceConfigs 对象,以直接使用 CatalogSource 对象清除此警报:

流程

  1. 删除您的自定义 OperatorSourceCatalogSourceConfigs 对象。

    1. 在所有命名空间中搜索 OperatorSourceCatalogSourceConfigs 对象:

      $ oc get opsrc --all-namespaces
      $ oc get csc --all-namespaces
    2. 从所有相关命名空间中删除所有自定义对象:

      $ oc delete opsrc <custom_opsrc_name> -n <namespace>
      $ oc delete csc <custom_csc_name> -n <namespace>
      重要

      不要删除 openshift-marketplace 命名空间中的默认 OperatorSources 对象: redhat-operatorscommunity-operatorscertified-operatorsredhat-marketplace。但它们如果被意外删除就会启动。

  2. 使用受限网络文档中 构建 Operator 目录镜像 的步骤来创建和推送新的目录镜像,并在 oc adm catalog build 命令步骤中进行以下更改:

    • --appregistry-org 更改为 App Registry 实例上的命名空间,例如在 Quay.io上。
    • --to 改为您的镜像存储库标签,该标签应用于构建的目录镜像并推送。

    例如:

    $ oc adm catalog build \
        --appregistry-org <namespace> \
        --from=registry.redhat.io/openshift4/ose-operator-registry:v4.4 \
        --to=quay.io/<namespace>/<catalog_name>:<tag> \
        [-a ${REG_CREDS}]
    注意

    oc adm catalog build 命令已弃用,但弃用的功能仍被支持。

  3. CatalogSource 对象应用到集群以引用新目录镜像:

    cat <<EOF | oc apply -f -
    
    apiVersion: operators.coreos.com/v1alpha1
    kind: CatalogSource
    metadata:
      name: my-operator-catalog
      namespace: openshift-marketplace
    spec:
      sourceType: grpc
      image: quay.io/<namespace>/<catalog_name>:<tag> 1
      displayName: My Operator Catalog
      updateStrategy:
        registryPoll: 2
          interval: 30m
    EOF
    1
    指定您的自定义 Operator 目录镜像。
    2
    CatalogSource 对象现在可以自动检查新版本以保持最新。

1.4.2. 删除的功能

1.4.2.1. OpenShift CLI secrets 子命令

OpenShift Container Platform 3.9 中弃用的以下 oc secrets 子命令不再可用:

  • new
  • new-basicauth
  • new-dockercfg
  • new-sshauth

您必须使用 oc create secret 命令替代。

1.4.2.2. OpenShift CLI build-logs 命令

oc build-logs 命令在 OpenShift Container Platform 3.11 中已弃用,现已被删除。您必须使用 oc logs 替代 。

1.4.2.3. 已删除过时的上游 Kubernetes 指标

已删除所有过时的上游 Kubernetes 指标。删除指标的完整列表如下。

Kubelet 指标
  • kubelet_pod_worker_latency_microseconds
  • kubelet_pod_start_latency_microseconds
  • kubelet_cgroup_manager_latency_microseconds
  • kubelet_pod_worker_start_latency_microseconds
  • kubelet_pleg_relist_latency_microseconds
  • kubelet_pleg_relist_interval_microseconds
  • kubelet_runtime_operations
  • kubelet_runtime_operations_latency_microseconds
  • kubelet_runtime_operations_errors
  • kubelet_eviction_stats_age_microseconds
  • kubelet_device_plugin_registration_count
  • kubelet_device_plugin_alloc_latency_microseconds
  • kubelet_network_plugin_operations_latency_microseconds
调度程序指标
  • scheduler_e2e_scheduling_latency_microseconds
  • scheduler_scheduling_algorithm_predicate_evaluation
  • scheduler_scheduling_algorithm_priority_evaluation
  • scheduler_scheduling_algorithm_preemption_evaluation
  • scheduler_scheduling_algorithm_latency_microseconds
  • scheduler_binding_latency_microseconds
  • scheduler_scheduling_latency_seconds
API 服务器指标
  • apiserver_request_count
  • apiserver_request_latencies
  • apiserver_request_latencies_summary
  • apiserver_dropped_requests
  • apiserver_storage_data_key_generation_latencies_microseconds
  • apiserver_storage_transformation_failures_total
  • apiserver_storage_transformation_latencies_microseconds
  • apiserver_proxy_tunnel_sync_latency_secs
Docker 指标
  • kubelet_docker_operations
  • kubelet_docker_operations_latency_microseconds
  • kubelet_docker_operations_errors
  • kubelet_docker_operations_timeout
Reflector 指标
  • reflector_items_per_list
  • reflector_items_per_watch
  • reflector_list_duration_seconds
  • reflector_lists_total
  • reflector_short_watches_total
  • reflector_watch_duration_seconds
  • reflector_watches_total
etcd 指标
  • etcd_helper_cache_hit_count
  • etcd_helper_cache_miss_count
  • etcd_helper_cache_entry_count
  • etcd_request_cache_get_latencies_summary
  • etcd_request_cache_add_latencies_summary
  • etcd_request_latencies_summary
Transformation 指标
  • transformation_latencies_microseconds
  • transformation_failures_total
其他指标
  • admission_quota_controller_adds
  • crd_autoregistration_controller_work_duration
  • APIServiceOpenAPIAggregationControllerQueue1_adds
  • AvailableConditionController_retries
  • crd_openapi_controller_unfinished_work_seconds
  • APIServiceRegistrationController_retries
  • admission_quota_controller_longest_running_processor_microseconds
  • crdEstablishing_longest_running_processor_microseconds
  • crdEstablishing_unfinished_work_seconds
  • crd_openapi_controller_adds
  • crd_autoregistration_controller_retries
  • crd_finalizer_queue_latency
  • AvailableConditionController_work_duration
  • non_structural_schema_condition_controller_depth
  • crd_autoregistration_controller_unfinished_work_seconds
  • AvailableConditionController_adds
  • DiscoveryController_longest_running_processor_microseconds
  • autoregister_queue_latency
  • crd_autoregistration_controller_adds
  • non_structural_schema_condition_controller_work_duration
  • APIServiceRegistrationController_adds
  • crd_finalizer_work_duration
  • crd_naming_condition_controller_unfinished_work_seconds
  • crd_openapi_controller_longest_running_processor_microseconds
  • DiscoveryController_adds
  • crd_autoregistration_controller_longest_running_processor_microseconds
  • autoregister_unfinished_work_seconds
  • crd_naming_condition_controller_queue_latency
  • crd_naming_condition_controller_retries
  • non_structural_schema_condition_controller_queue_latency
  • crd_naming_condition_controller_depth
  • AvailableConditionController_longest_running_processor_microseconds
  • crdEstablishing_depth
  • crd_finalizer_longest_running_processor_microseconds
  • crd_naming_condition_controller_adds
  • APIServiceOpenAPIAggregationControllerQueue1_longest_running_processor_microseconds
  • DiscoveryController_queue_latency
  • DiscoveryController_unfinished_work_seconds
  • crd_openapi_controller_depth
  • APIServiceOpenAPIAggregationControllerQueue1_queue_latency
  • APIServiceOpenAPIAggregationControllerQueue1_unfinished_work_seconds
  • DiscoveryController_work_duration
  • autoregister_adds
  • crd_autoregistration_controller_queue_latency
  • crd_finalizer_retries
  • AvailableConditionController_unfinished_work_seconds
  • autoregister_longest_running_processor_microseconds
  • non_structural_schema_condition_controller_unfinished_work_seconds
  • APIServiceOpenAPIAggregationControllerQueue1_depth
  • AvailableConditionController_depth
  • DiscoveryController_retries
  • admission_quota_controller_depth
  • crdEstablishing_adds
  • APIServiceOpenAPIAggregationControllerQueue1_retries
  • crdEstablishing_queue_latency
  • non_structural_schema_condition_controller_longest_running_processor_microseconds
  • autoregister_work_duration
  • crd_openapi_controller_retries
  • APIServiceRegistrationController_work_duration
  • crdEstablishing_work_duration
  • crd_finalizer_adds
  • crd_finalizer_depth
  • crd_openapi_controller_queue_latency
  • APIServiceOpenAPIAggregationControllerQueue1_work_duration
  • APIServiceRegistrationController_queue_latency
  • crd_autoregistration_controller_depth
  • AvailableConditionController_queue_latency
  • admission_quota_controller_queue_latency
  • crd_naming_condition_controller_work_duration
  • crd_openapi_controller_work_duration
  • DiscoveryController_depth
  • crd_naming_condition_controller_longest_running_processor_microseconds
  • APIServiceRegistrationController_depth
  • APIServiceRegistrationController_longest_running_processor_microseconds
  • crd_finalizer_unfinished_work_seconds
  • crdEstablishing_retries
  • admission_quota_controller_unfinished_work_seconds
  • non_structural_schema_condition_controller_adds
  • APIServiceRegistrationController_unfinished_work_seconds
  • admission_quota_controller_work_duration
  • autoregister_depth
  • autoregister_retries
  • kubeproxy_sync_proxy_rules_latency_microseconds
  • rest_client_request_latency_seconds
  • non_structural_schema_condition_controller_retries

1.4.2.4. Prometheus 中的高粒度请求期间存储桶

Prometheus 中丢弃了高粒度请求期间存储桶,它使用 apiserver_request_duration_seconds_bucket 进行跟踪。这样可让其他监控组件有足够的存储桶来提供有意义的警告,但会极大降低数据建模基数。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.