第2章 Operator が Red Hat build of MicroShift を使用する方法


Red Hat build of MicroShift で Operator を使用して、クラスター内で実行中のサービスを監視するアプリケーションを作成できます。Operator は、データベースやメッセージバスのデプロイなど、アプリケーションとそのリソースを管理できます。クラスター内で実行するカスタマイズされたソフトウェアとして、Operator を使用して一般的な操作を実装し、自動化できます。

Operator はよりローカライズされた設定エクスペリエンスを提供し、kubectloc などの Kubernetes API および CLI ツールと統合します。Operator は、アプリケーション専用に設計されています。Operator を使用すると、グローバル設定ファイルを変更する代わりにコンポーネントを設定できます。

Red Hat build of MicroShift アプリケーションは通常、静的環境にデプロイされることが想定されています。ただし、Operator はユースケースで役立つ場合に利用できます。Operator と Red Hat build of MicroShift の互換性を判断するには、Operator のドキュメントを確認してください。

2.1. Red Hat build of MicroShift での Operator のインストール方法

Red Hat build of MicroShift のフットプリントを最小限に抑えるために、Operator は Operator Lifecycle Manager (OLM) を使用する代わりにマニフェストを使用して直接インストールされます。以下の例は、Red Hat build of MicroShift で kustomize 設定管理ツールを使用してアプリケーションをデプロイする方法を説明します。マニフェストを使用して Operator をインストールするには、同じ手順を使用します。

2.1.1. マニフェストの kustomize の使用方法

kustomize 設定管理ツールは、Red Hat build of MicroShift に統合されます。起動時に、Red Hat build of MicroShift は /etc/microshift/manifests および /usr/lib/microshift/ マニフェストディレクトリーで kustomization.yaml ファイルを検索します。これが見つかると、Red Hat build of MicroShift は kubectl apply -k コマンドと同等のコマンドを自動的に実行して、特定されたマニフェストをクラスターに適用します。

場所目的

/etc/microshift/manifests

設定管理システムまたは開発用の読み取り/書き込みの場所。

/usr/lib/microshift/manifests

OSTree ベースのシステムに設定マニフェストを埋め込むための読み取り専用の場所。

2.1.2. マニフェストの使用例

この例では、/etc/microshift/manifests ディレクトリー内の kustomize マニフェストを使用した BusyBox コンテナーの自動デプロイを示します。

手順

  1. 次のコマンドを実行して、BusyBox マニフェストファイルを作成します。

    1. ディレクトリーの場所を定義します。

      $ MANIFEST_DIR=/etc/microshift/manifests
    2. ディレクトリーを作成します。

      $ sudo mkdir -p ${MANIFEST_DIR}
    3. yaml ファイルをディレクトリーに配置します。

      $ sudo tee ${MANIFEST_DIR}/busybox.yaml &>/dev/null <<EOF
      
      apiVersion: v1
      kind: Namespace
      metadata:
        name: busybox
      ---
      apiVersion: apps/v1
      kind: Deployment
      metadata:
        name: busybox-deployment
      spec:
        selector:
          matchLabels:
            app: busybox
        template:
          metadata:
            labels:
              app: busybox
          spec:
            containers:
            - name: busybox
              image: BUSYBOX_IMAGE
              command:
                - sleep
                - "3600"
      EOF
  2. 次に、以下のコマンドを実行して kustomize マニフェストファイルを作成します。

    1. yaml ファイルをディレクトリーに配置します。

      $ sudo tee ${MANIFEST_DIR}/kustomization.yaml &>/dev/null <<EOF
      ---
      apiVersion: kustomize.config.k8s.io/v1beta1
      kind: Kustomization
      namespace: busybox
      resources:
        - busybox.yaml
      images:
        - name: BUSYBOX_IMAGE
          newName: registry.k8s.io/busybox
      EOF
  3. 次のコマンドを実行して Red Hat build of MicroShift を再起動し、マニフェストを適用します。

    $ sudo systemctl restart microshift
  4. 次のコマンドを実行して、マニフェストを適用し、busybox Pod を起動します。

    $ oc get pods -n busybox
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

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

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

会社概要

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

© 2024 Red Hat, Inc.