6.2. Quarkus アプリケーションの OpenShift へのデプロイ


必要なインフラストラクチャーの設定後、Prometheus で Micrometer を有効にする必要があります。

前提条件

手順

  1. REST API を実装します。

    <dependency>
        <groupId>io.quarkus</groupId>
        <artifactId>quarkus-resteasy</artifactId>
    </dependency>
    <dependency>
        <groupId>io.quarkus</groupId>
        <artifactId>quarkus-micrometer-registry-prometheus</artifactId>
    </dependency>
  2. micrometer レジストリーファサードを追加します。

    import javax.inject.Inject;
    import javax.ws.rs.GET;
    import javax.ws.rs.Path;
    
    import io.micrometer.core.instrument.MeterRegistry;
    
    @Path("/hello")
    public class GreetingsResource {
    
        @Inject
        MeterRegistry registry;
    
        @GET
        public String sayHello() {
            registry.counter("greeting_counter").increment();
    
            return "Hello!";
        }
    }

    この Micrometer ファサードは、サービスを呼び出すたびにインクリメントされるカウンターを作成します。レジストリーは、カスタムメトリクスの作成またはメトリクスの手動での使用に役立ちます。また、以下のようにメソッドにアノテーションを付けることもできます。

    @GET
    @Counted(value = "greeting_counter")
    public String sayHello() {
        return "Hello!";
    }
  3. アプリケーションを実行します。

    mvn compile quarkus:dev
  4. サービスを呼び出します。

    curl http://localhost:8080/hello

    サービスは Hello! を返すはずです。

  5. http://localhost:8080/q/metrics を参照します。(完了したばかりの) カウント 1.0 の greeting_counter が表示されるはずです。

    # HELP greeting_counter_total
    #TYPE greeting_counter_total counter
    greeting_counter_total 1.0
  6. エクステンション quarkus-openshiftpom.xml に入力して、Quarkus アプリケーションを OpenShift にデプロイします。

    <dependency>
        <groupId>io.quarkus</groupId>
        <artifactId>quarkus-openshift</artifactId>
    </dependency>
  7. アプリケーションを OpenShift の my-project という名前の新規作成されたプロジェクトにデプロイします。

    oc new-project my-project
    
    mvn clean package -Dquarkus.kubernetes.deploy=true -Dquarkus.openshift.expose=true -Dquarkus.openshift.labels.app-with-metrics=quarkus-app

app-with-metrics に関する説明は、OpenShift プロジェクトでのサービスモニターの作成 を参照してください。

注記

非セキュアな SSL で OpenShift を使用している場合は、Maven コマンドに -Dquarkus.kubernetes-client.trust-certs=true も追加する必要があります。

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る