目次


Travis CI を使用して Kubernetes ポッドを IBM Cloud Container Service にデプロイする

Travis CI の用途は CI に限定されません

Comments

概要

原文の著者: Adam King
スキル・レベル: すべてのスキル・レベル
Git、IBM Cloud、Travis、Kubernetes の基礎知識。
Travis CI を使用して Kubernetes アプリケーションを IBM Cloud にデプロイする方法について学習します。

前提条件

このチュートリアルでは、Kubernetes を使用して、Kubernetes Guestbook サンプルを IBM Cloud Container Service にデプロイします。

ステップバイステップ

1

IBM Cloud コマンド・ライン・ユーティリティーのインストール

  1. 最新の IBM Cloud CLI をダウンロードしてインストールします。(正式な資料を確認するには、ここをクリックしてください。)
  2. Container Service プラグインをインストールします。
    bx plugin install container-service -r Bluemix
  3. 以下を実行して、プラグインがインストールされたことを確認します。
    bluemix plugin list
2

クラスターの作成

Kubernetes ポッドとは、1 つ以上のコンテナーのことです。これらのポッドはクラスター上で実行されます。この例では、クラスターを IBM Cloud の無料枠にプロビジョンします。

  1. 次のコマンドを使用して IBM Cloud にログインします。bluemix login -a https://api.ng.bluemix.net
  2. 以下のコマンドを実行して、クラスターを作成します。(このレシピでは、クラスターを Kate という名前に指定していします。この名前はレシピの後半でパイプラインを構成するときに使用します。)
    bx cs cluster-create --name Kate
  3. コマンドから以下が返されます。
    OK....
  4. Use bx cs clusters を使用して、定義されたクラスターを確認します。
  5. Use bx cs workers Kate を使用して、プロビジョンされたワーカーを確認します。

クラスターの状態が「deployed」になると、ポッドをプロビジョンできます。ただし、クラスターのポッドのプロビジョニングが終了するまでポッドはエンキュー状態になります。クラスターが完全にプロビジョンされサンプルのポッドを受け入れ可能な状態になるまでには、およそ 15分かかります。

Name    ID                                 State     Created                    Workers

Kate              d20f6c096ce6483ab3f65556d3db41b7   deployed   2017-03-16T17:17:39+0000   1

このステップでは、ひとつのワーカーを含む空のクラスターを作成します。大規模な複数ワーカーのクラスターを作成する必要がある場合は、IBM Cloud の資料を確認してください。

3

サンプル・アプリケーションの探索

https://github.com/IBMCloudDevOps/bluemix-kubernetes-sample をフォークします。このリポジトリーには、Kubernetes Guestbook サンプルをセットアップして IBM Cloud Container Service にデプロイするために必要なスクリプトが含まれています。これらのファイルを使用してポッドを作成します。このアプリケーションは、Redis マスター、Redis スレーブ、フロントエンド・ポッドで構成されます。フロントエンドには、Guestbook 用の非常に単純な UI サーバーが含まれています。

Guestbook
Guestbook
4

アプリケーション・リポジトリーをビルドするための Travis CI のセットアップ

  1. Github ID を使用して、Travis CI にサインインします。Travis Sign In
    Travis Sign In
  2. 「My Repositories」の横にある「+」をクリックして、Travis CI を有効にし、新しいリポジトリーをビルドします。Travis Add Repo
    Travis Add Repo
  3. 使用するリポジトリーのリポジトリー・スイッチを入れます。リストにリポジトリーが表示されない場合は、アカウントを同期します。
  4. リポジトリーの横にある歯車アイコンをクリックして、「Go to Travis CI repository settings」に進みます。Travis Enable Repo and Settings Cog
    Travis Enable Repo and Settings Cog
  5. 以下の Travis CI 環境変数を設定します (情報を保護するため、「Display value in build log」は必ずオフにしてください)。
    • BLUEMIX_ACCOUNT – クラスターを作成した IBM Cloud アカウントの GUID。bx iam accounts を使用して取得します。
    • BLUEMIX_ORG – IBM Cloud 組織の名前。
    • BLUEMIX_PASSWORD – IBM Cloud パスワード。
    • BLUEMIX_SPACE – IBM Cloud スペースの名前。
    • BLUEMIX_USER – IBM Cloud ユーザー ID。
    • CLUSTER_NAME – ステップ 2 で作成したクラスターの名前。
    EnvVarsTravis
    EnvVarsTravis
5

デプロイメントの実行

  1. README.md の変更を master ブランチにプッシュして、ビルドをトリガーします。
  2. Travis CI に移動し、master ブランチのビルドが実行されるのを見ます。これで、Kubernetes Guestbook サンプル・ポッドが IBM Cloud Container Service にデプロイされます。
  3. ログの「Deploying application」セクションを開きます。DeployingAppTravis
    DeployingAppTravis
  4. ログの最後にある Guestbook アプリケーションの URL を見つけます。 ViewGuestbookTravis
    ViewGuestbookTravis
6

Guestbook アプリケーションのオープン

任意のブラウザーを使用して、ステップ 5 で、Travis CI ログ内で見つけた Guestbook URL を開きます。

ViewGuestbookTravis
ViewGuestbookTravis
7

まとめ

Kubernetes は、コンテナー・オーケストレーションのデファクト・スタンダードになりつつあります。Travis は、この環境内でシームレスに機能して、コンテナー・ベースのアプリケーションが IBM Cloud に継続的にデリバリーされるようにします。

著者

Jesse Antoszyk、IBM Cloud のソフトウェア・エンジニア

Adam King、IBM Cloud のシニア・ソフトウェア・エンジニア


ダウンロード可能なリソース


コメント

コメントを登録するにはサインインあるいは登録してください。

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=60
Zone=Cloud computing, DevOps
ArticleID=1054530
ArticleTitle=Travis CI を使用して Kubernetes ポッドを IBM Cloud Container Service にデプロイする
publish-date=12212017