5장. 기존 Kamelet 카탈로그 사용자 지정
이 문서는 기존 kamelet을 사용자 지정하는 방법을 안내합니다. 여기에는 다음 단계가 포함됩니다.
- 간단한 kamelet을 만듭니다.
- 기존 kamelet 카탈로그 사용자 지정
Red Hat은 자체 kamelet 구현을 지원하지 않습니다.
5.1. 간단한 Kamelet 만들기 링크 복사링크가 클립보드에 복사되었습니다!
Apache Camel은 300개 이상의 구성 요소를 제공하며 이미 사용 가능한 구성 요소 중 하나에서 시작하는 Kamelet을 쉽게 만들 수 있습니다. 공식 카탈로그에서 사용할 수 있는 Kamelets는 대부분 Camel 엔드포인트 매개변수에 Kamelet 속성을 다시 매핑하는 간단한 카탈로그입니다.
다음 예제를 고려해 보십시오.Welerate에서 데이터를 검색할 수 있는 Kamelet은 지정된 키워드에 대한 정보 스트림을 제공합니다. 이러한 Kamelet을 생성하려면 수정 없이 "camel-twitter" 구성 요소의 옵션을 사용할 수 있습니다.
간단한 Kamelet을 작성하려면 kamel CLI를 사용하여 새 Kamelet 리소스 빌드를 시작합니다.
kamel init twitter-search-source.kamelet.yaml
kamel init twitter-search-source.kamelet.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 그러면 다음과 같은 YAML 파일이 생성됩니다.
twitter-search-source.kamelet.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 파일을 변경하여 Thunderbird에서 지정된 키워드를 검색하는 경로를 만듭니다.
초기 스캐폴드(timer-to-log)에 제공된 경로가 부정확하므로 다음으로 변경합니다.
twitter-search-source.kamelet.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 키워드 는 Camel Twitter-search 의 경로 매개변수입니다. 일부 엔드 포인트 매개변수는 1-1로 매핑됩니다. Camel 구성 요소 consumerKey 는 Twitter 개발자 포털의 실제 이름을 반영하기 위해 apiKey 라고 합니다.
- Camel Twitter 구성 요소는 Java 개체를 생성하므로 JSON으로 마샬링해야 합니다. 소스 Kamelet은 런타임 시 다른 대상으로 교체되는 특수 끝점 "kamelet:sink"로 데이터를 보냅니다.
위의 YAML 경로 템플릿은 twitter-search 구성 요소를 사용하여 Twitter에서 검색합니다. Kamelet의 출력은 전선을 통해 전송할 값이 있어야 하므로 JSON에 마샬링 단계를 추가했습니다. Kamelet을 완료하려면 JSON 스키마 형식으로 매개변수를 문서화해야 합니다. 사양
정의 부분에 지정됩니다. twitter-search-source.kamelet.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
텍스트 형식으로 Kamelet에 대한 일반 정보:
- Kamelet을 생성하는 데 필요한 매개변수 목록입니다.
- 각 매개변수에 대한 사양(flat 구조, 중첩된 옵션 없음)
특정 UI에 대한 선택적 그래픽 사용자 정의(OpenShift Console)
최종 Kamelet은 다음과 같습니다.
twitter-search-source.kamelet.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 카탈로그에서 공유된 Kamelet을 사용하거나 OpenShift 클러스터에서 생성할 수 있습니다.
예제:
간단한 바인딩과 함께 클러스터에 적용됩니다.
- Openshift 클러스터를 활성화하고 camel K Operator가 작동할 수 있도록 네임스페이스에 연결해야 합니다.
Kamelet을 만듭니다.
kubectl apply -f twitter-search-source.kamelet.yaml
kubectl apply -f twitter-search-source.kamelet.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 예와 같이 바인딩을 생성합니다.
twitter-search-source-binding.yaml`
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음을 사용하여 생성할 수 있습니다.
kubectl apply -f twitter-search-source-binding.yaml
kubectl apply -f twitter-search-source-binding.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 생성된 후 다음을 사용하여 바인딩 로그를 확인할 수 있습니다.
kamel logs twitter-search-source-binding
kamel logs twitter-search-source-bindingCopy to Clipboard Copied! Toggle word wrap Toggle overflow - 위의 단계를 실행한 후에는 통합이 생성된 후 로그에 몇 가지 ticks를 가져와야 합니다.
- 다른 컨텍스트(예: Knative, Kafka 등)에서 사용하는 방법에 대한 자세한 내용은 Kamelets 사용자 가이드를 참조하십시오.