搜索

7.2. 搜索自定义和配置

download PDF

您可以修改 search-v2-operator 自定义资源中的默认值。要查看自定义资源的详情,请运行以下命令:

oc get search search-v2-operator -o yaml

搜索 Operator 会监视 search-v2-operator 自定义资源,协调更改并更新活跃的 pod。查看以下配置描述:

  • PostgreSQL 数据库存储:

    安装 Red Hat Advanced Cluster Management 时,PostgreSQL 数据库被配置为将 PostgreSQL 数据保存在一个空目录 (emptyDir) 卷中。如果空目录大小有限,您可以在持久性卷声明 (PVC) 中保存 PostgreSQL 数据,以提高搜索性能。您可以从 Red Hat Advanced Cluster Management hub 集群中选择一个存储类来备份搜索数据。例如,如果您选择 gp2 存储类,您的配置可能类似以下示例:

    apiVersion: search.open-cluster-management.io/v1alpha1
    kind: Search
    metadata:
      name: search-v2-operator
      namespace: open-cluster-management
      labels:
        cluster.open-cluster-management.io/backup: ""
    spec:
      dbStorage:
        size: 10Gi
        storageClassName: gp2

    此配置会创建一个名为 gp2-search 的 PVC,并挂载到 search-postgres pod。默认情况下,存储大小为 10Gi。您可以修改存储大小。例如,20Gi 可能足以满足大约 200 个受管集群。

  • 通过调整 pod 内存或 CPU 要求、副本计数和更新任何四个搜索 Pod (indexer, database, queryapi, 或 collector pod)来优化成本。更新 search-v2-operator 自定义资源的 deployment 部分。search-v2-operator 管理四个部署,它们可以单独更新。您的 search-v2-operator 自定义资源可能类似以下文件:

    apiVersion: search.open-cluster-management.io/v1alpha1
    kind: Search
    metadata:
      name: search-v2-operator
      namespace: open-cluster-management
    spec:
      deployments:
        collector:
          resources: 1
            limits:
              cpu: 500m
              memory: 128Mi
            requests:
              cpu: 250m
              memory: 64Mi
        indexer:
          replicaCount: 3
        database: 2
            envVar:
              - name: POSTGRESQL_EFFECTIVE_CACHE_SIZE
                value: 1024MB
              - name: POSTGRESQL_SHARED_BUFFERS
                value: 512MB
              - name: WORK_MEM
                value: 128MB
        queryapi:
          arguments: 3
          - -v=3
    1 1
    您可以将资源应用到 indexer, database, queryapi, 或 collector pod。
    2 2
    您可以在 envVar 部分中添加多个环境变量,为您名称的每个变量指定一个值。
    3
    您可以通过添加 -v=3 参数来控制前四个 pod 的日志级别详细程度。

    请参阅以下示例,其中内存资源应用到 indexer pod:

        indexer:
          resources:
            limits:
              memory: 5Gi
            requests:
              memory: 1Gi
  • 搜索 pod 的节点放置:

    您可以使用 nodeSelector 参数或 tolerations 参数更新搜索 pod 的放置。查看以下示例配置:

    spec:
     dbStorage:
      size: 10Gi
     deployments:
      collector: {}
      database: {}
      indexer: {}
      queryapi: {}
     nodeSelector:
      node-role.kubernetes.io/infra: ""
     tolerations:
     - effect: NoSchedule
      key: node-role.kubernetes.io/infra
      operator: Exists
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.