74
Help us understand the problem. What are the problem?

More than 3 years have passed since last update.

posted at

updated at

AWSにJenkins環境を構築する

はじめに

AWSのEC2にJenkins環境を構築する手順です。
Jenkinsプラグインの動作検証などにご利用ください。

構築するJenkins環境

  1. Amazon EC2

    • OS : Amazon Linux
    • AMI ID :
      以下確認済み
      • Amazon Linux 2 AMI 2.0.20180622.1 HVM
      • Amazon Linux AMI 2016.03.1 x86_64 HVM
  2. Jenkins

    • version : 2.7
          ※ 1.651.2も同じです。

環境構築手順の流れ

  1. EC2のインスタンスを作成します。
  2. Jenkinsをインストールします。
  3. 起動設定をします。

EC2インスタンスを作成

  1. Amazon LinuxのEC2インスタンスを作成します。ポイントは、以下。

    • SSHのキーペアの秘密鍵(pemファイル)をクライアントPCに保存しておく。
      PuTTYでEC2にアクセスし操作するのに必要になります。
       
    • セキュリティーグループの設定でJenkinsポート"8080"にアクセスできるようにしておく。

      AWSマネージメントコンソール  
      → EC2  
      → セキュリティグループ  
      → EC2にアタッチしているセキュリティグループを選択
      → インバウンド → 編集 → ルールの追加
        ・タイプ:カスタム TCP ルール
        ・プロトコル:TCP
        ・ポート範囲:8080
        ・送信元:任意の場所 0.0.0.0/0
      → 保存
      
  2. 最新のJenkinsはJava 1.8以降が必要です。

    • Java 1.8をインストールします。
    • alternativesでJava 1.8にセットします。
    [ec2-user ~]$ sudo yum install -y java-1.8.0-openjdk-devel
    [ec2-user ~]$ sudo alternatives --config java
    2 プログラムがあり 'java' を提供します
    
      選択       コマンド
    -----------------------------------------------
    *+ 1           /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java
       2           /usr/lib/jvm/jre-1.8.0-openjdk.x86_64/bin/java
    
    Enter を押して現在の選択 [+] を保持するか選択番号を入力します:2
    [ec2-user ~]$ java -version
    openjdk version "1.8.0_141"
    OpenJDK Runtime Environment (build 1.8.0_141-b16)
    OpenJDK 64-Bit Server VM (build 25.141-b16, mixed mode)
    

Jenkinsをインストール

  1. EC2インスタンスに接続します

  2. Jenkinsをローカルにダウンロードします。

    [ec2-user ~]$ sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
    
  3. パッケージ署名チェック用のキーをインポートします。

    [ec2-user ~]$ sudo rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
    
  4. Jenkinsをインストールします。

    [ec2-user ~]$ sudo yum -y install jenkins
    
  5. Jenkinsを起動します。

    [ec2-user ~]$ sudo service jenkins start
    Starting Jenkins                                           [  OK  ]
    
  6. ウェブブラウザでJenkinsにアクセスします。EC2のインスタンス生成時に8080番ポートをオープンしておく必要があります。「http://(IP address):8080」のURLにアクセスし、指示に従いパスワードを入力します。おすすめのPluginをインストール後、以下の「Jenkinsへようこそ!」が表示されればインストール成功です。

    Jenkins.png

Jenkinsの起動設定

  1. chkconfig コマンドを使用して、システムがブートするたびに Jenkinsが起動するように設定します。

    [ec2-user ~]$ sudo chkconfig jenkins on
    
  2. 起動設定を確認します。

    [ec2-user ~]$ sudo chkconfig --list jenkins
    jenkins         0:off   1:off   2:on    3:on    4:on    5:on    6:off
    
  3. EC2インスタンスを再起動して、Jenkinsにアクセスできることを確認しておきます。

Jenkinsの設定

  1. JenkinsのURLを http://(ip address):8010/jenkins/** にする方法です。
     
    • Tomcat(port番号8080)とJenkinsと同じサーバで動作させたい。
    • JenkinsはTomcat上ではなくて、daemonで実行したい。
    • URLに/jenkins/をつけて分かりやすくしたい。

といった場合は、以下を参考にしてください。

  • URLとportの変更

    [ec2-user ~]$ cd /etc/sysconfig
    [ec2-user ~]$ sudo vi jenkins
    
    /etc/sysconfig/jenkins
    JENKINS_PORT="8010"
    JENKINS_ARGS="--prefix=/jenkins"
    
  • AWSのポートを解放する

    Jenkinsポート"8010"を開放する。

    AWSマネージメントコンソール  
    → EC2  
    → セキュリティグループ  
    → EC2にアタッチしているセキュリティグループを選択
    → インバウンド → 編集 → ルールの追加
      ・タイプ:カスタム TCP ルール
      ・プロトコル:TCP
      ・ポート範囲:8010
      ・送信元:任意の場所 0.0.0.0/0
    → 保存
    
  • Jenkinsを再起動させる

    Jenkinsを再起動させると以下の http://(ip address):8010/jenkins/ でアクセスできるようになります。

    [ec2-user ~]$ sudo service jenkins restart
    

     

    参考URL

    Jenkins Installガイド

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Sign upLogin
74
Help us understand the problem. What are the problem?