Jenkinsチュートリアル| Jenkinsを使用した継続的インテグレーション|エドゥレカ



Jenkinsチュートリアルは、Jenkinsブログシリーズの2番目のブログです。このブログでは、Jenkins分散アーキテクチャとJenkinsを使用してビルドを作成する方法について説明しています。

Jenkinsチュートリアル

Jenkinsは、で最も重要なツールの1つです。 。私の以前のブログを読んだことを願っています 。このJenkinsチュートリアルブログでは、JenkinsアーキテクチャとJenkinsビルドパイプラインに焦点を当て、Jenkinsでビルドを作成する方法を紹介します。

Jenkinsチュートリアルに進む前に、前のブログからの重要なポイントは次のとおりです。



  • Jenkinsは、プラグインを使用してすべてのDevOpsステージを統合するために使用されます。
  • 一般的に使用されるJenkinsプラグインは、Git、Amazon EC2、Maven 2プロジェクト、HTMLパブリッシャーなどです。
  • Jenkinsには1000をはるかに超えるプラグインがあり、147,000のアクティブなインストールと、世界中の100万人を超えるユーザー。
  • 継続的インテグレーションにより、ソースコードに加えられたすべての変更です構築されました。他の機能も実行しますが、これは、継続的インテグレーションに使用されるツールによって異なります。
  • Nokiaは、ナイトリービルドから継続的インテグレーションに移行しました。
  • 継続的インテグレーションの前のプロセスには多くの欠陥がありました。その結果、ソフトウェアの配信が遅かっただけでなく、ソフトウェアの品質も基準に達していませんでした。開発者は、バグの特定と修正にも苦労しました。
  • Jenkinsとの継続的インテグレーションは、ソースコードに加えられたすべての変更に対してビルドとテストを継続的にトリガーすることで、これらの欠点を克服しました。

今がジェンキンスのアーキテクチャを理解する正しい時期です。

Jenkinsアーキテクチャ

で説明したスタンドアロンのJenkinsアーキテクチャを改訂しましょう 、下の図は同じことを示しています。



Jenkinsスタンドアロンアーキテクチャ-Jenkinsとは-Edureka

この単一のJenkinsサーバーは、次のような特定の要件を満たすのに十分ではありませんでした。

  • ビルドをテストするために、いくつかの異なる環境が必要になる場合があります。これは、単一のJenkinsサーバーでは実行できません。
  • 大規模で重いプロジェクトが定期的に構築される場合、単一のJenkinsサーバーで負荷全体を処理することはできません。

上記のニーズに対応するために、Jenkins分散アーキテクチャが導入されました。



Javaのtostringメソッドとは

Jenkins分散アーキテクチャ

Jenkinsは、マスタースレーブアーキテクチャを使用して分散ビルドを管理します。このアーキテクチャでは、マスターとスレーブはTCP / IPプロトコルを介して通信します。

ジェンキンスマスター

メインのJenkinsサーバーはマスターです。マスターの仕事は以下を処理することです:

  • ビルドジョブのスケジューリング。
  • 実際の実行のためにビルドをスレーブにディスパッチします。
  • スレーブを監視します(必要に応じて、スレーブをオンラインおよびオフラインにする可能性があります)。
  • ビルド結果の記録と提示。
  • Jenkinsのマスターインスタンスは、ビルドジョブを直接実行することもできます。

ジェンキンススレーブ

スレーブは、リモートマシンで実行されるJava実行可能ファイルです。 JenkinsSlavesの特徴は次のとおりです。

  • Jenkinsマスターインスタンスからのリクエストを聞きます。
  • スレーブは、さまざまなオペレーティングシステムで実行できます。
  • スレーブの仕事は、彼らが言われた通りに行うことであり、マスターによってディスパッチされたビルドジョブを実行することを含みます。
  • 特定のスレーブマシンまたは特定のタイプのスレーブマシンで常に実行するようにプロジェクトを構成するか、Jenkinsに次に使用可能なスレーブを選択させることができます。

下の図は自明です。これは、3つのJenkinsスレーブを管理しているJenkinsマスターで構成されています。

次に、Ubuntu、MAC、Windowsなどのさまざまな環境でJenkinsをテストに使用する例を見てみましょう。

次の図は同じことを表しています。

上の画像では、次の機能が実行されています。

  • Jenkinsは、ソースコードに変更がないか定期的にGitリポジトリをチェックします。
  • ビルドごとに異なるテスト環境が必要ですが、これは単一のJenkinsサーバーでは不可能です。さまざまな環境でテストを実行するために、Jenkinsは図に示すようにさまざまなスレーブを使用します。
  • Jenkinsマスターは、これらのスレーブにテストの実行とテストレポートの生成を要求します。

Jenkinsビルドパイプライン

