1.4. 弃用和删除的功能
之前版本中的一些功能已被弃用或删除。
弃用的功能仍然包含在 OpenShift Container Platform 中,并将继续被支持。但是,这个功能会在以后的发行版本中被删除,且不建议在新的部署中使用。有关 OpenShift Container Platform 4.4 中已弃用并删除的主要功能的最新列表,请参考下表。表后列出了更详细的、已弃用和删除的功能信息。
在下表中,被标记为以下状态的功能:
- GA: 正式发行
- DEP: 已弃用
- -: 已删除
功能 | OCP 4.2 | OCP 4.3 | OCP 4.4 |
---|---|---|---|
Service Catalog | DEP | DEP | DEP |
Template Service Broker | DEP | DEP | DEP |
OpenShift Ansible Service Broker | DEP | DEP | - |
| DEP | DEP | DEP |
| 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_EDITOR
或 EDITOR
。
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
-
ServiceCatalogAPIServerEnabled
-
ServiceCatalogControllerManagerEnabled
-
TemplateServiceBrokerEnabled
现在,service-catalog-controller-manager
和 service-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. OperatorSources
、CatalogSourceConfig
和打包格式已弃用。
OperatorSources
和 CatalogSourceConfigs
对象已从 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. 转换自定义 OperatorSources
和 CatalogSourceConfigs
对象
如果 OpenShift Container Platform 4.4 集群中存在任何自定义 OperatorSources
或 CatalogSourceConfigs
对象,则 marketplace
集群 Operator 现在会设置一个 Upgradeable=false
条件并发出一个 Warning 警报。这意味着,如果集群将来仍被安装,它将阻断升级到下一个次版本,如 4.5。然而,升级到 z-stream 发行本,如 4.4.z,仍被允许。
集群管理员可以转换自定义 OperatorSource
或 CatalogSourceConfigs
对象,以直接使用 CatalogSource
对象清除此警报:
流程
删除您的自定义
OperatorSource
或CatalogSourceConfigs
对象。在所有命名空间中搜索
OperatorSource
或CatalogSourceConfigs
对象:$ oc get opsrc --all-namespaces $ oc get csc --all-namespaces
从所有相关命名空间中删除所有自定义对象:
$ oc delete opsrc <custom_opsrc_name> -n <namespace> $ oc delete csc <custom_csc_name> -n <namespace>
重要不要删除
openshift-marketplace
命名空间中的默认OperatorSources
对象:redhat-operators
、community-operators
、certified-operators
和redhat-marketplace
。但它们如果被意外删除就会启动。
使用受限网络文档中 构建 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
命令已弃用,但弃用的功能仍被支持。-
将
将
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.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
进行跟踪。这样可让其他监控组件有足够的存储桶来提供有意义的警告,但会极大降低数据建模基数。