ããã«ã¡ã¯ãRed Hatã§ã½ãªã¥ã¼ã·ã§ã³ã¢ã¼ããã¯ãããã¦ããææ¬ æã§ãã ä»åã®è¨äºã§ã¯ããµã¼ãã¹ã¬ã¸ã¹ããªã®éè¦æ§ã«ã¤ãã¦è§£èª¬ããAPIã¨ã¹ãã¼ããä¸å çã«ç®¡çããããã® Red Hat ã® Service Registry ã®æ¦è¦ã¨åºæ¬çãªä½¿ãæ¹ã«ã¤ãã¦ç´¹ä»ãããã¨æãã¾ãããã® Red Hat Service Registry 㯠Red Hat Application Foundations (Red Hat Integration) ã«å«ã¾ãã¦ãããRed Hat ã®ããã¼ã¸ããµã¼ãã¹ Red Hat OpenShift Service Registry ã¨ãã¦ãæä¾ããã¦ãã¾ãï¼ãã® Red Hat OpenShift Service Registry ã¯ãRed Hat OpenShift API Management 㨠Red Hat OpenShift Streams for Apache Kafka ã®å©ç¨è ã§ããã°ç¡åã§å©ç¨ãããã¨ãå¯è½ã§ããããã©ã¤ã¢ã«ã§ã®å©ç¨ãå¯è½ã§ãï¼ã
ãã¤ã¯ããµã¼ãã¹ã®é£æºã«ããã¦ãµã¼ãã¹ã¬ã¸ã¹ããªãéè¦ãªçç±
ä¼æ¥ã®ä¸ã«åå¨ããã¢ããªã±ã¼ã·ã§ã³ã¯æ§ã ãªå½¢ã§ãã¼ã¿ã®é£æºãè¡ãã¾ããç°ãªãã·ã¹ãã ããã¼ã¿ã®é£æºãè¡ããã¨ãã§ããããã«ããããã«ã¯ãããåãããããã¼ã¿ã®ãã©ã¼ããããå±æ§ãã¹ãã¼ãã¨ãã¦å®ç¾©ãã¾ãããããæéã®çµéã¨ã¨ãã«ã¢ããªã±ã¼ã·ã§ã³ã®å¤æ´ãå¿ è¦ã¨ãªãã°ãã¢ããªã±ã¼ã·ã§ã³ã§ä½¿ç¨ãããã¹ãã¼ãã«ãå¤æ´ãå¿ è¦ã¨ãªããã¨ã¯å¤ã ããã¾ããé£æºå¯¾è±¡ã¨ãªãã·ã¹ãã ã1対1ã§ããã°ã¹ãã¼ãã®å¤æ´ã«ããå½±é¿ã¯éå®çããããã¾ããããä¼æ¥ã®ä¸ã«ã¯æ§ã ãªã·ã¹ãã ãåå¨ããããã«åæ£ããè¤æ°ã®ãã¤ã¯ããµã¼ãã¹ã§ããåãããããã¼ã¿ãæ¤è¨¼ããä¸æ´åãé²ãããã«ã¯ãã¢ããªã±ã¼ã·ã§ã³ã®é²åã¨ã¨ãã«ã¹ãã¼ãã®é²åï¼ã¹ãã¼ãã¨ããªã¥ã¼ã·ã§ã³ï¼ã¸ã®å¯¾å¿ãæ¤è¨ãã¦ãããã¨ãéè¦ã«ãªã£ã¦ãã¾ãããµã¼ãã¹ã¬ã¸ã¹ããªã¨ããã®ã¯ãã®ããã®ã½ãªã¥ã¼ã·ã§ã³ã¨ãªããã®ã§ãã Apache Kafka ããã¤ã¯ããµã¼ãã¹éã®é£æºããã¼ã¿é£æºã®ããã®ããã¨ãã¦å©ç¨ããã±ã¼ã¹ãå¢ãã¦ãã¾ãããApache Kafka ãã®ãã®ã«ã¯ãã¼ã¿æ¤è¨¼ãè¡ãæ©è½ã¯ç¡ããããã¹ãã¼ãã®é²åã«å¯¾å¿ããããã«ã¯ãµã¼ãã¹ã¬ã¸ã¹ããªãçµã¿åããã¦ä½¿ç¨ããå¿ è¦ãããã¾ããã¡ãã»ã¼ã¸ã®ãããã¥ã¼ãµã¼ã¯ Apache Kafka ã«ã¡ãã»ã¼ã¸ãéä¿¡ããã³ã³ã·ã¥ã¼ãã¼ã®ã¢ããªã±ã¼ã·ã§ã³ããã®ã¡ãã»ã¼ã¸ãåå¾ãã¦å¦çããã¾ããããããã¥ã¼ãµã¼å´ã®ã¢ããªã±ã¼ã·ã§ã³ã§å±æ§ã®è¿½å ããã¼ã¿åã®å¤æ´ããã£ãå ´åãã³ã³ã·ã¥ã¼ãã¼ã§ããã®å¯¾å¿ãã§ããªããã°ãã¼ã¿ãé©åã«å¦çãããã¨ãã§ããªããªã£ã¦ãã¾ãã¾ããã¤ãã³ãé§ååã¢ã¼ããã¯ãã£ã«ããã¦ã¯ãåãã¤ã¯ããµã¼ãã¹ã¯ççµåãªé£æºãããã¨ãã¦ãããããã¥ã¼ãµã¼ã使ç¨ãã¦ããã¹ãã¼ããã³ã³ã·ã¥ã¼ãã¼ã®ã¢ããªã±ã¼ã·ã§ã³ããããããææ¡ãã¦ãããã¨ã¯å¿ è¦ã§ãããã¹ãã¼ãã«å¤æ´ãçããå ´åã«ã¯ã©ã®ãããªå¤æ´ãçºçããã®ããç¥ãå¿ è¦ãããã¾ãã ãµã¼ãã¹ã¬ã¸ã¹ããªã¯ã¹ãã¼ãå®ç¾©ã®æ å ±ãä¸å çã«æ ¼ç´ããããã®å ´æã§ããããããã¥ã¼ãµã¼ã®ãã¤ã¯ããµã¼ãã¹éçºè ã¯ã¹ãã¼ãããµã¼ãã¹ã¬ã¸ã¹ããªã«ç»é²ããã³ã³ã·ã¥ã¼ãã¼ã®ãã¤ã¯ããµã¼ãã¹éçºè ã¯ãµã¼ãã¹ã¬ã¸ã¹ããªã使ç¨ãã¦ã¹ãã¼ããæ¤ç´¢ãããããã¥ã¼ãµã¼ããåãåã£ããã¼ã¿ãå¦çã§ããããã«å®è£ ãã¾ããã³ã³ã·ã¥ã¼ãã¼ã®ç¨®é¡ãå¢ãã¦ããå ´åããã®ãµã¼ãã¹ã¬ã¸ã¹ããªã®å½¹å²ã¯æ´ã«éè¦ã«ãªã£ã¦ãã¾ããããã«ãµã¼ãã¹ã¬ã¸ã¹ããªã使ç¨ãããã¨ã§ããããã¥ã¼ãµã¼ãã³ã³ã·ã¥ã¼ãã¼ãäºåã«å®ç¾©ãããã¹ãã¼ããå ã«éçºãè¡ããã¨ãã§ãããããã³ã³ãã©ã¯ããã¡ã¼ã¹ãã®éçºã¢ããã¼ããæ¡ç¨ãããããªãã¾ãã
Red Hat ãæä¾ãããµã¼ãã¹ã¬ã¸ã¹ããª
Red Hat ãæä¾ãããµã¼ãã¹ã¬ã¸ã¹ããªã®æ©è½ã¯ OSS ã® Apicurio Registry ããã¼ã¹ã¨ãã¦ãã¾ãï¼Apicurio ã®ãµãããã¸ã§ã¯ãã¨ãã¦ã¯ã以åã®èµ¤å¸½ã¨ã³ã¸ãã¢ããã° ã§ãç´¹ä»ãã¦ããããã«ãAPIããã¥ã¡ã³ããã¹ãã¼ãï¼OpenAPIãAsyncAPIãApache AvroãJSON SchemaãProtocol Bufferï¼ã GUI ãã¼ã¹ã§ã°ã©ãã£ã«ã«ã«è¨è¨ã§ãã Apicurio Studio / Apicurito ãããã¾ãï¼ããã® Red Hat ã® Service Registry ã§ã¯ãApache Kafka ã§ä½¿ç¨ãããã¹ãã¼ããæ ¼ç´ãããã¨ãã§ããã ãã§ãªããOpenAPI ã®ããã¥ã¡ã³ãã Apache Kafka ã®ãããã¥ã¼ãµã¼ã¨ã³ã³ã·ã¥ã¼ãã¼ã使ç¨ããéåæã¡ãã»ã¼ã¸ã³ã°ã®ããã®APIä»æ§ã§ãã AsyncAPI ã®ããã¥ã¡ã³ããä¸å çã«ç®¡çãããã¨ãã§ããããã«ãªãã¾ãã ãã® Red Hat ã® Service Registry ã¯ãªã³ãã¬ãã¹ç°å¢ã«å°å ¥ãããã¨ãå¯è½ã§ãããããã§ã¯ Red Hat ãããã¼ã¸ããµã¼ãã¹ã¨ãã¦æä¾ãã¦ãã Red Hat OpenShift Service Registry ã®ä½¿ãæ¹ã«ã¤ãã¦èª¬æããã¦ããããã¨æãã¾ãã
Red Hat OpenShift Service Registryã®ä½¿ãæ¹
Red Hat OpenShift Service Registry ã使ç¨ããã«ã¯ Red Hat ã¢ã«ã¦ã³ããå¿ è¦ã§ããã¾ã Red Hat ã¢ã«ã¦ã³ããæã£ã¦ããªãå ´åã«ã¯ãRed Hat Hybrid Cloud Console ã«ã¢ã¯ã»ã¹ãã¦ãRed Hat ã¢ã«ã¦ã³ããä½æãã¾ããããRed Hat ã®ããã¼ã¸ããµã¼ãã¹ã¨ã¢ã«ã¦ã³ãã®ä½ãæ¹ã«ã¤ãã¦ã¯ããã¡ãã®èµ¤å¸½ã¨ã³ã¸ãã¢ããã°ã®è¨äº ããåç §ãã ãããã¢ã«ã¦ã³ããä½æããããRed Hat Hybrid Cloud Console ã«ãã°ã¤ã³ãã¦å·¦ã®Application and Data Services ã¡ãã¥ã¼ãé¸æãã¾ããããã«ã¡ãã¥ã¼ããService Registry ãã¯ãªãã¯ããã¨ä»¥ä¸ã®ãããªç»é¢ã表示ãããService Registry ã®ã¤ã³ã¹ã¿ã³ã¹ãä½æãã¦ãããã¨ãã§ãã¾ãã
[Create Service Registry instance] ãã¿ã³ãã¯ãªãã¯ããã¨ãService Registry ã¤ã³ã¹ã¿ã³ã¹ã®æ°è¦ä½æç»é¢ã表示ãããã®ã§ãä»»æã®ååãã¤ã㦠[Create] ãã¿ã³ãã¯ãªãã¯ãã¾ãããã
Service Registry ã®ã¤ã³ã¹ã¿ã³ã¹ãä½æã§ãããããã®ãªã³ã¯ãã¯ãªãã¯ãã¦APIããã¥ã¡ã³ããã¹ãã¼ãå®ç¾©ãªã©ã®ã¢ã¼ãã£ãã¡ã¯ããã¬ã¸ã¹ããªã«ã¢ãããã¼ããããã¨ãã§ããããã«ãªãã¾ãã以åãç´¹ä»ãã OpenShift API Designer ã使ç¨ããã¨ãAPI Designer 㨠Service Registry ã®é£æºæ©è½ãå©ç¨ã㦠API Designer ã§ä½æããã¢ã¼ãã£ãã¡ã¯ãã API Designer ã®ç»é¢ä¸ãããã® Service Registry ã«ã¤ã³ãã¼ããããã¨ãå¯è½ã§ãã
ã¢ã¼ãã£ãã¡ã¯ãã®ã¢ãããã¼ãç»é¢ã¯ä»¥ä¸ã®ããã«ãªã£ã¦ãããGroup & IDãTypeãArtifact ãå ¥åãã¾ãã
- Group (ãªãã·ã§ãã«): ã¢ã¼ãã£ãã¡ã¯ãã管çããä¸ã§ã®ã¦ãã¼ã¯ãªçµç¹ãã¢ããªã±ã¼ã·ã§ã³ãªã©ã®ã°ã«ã¼ãåï¼ããã©ã«ãã§ã¯ "default" ã°ã«ã¼ãï¼
- ID (ãªãã·ã§ãã«): ã¢ã¼ãã£ãã¡ã¯ããèå¥ããããã®ã¦ãã¼ã¯ãªIDï¼æ示çã«æå®ããªãå ´åã«ã¯ Service Registry ã«ãã£ã¦çæãããUUIDï¼
- Type (å¿ é ): Avro Schema ã OpenAPI ãªã©ãã¢ã¼ãã£ãã¡ã¯ãã®åãæå®ï¼èªåçã«æ¤åºãå¯è½ï¼
- Artifact (å¿ é ): ãã©ãã°&ãããããã¢ãããã¼ããURL ãªã©ã§ã¢ã¼ãã£ãã¡ã¯ãã®ã³ã³ãã³ããæå®ï¼ããã¹ãå ¥åã¨ãªã¢ã«ç´æ¥å ¥åãå¯è½ï¼
ä¾ãã°ãArtifact ã®ããã¹ãå ¥åã¨ãªã¢ã«ä»¥ä¸ã® Avro Schema ãã³ãã¼&ãã¼ã¹ããã[Upload] ãã¿ã³ãã¯ãªãã¯ãã¦ã¢ãããã¼ããã¦ã¿ã¾ãããï¼"FullName"ã¨ããååã®ã·ã³ãã«ãªAvro Schemaã§ãï¼ã
{ "type": "record", "namespace": "com.example", "name": "FullName", "fields": [ { "name": "first", "type": "string" }, { "name": "last", "type": "string" } ]}
ã¢ãããã¼ããå®äºããã¨ã以ä¸ã®ããã« "FullName" ã¨ããååã®Avroã¹ãã¼ãã®ã¡ã¿ãã¼ã¿æ å ±ï¼IDã説æãã¹ãã¼ã¿ã¹ãä½ææ¥ãææè ãªã©ï¼ã表示ããã¾ããã³ã³ãã³ãã«ã¼ã«ã®ã»ã¯ã·ã§ã³ã§ã¯æ¤è¨¼ã«ã¼ã«ï¼Validity ruleï¼ã¨äºææ§ã«ã¼ã«ï¼Compatible ruleï¼ãè¨å®ãããã¨ãã§ããããã«ãªã£ã¦ãã¾ããæ¤è¨¼ã«ã¼ã«ã§ã¯ã¢ã¼ãã£ãã¡ã¯ãã®ã³ã³ãã³ãã®æå¹æ§ãæ¤è¨¼ãè¡ããã¨ãã§ããäºææ§ã«ã¼ã«ã§ã¯å¾æ¹äºæãåæ¹äºæã®ã«ã¼ã«ãè¨å®ãã¦æ°ãã¼ã¸ã§ã³ã¨ã®äºææ§ãã§ãã¯ãè¡ããã¨ãã§ãã¾ãã[Upload new version] ãã¿ã³ãã¯ãªãã¯ãã¦æ°ãããã¼ã¸ã§ã³ã®ã¹ãã¼ãã追å ãããã¨ãå¯è½ã§ãã
ã¢ã¼ãã£ãã¡ã¯ãã® Content ã¿ããã¯ãªãã¯ããã¨ãã¢ã¼ãã£ãã¡ã¯ãã®ä¸èº«ã JSON ããã㯠YAML å½¢å¼ã§è¡¨ç¤ºãã¦ç¢ºèªãããã¨ãã§ããããã«ãªã£ã¦ãã¾ãã
Service Registry ã¸ã®ã¢ã¯ã»ã¹æ¹æ³
ãããã¥ã¼ãµã¼ãã³ã³ã·ã¥ã¼ãã¼ãªã©ã®ã¯ã©ã¤ã¢ã³ãã¢ããªã±ã¼ã·ã§ã³ãã Service Registry ã«ã¢ã¯ã»ã¹ããã«ã¯ãService Registry ã¤ã³ã¹ã¿ã³ã¹ã«æ¥ç¶ããããã® URL ã¨ãµã¼ãã¹ã¢ã«ã¦ã³ãã®æ å ±ãå¿ è¦ã¨ãªãã¾ããService Registry ã® URL æ å ±ã¯ãService Registry ã¤ã³ã¹ã¿ã³ã¹ã®ä¸è¦§ãã¼ã¸ã§è¡¨ç¤ºãããã¤ã³ã¹ã¿ã³ã¹ã®ãªãã·ã§ã³ã¡ãã¥ã¼ãã [Connection] ãé¸æããã¨ä»¥ä¸ã®ããã«è¡¨ç¤ºããã¾ãã
Service Registry ã® API ã® URL ã¨ãã¦3ã¤è¡¨ç¤ºããã¦ãã¾ãããService Registry ã使ç¨ããæ°è¦ã¢ããªã±ã¼ã·ã§ã³ãéçºããå ´åã«ã¯ãé常 Core Registry API ã®URLã使ç¨ã㦠Service Registry ã«ã¢ã¯ã»ã¹ãã¾ãã®ã§ãã¯ã©ã¤ã¢ã³ãã¢ããªã±ã¼ã·ã§ã³ã§ã¯ãã® URL æ å ±ãå¿ è¦ã«ãªãã¾ããSchema Registry compatibility API 㯠Confluent 社㮠Schema Registry ã¨äºææ§ã®ãã APIãCNCF Schema Registry API 㯠CNCF Schema Registry ã¨äºææ§ã®ãã API ã® URL æ å ±ã§ãã
ã¾ããService Registry 㨠Kafka ã¤ã³ã¹ã¿ã³ã¹ã«ã¢ã¯ã»ã¹ããã«ã¯ãåã¤ã³ã¹ã¿ã³ã¹ã¸ã®ã¢ã¯ã»ã¹æ¨©éãæã£ããµã¼ãã¹ã¢ã«ã¦ã³ããå¿ è¦ã«ãªãã¾ãããµã¼ãã¹ã¢ã«ã¦ã³ããã¾ã ä½æããã¦ããªãå ´åã«ã¯ã[Create service account] ãã¿ã³ãã¯ãªãã¯ãã¦ãµã¼ãã¹ã¢ã«ã¦ã³ããä½æããService Registry ã¤ã³ã¹ã¿ã³ã¹ã® [Access] ã¿ãã®ç»é¢ã§ [Grant access] ãã¿ã³ãã¯ãªãã¯ãã¦ãã®ãµã¼ãã¹ã¢ã«ã¦ã³ãã«ã¢ã¯ã»ã¹æ¨©éãä»ä¸ãã¾ãã
以ä¸ã Red Hat OpenShift Service Registry ã®æ¦è¦ã¨åºæ¬çãªä½¿ãæ¹ã¨ãªãã¾ããã次åã¯å®éã«ã¯ã©ã¤ã¢ã³ãã¢ããªã±ã¼ã·ã§ã³ãã Service Registry ã«ã¢ã¯ã»ã¹ããããã®æ¹æ³ã«ã¤ãã¦ãç´¹ä»ãããã¨æãã¾ãã