Jenkinsが現在実行しているタスクを知るために使用されます。多くの場合、複数の異なる変更が複数の開発者によって一度に行われるため、どの変更がテストされているか、どの変更がキューにあるか、どのビルドが壊れているかを知ることは有用です。ここでパイプラインが登場します。 Jenkins Pipelineは、テストが行​​われている場所の概要を示します。ビルドパイプラインでは、ビルド全体が、単体テスト、受け入れテスト、パッケージ化、レポート、展開の各フェーズなどのセクションに分割されます。パイプラインフェーズは直列または並列で実行でき、1つのフェーズが成功すると、自動的に次のフェーズに進みます(したがって、「パイプライン」という名前の関連性があります)。次の画像は、複数ビルドのパイプラインがどのように見えるかを示しています。

理論的な概念を理解したことを願っています。それでは、ハンズオンを楽しんでみましょう。

私はジェンキンスで新しい仕事を作ります、それは フリースタイルプロジェクト 。ただし、さらに3つのオプションを利用できます。 Jenkinsで利用できるビルドジョブの種類を見てみましょう。

フリースタイルプロジェクト:

フリースタイルビルドジョブは、最大限の柔軟性を提供する汎用ビルドジョブです。フリースタイルビルドジョブは、最も柔軟で構成可能なオプションであり、あらゆるタイプのプロジェクトに使用できます。設定は比較的簡単で、ここで構成するオプションの多くは他のビルドジョブにも表示されます。

マルチコンフィギュレーションジョブ:

「マルチコンフィギュレーションプロジェクト」(「マトリックスプロジェクト」とも呼ばれます)を使用すると、異なる環境で同じビルドジョブを実行できます。これは、さまざまな環境、さまざまなデータベース、またはさまざまなビルドマシンでアプリケーションをテストするために使用されます。

外部ジョブの監視:

「外部ジョブの監視」ビルドジョブを使用すると、cronジョブなどの非対話型プロセスを監視できます。

Mavenプロジェクト:

「maven2 / 3プロジェクト」は、Mavenプロジェクトに特別に適合したビルドジョブです。 Jenkinsは、Mavenのpomファイルとプロジェクト構造を理解しており、pomファイルから収集した情報を使用して、プロジェクトのセットアップに必要な作業を減らすことができます。

これは、Jenkinsをよりよく理解するためのJenkinsチュートリアルに関するビデオです。このJenkinsチュートリアルビデオをチェックしてください。

SQLの日付のデータ型

Jenkins入門| JenkinsとDevOpsのチュートリアル|初心者のためのジェンキンス|エドゥレカ

Jenkinsを使用してビルドを作成する

ステップ1: Jenkinsインターフェースホームから、 新商品

ステップ2: 名前を入力して選択します フリースタイルプロジェクト

ステップ3: この次のページでは、ジョブ構成を指定します。すぐにわかるように、新しいプロジェクトを作成するときに使用できる設定がいくつかあります。この構成ページでは、次のオプションもあります。 ビルドステップを追加 スクリプトの実行などの追加のアクションを実行します。シェルスクリプトを実行します。

これにより、必要なコマンドを追加できるテキストボックスが表示されます。スクリプトを使用して、サーバーメンテナンス、バージョン管理、システム設定の読み取りなどのさまざまなタスクを実行できます。このセクションを使用して、簡単なスクリプトを実行します。

ステップ4: プロジェクトを保存すると、プロジェクトの概要ページが表示されます。ここでは、構築された履歴など、プロジェクトに関する情報を確認できます。

ステップ5: クリック 今すぐビルド 左側でビルドを開始します。

ステップ6: 詳細を表示するには、ビルド履歴領域でそのビルドをクリックすると、ビルド情報の概要が記載されたページが表示されます。

ステップ7: ザ・ コンソール出力 このページのリンクは、ジョブの結果を詳細に調べるのに特に役立ちます。

ステップ8: Jenkinsの自宅に戻ると、すべてのプロジェクトの概要と、ステータスを含むそれらの情報が表示されます。

ビルドのステータスは、天気アイコンと色付きのボールの2つの方法で示されます。天気アイコンは、1つの画像に複数のビルドの記録を表示するので特に便利です。

上の画像でわかるように、太陽は私のすべてのビルドが成功したことを表しています。ボールの色は、その特定のビルドのステータスを示します。上の画像では、ボールの色は青です。これは、この特定のビルドが成功したことを意味します。

このJenkinsチュートリアルでは、紹介の例を示しました。次のブログでは、Jenkinsを使用してGitHubリポジトリからコードをプルしてビルドする方法を紹介します。

これを見つけたら Jenkinsチュートリアル 関連する、チェックしてください 25万人以上の満足した学習者のネットワークを持つ信頼できるオンライン学習会社であるEdurekaが世界中に広がっています。 Edureka DevOps認定トレーニングコースは、学習者がSDLCの複数のステップを自動化するためのPuppet、Jenkins、Nagios、GITなどのさまざまなDevOpsプロセスとツールに関する専門知識を習得するのに役立ちます。

質問がありますか?コメント欄にご記入ください。折り返しご連絡いたします。