第2章 CLI の使用方法
2.1. 概要
OpenShift Container Platform の CLI は、アプリケーションを管理するためのコマンドだけでなく、システムの各コンポーネントと対話する低レベルのツールも公開しています。このトピックでは、インストールおよび最初のプロジェクトを作成するためのログインなど、CLI の使用方法について説明します。
2.2. 前提条件
特定の操作では、Git がクライアント上にローカルにインストールされている必要があります。たとえば、リモート Git リポジトリーを使用してアプリケーションを作成するコマンドは以下のようになります。
$ oc new-app https://github.com/<your_user>/<your_git_repo>
ここで、Git をワークステーションにインストールします。お使いのワークステーションのオペレーティングシステムに応じたインストール方法については、Git の公式サイトの Git ドキュメント を参照してください。
2.3. CLI のインストール
CLI をダウンロードする最も簡単な方法として、Web コンソールの About ページにアクセスすることができます (クラスター管理者がダウンロードリンクを有効にしている場合)。
CLI のインストールオプションは、お使いのオペレーティングシステムによって異なります。
CLI を使用してログインする場合、Web コンソールの「Command Line」ページからトークンを取得します。このページには、「Help」メニューの「Command Line Tools」からアクセスできます。トークンは非表示になっているので、「Command Line Tools」ページにある oc login
行の端にある「copy to clipboard」ボタンをクリックし、コピーしたコンテンツを貼り付け、トークンを表示します。
2.3.1. Windows の場合
Windows 向けの CLI は、zip アーカイブとして提供されます。これは、Red Hat カスタマーポータル からダウンロードできます。Red Hat アカウントでログイン後、ダウンロードページにアクセスするには、有効な OpenShift Enterprise サブスクリプションが必要です。
「Red Hat カスタマーポータルからの CLI のダウンロード」
または、クラスター管理者がリンクを有効にしている場合は、Web コンソールの About ページから CLI をダウンロードし、展開することができます。
チュートリアルの動画
以下の動画ではこのプロセスを紹介しています。視聴するには、ここをクリックしてください。
次に ZIP プログラムでアーカイブを展開し、oc
バイナリーを PATH 上のディレクトリーに移動します。PATH を確認するには、コマンドプロンプトを開いて以下を実行します。
C:\> path
2.3.2. Mac OS X の場合
Mac OS X 向けの CLI は、tar.gz アーカイブとして提供されます。これは Red Hat カスタマーポータル からダウンロードできます。Red Hat アカウントでログイン後、ダウンロードページにアクセスするには、有効な OpenShift Enterprise サブスクリプションが必要です。
「Red Hat カスタマーポータルからの CLI のダウンロード」
または、クラスター管理者がリンクを有効にしている場合は、Web コンソールの About ページから CLI をダウンロードし、展開することができます。
チュートリアルの動画
以下の動画ではこのプロセスを紹介しています。視聴するには、ここをクリックしてください。
次にアーカイブを展開し、oc
バイナリーを PATH 上のディレクトリーに移動します。PATH を確認するには、ターミナルのウィンドウを開いて以下を実行します。
$ echo $PATH
2.3.3. Linux の場合
Red Hat Enterprise Linux (RHEL) 7 の場合、Red Hat アカウントに有効な OpenShift Enterprise サブスクリプションがある場合、Red Hat Subscription Management (RHSM) を使用して RPM として CLI をインストールできます。
# subscription-manager register
# subscription-manager refresh
# subscription-manager attach --pool=<pool_id> 1
# subscription-manager repos --enable="rhel-7-server-ose-3.10-rpms"
# yum install atomic-openshift-clients
- 1
- 有効な OpenShift Enterprise サブスクリプションのプール ID
RHEL、Fedora その他 Linux ディストリビューションの場合、 CLI を Red Hat カスタマーポータル から tar.gz アーカイブとして直接ダウンロードできます。Red Hat アカウントでログイン後、ダウンロードページにアクセスするには、有効な OpenShift Enterprise サブスクリプションが必要です。
「Red Hat カスタマーポータルからの CLI のダウンロード」
チュートリアルの動画
以下の動画ではこのプロセスを紹介しています。視聴するには、ここをクリックしてください。
または、クラスター管理者がリンクを有効にしている場合は、Web コンソールの About ページから CLI をダウンロードし、展開することができます。
次にアーカイブを展開し、oc
バイナリーを PATH 上のディレクトリーに移動します。PATH を確認するには、以下を実行します。
$ echo $PATH
アーカイブを展開するには、以下を実行します。
$ tar -xf <file>
RHEL または Fedora を使用しない場合は、libc がライブラリーパスのディレクトリーにインストールされていることを確認してください。libc が利用できない場合は、CLI コマンドの実行時に以下のエラーが表示されます。
oc: No such file or directory
2.4. 基本的な設定およびログイン
CLI の初期設定を行う場合、oc login
コマンドを使用することが最適な方法となり、このコマンドはほとんどのユーザーにとってのエントリーポイントとしての機能を果たします。対話型フローは、指定される認証情報を使用して OpenShift Container Platform サーバーへのセッションを確立するのに役立ちます。この情報は「CLI 設定ファイル」に自動的に保存され、その後のコマンドで使用されます。
以下の例では、oc login
コマンドを使用した対話的な設定およびログインについて説明します。
例2.1 CLI の初期設定
$ oc login OpenShift server [https://localhost:8443]: https://openshift.example.com 1 Username: alice 2 Authentication required for https://openshift.example.com (openshift) Password: ****** Login successful. 3 You don't have any projects. You can try to create a new project, by running $ oc new-project <projectname> 4 Welcome to OpenShift! See 'oc help' to get started.
CLI 設定が完了すると、その後のコマンドがサーバーの設定ファイル、セッショントークン、およびプロジェクト情報を使用します。
CLI からログアウトするには、以下の oc logout
コマンドを使用します。
$ oc logout User, alice, logged out of https://openshift.example.com
プロジェクトの作成後か、またはプロジェクトへのアクセスが付与された後にログインする場合に、アクセス可能なプロジェクトが現在のデフォルトとして自動的に設定されます。これは「別のプロジェクトに切り替える」までデフォルトになります。
$ oc login Username: alice Authentication required for https://openshift.example.com (openshift) Password: Login successful. Using project "aliceproject".
oc login
コマンドでは、「追加のオプション」も利用可能です。
管理者の認証情報が利用できる状態であっても 「デフォルトシステムユーザー」の system:admin としてログインしていない場合には、認証情報が「CLI 設定ファイル」にある限り、いつでもこのユーザーとしてログインし直すことができます。以下のコマンドはログインを実行し、デフォルト のプロジェクトに切り替えます。
$ oc login -u system:admin -n default
2.5. CLI 設定ファイル
CLI 設定ファイルは、oc
オプションを永続的に保存します。またこのファイルには、一連の「認証」メカニズムおよびニックネームに関連付けられた OpenShift Container Platform サーバー接続情報が含まれます。
前のセクションで説明したように、oc login
コマンドは、CLI 設定ファイルを自動的に作成し、管理します。このコマンドで収集されるすべての情報は、~/.kube/config にある設定ファイルに保存されます。現在の CLI 設定は、以下のコマンドを使用して表示することができます。
例2.2 CLI 設定の表示
$ oc config view apiVersion: v1 clusters: - cluster: server: https://openshift.example.com name: openshift contexts: - context: cluster: openshift namespace: aliceproject user: alice name: alice current-context: alice kind: Config preferences: {} users: - name: alice user: token: NDM2N2MwODgtNjI1Yy10N3VhLTg1YmItYzI4NDEzZDUyYzVi
CLI 設定ファイルは、さまざまな OpenShift Container Platform サーバー、namespace、およびユーザーを使用して「複数の CLI プロファイルを設定」するために使用できます。これらの設定ファイルは、コマンドラインで指定した上書きオプションと共に、ランタイム時に読み込まれ、マージされます。
2.6. プロジェクト
OpenShift Container Platform の「プロジェクト」には、論理的なアプリケーションを構成する複数の「オブジェクト」が含まれます。
ほとんどの oc
コマンドは、「プロジェクト」のコンテキストで実行されます。oc login
は 「初期設定」時に、その後のコマンドで使用するデフォルトのプロジェクトを選択します。以下のコマンドを使用して、現在使用中のプロジェクトを表示します。
$ oc project
複数のプロジェクトにアクセスできる場合は、プロジェクト名を指定し、以下の構文を使って特定のプロジェクトに切り替えます。
$ oc project <project_name>
以下に例を示します。
$ oc project project02 Now using project 'project02'. $ oc project project03 Now using project 'project03'. $ oc project Using project 'project03'.
oc status
コマンドは、現在使用中のプロジェクトのハイレベルの概要を表示します。以下の例が示すように、プロジェクトのコンポーネントおよび関係性なども表示されます。
$ oc status In project OpenShift 3 Sample (test) service database-test (172.30.17.113:6434 -> 3306) database-test deploys docker.io/library/mysql:latest #1 deployed 47 hours ago service frontend-test (172.30.17.236:5432 -> 8080) frontend-test deploys origin-ruby-sample:test <- builds https://github.com/openshift/ruby-hello-world with docker.io/openshift/ruby-20-centos7:latest not built yet #1 deployment waiting on image To see more information about a service or deployment config, use 'oc describe service <name>' or 'oc describe dc <name>'. You can use 'oc get pods,svc,dc,bc,builds' to see lists of each of the types described above.
2.7. 次のステップ
「ログイン」後、「新規のアプリケーションを作成」し、一般的な「CLI 操作」をいくつか試すことができます。