8.6. Webhook 룰북 활성화
Openshift 환경에서는 룰북 활성화의 Kubernetes 서비스를 노출하는 경로를 생성하여 Webhook가 지정된 포트를 통해 activation-job-pod에 도달하도록 허용할 수 있습니다.
사전 요구 사항
- 룰북 활성화를 생성했습니다.
참고
다음은 지정된 Webhook가 있는 룰북의 예입니다.
- name: Listen for storage-monitor events hosts: all sources: - ansible.eda.webhook: host: 0.0.0.0 port: 5000 rules: - name: Rule - Print event information condition: event.meta.headers is defined action: run_job_template: name: StorageRemediation organization: Default job_args: extra_vars: message: from eda sleep: 1
프로세스
서비스를 노출할 경로(OpenShift Container Platform)를 생성합니다. 다음은 의사 결정 환경 Pod에서 포트 5000에 POST가 예상되는 ansible-rulebook 소스의 경로 예제입니다.
kind: Route apiVersion: route.openshift.io/v1 metadata: name: test-sync-bug namespace: dynatrace labels: app: eda job-name: activation-job-1-5000 spec: host: test-sync-bug-dynatrace.apps.aap-dt.ocp4.testing.ansible.com to: kind: Service name: activation-job-1-5000 weight: 100 port: targetPort: 5000 tls: termination: edge insecureEdgeTerminationPolicy: Redirect wildcardPolicy: None
경로를 생성할 때 경로 URL에 대한 Post로 테스트합니다.
curl -H "Content-Type: application/json" -X POST test-sync-bug-dynatrace.apps.aap-dt.ocp4.testing.ansible.com -d '{}'
참고Route(targetPort)에 지정되어 있으므로 포트가 필요하지 않습니다.