Soumettre la recherche
Mettre en ligne
入門!Jenkins
•
Télécharger en tant que PPTX, PDF
•
6 j'aime
•
6,630 vues
Shuntaro Saiba
Suivre
構築方法からユースケースまで
Lire moins
Lire la suite
Technologie
Signaler
Partager
Signaler
Partager
1 sur 84
Télécharger maintenant
Recommandé
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
Akihiro Suda
Ansibleで始めるインフラ構築自動化
Ansibleで始めるインフラ構築自動化
dcubeio
Amazon EKS によるスマホゲームのバックエンド運用事例
Amazon EKS によるスマホゲームのバックエンド運用事例
gree_tech
macOSの仮想化技術について ~Virtualization-rs Rust bindings for virtualization.framework ~
macOSの仮想化技術について ~Virtualization-rs Rust bindings for virtualization.framework ~
NTT Communications Technology Development
Ansibleはじめよぉ -Infrastructure as Codeを理解-
Ansibleはじめよぉ -Infrastructure as Codeを理解-
Shingo Kitayama
オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫
Yuta Imai
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
NTT DATA Technology & Innovation
20分でわかるgVisor入門
20分でわかるgVisor入門
Shuji Yamada
Recommandé
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
Akihiro Suda
Ansibleで始めるインフラ構築自動化
Ansibleで始めるインフラ構築自動化
dcubeio
Amazon EKS によるスマホゲームのバックエンド運用事例
Amazon EKS によるスマホゲームのバックエンド運用事例
gree_tech
macOSの仮想化技術について ~Virtualization-rs Rust bindings for virtualization.framework ~
macOSの仮想化技術について ~Virtualization-rs Rust bindings for virtualization.framework ~
NTT Communications Technology Development
Ansibleはじめよぉ -Infrastructure as Codeを理解-
Ansibleはじめよぉ -Infrastructure as Codeを理解-
Shingo Kitayama
オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫
Yuta Imai
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
NTT DATA Technology & Innovation
20分でわかるgVisor入門
20分でわかるgVisor入門
Shuji Yamada
Docker超入門
Docker超入門
VirtualTech Japan Inc.
SpringBootTest入門
SpringBootTest入門
Yahoo!デベロッパーネットワーク
Ansible勉強会資料
Ansible勉強会資料
Makoto Oya
コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門
Kohei Tokunaga
Jenkins 再入門
Jenkins 再入門
Jumpei Miyata
分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)
NTT Communications Technology Development
Akkaとは。アクターモデル とは。
Akkaとは。アクターモデル とは。
Kenjiro Kubota
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
増田 亨
Guide To AGPL
Guide To AGPL
Mikiya Okuno
世界最強のソフトウェアアーキテクト
世界最強のソフトウェアアーキテクト
Yahoo!デベロッパーネットワーク
Go 製リアルタイムサーバーの Kubernetes での運用について
Go 製リアルタイムサーバーの Kubernetes での運用について
KairiOkumura
今さら聞けない人のためのCI/CD超入門
今さら聞けない人のためのCI/CD超入門
VirtualTech Japan Inc./Begi.net Inc.
SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021
Hiroshi Tokumaru
目grep入門 +解説
目grep入門 +解説
murachue
フロー効率性とリソース効率性について #xpjug
フロー効率性とリソース効率性について #xpjug
Itsuki Kuroda
Goss入門
Goss入門
ShuyaMotouchi1
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
Yuki Ando
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
Kentaro Matsui
エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~
エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~
Daisuke Morishita
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
Net なプロジェクトでも jenkins を使ってみた
Net なプロジェクトでも jenkins を使ってみた
Oda Shinsuke
Ansible softlayer
Ansible softlayer
Hideaki Tokida
Contenu connexe
Tendances
Docker超入門
Docker超入門
VirtualTech Japan Inc.
SpringBootTest入門
SpringBootTest入門
Yahoo!デベロッパーネットワーク
Ansible勉強会資料
Ansible勉強会資料
Makoto Oya
コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門
Kohei Tokunaga
Jenkins 再入門
Jenkins 再入門
Jumpei Miyata
分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)
NTT Communications Technology Development
Akkaとは。アクターモデル とは。
Akkaとは。アクターモデル とは。
Kenjiro Kubota
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
増田 亨
Guide To AGPL
Guide To AGPL
Mikiya Okuno
世界最強のソフトウェアアーキテクト
世界最強のソフトウェアアーキテクト
Yahoo!デベロッパーネットワーク
Go 製リアルタイムサーバーの Kubernetes での運用について
Go 製リアルタイムサーバーの Kubernetes での運用について
KairiOkumura
今さら聞けない人のためのCI/CD超入門
今さら聞けない人のためのCI/CD超入門
VirtualTech Japan Inc./Begi.net Inc.
SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021
Hiroshi Tokumaru
目grep入門 +解説
目grep入門 +解説
murachue
フロー効率性とリソース効率性について #xpjug
フロー効率性とリソース効率性について #xpjug
Itsuki Kuroda
Goss入門
Goss入門
ShuyaMotouchi1
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
Yuki Ando
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
Kentaro Matsui
エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~
エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~
Daisuke Morishita
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
Tendances
(20)
Docker超入門
Docker超入門
SpringBootTest入門
SpringBootTest入門
Ansible勉強会資料
Ansible勉強会資料
コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門
Jenkins 再入門
Jenkins 再入門
分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)
Akkaとは。アクターモデル とは。
Akkaとは。アクターモデル とは。
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
Guide To AGPL
Guide To AGPL
世界最強のソフトウェアアーキテクト
世界最強のソフトウェアアーキテクト
Go 製リアルタイムサーバーの Kubernetes での運用について
Go 製リアルタイムサーバーの Kubernetes での運用について
今さら聞けない人のためのCI/CD超入門
今さら聞けない人のためのCI/CD超入門
SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021
目grep入門 +解説
目grep入門 +解説
フロー効率性とリソース効率性について #xpjug
フロー効率性とリソース効率性について #xpjug
Goss入門
Goss入門
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~
エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
Similaire à 入門!Jenkins
Net なプロジェクトでも jenkins を使ってみた
Net なプロジェクトでも jenkins を使ってみた
Oda Shinsuke
Ansible softlayer
Ansible softlayer
Hideaki Tokida
テスト駆動で行うネットワーク自動化のすすめ
テスト駆動で行うネットワーク自動化のすすめ
kinunori
OSC2014-KANSAI@Kyoto JOSUG - OpenStack and Ansible
OSC2014-KANSAI@Kyoto JOSUG - OpenStack and Ansible
Hideki Saito
Fcp
Fcp
Naoto TAKAHASHI
インフラエンジニアがk8sでアプリを作って見えた今後のインフラ
インフラエンジニアがk8sでアプリを作って見えた今後のインフラ
susumu tanaka
Ossフル活用でinfrastructure as codeやってみた
Ossフル活用でinfrastructure as codeやってみた
Akifumi Niida
Jenkins勉強会 in 札幌 第一部
Jenkins勉強会 in 札幌 第一部
cactusman
SphinxのCIの続き Azure DevOpsでのビルド結果を、認証付きAzure App Serviceに公開するところまで
SphinxのCIの続き Azure DevOpsでのビルド結果を、認証付きAzure App Serviceに公開するところまで
Study Group by SciencePark Corp.
GitHubとTravisCIで回す社内ライブラリの継続的インテグレーション事例
GitHubとTravisCIで回す社内ライブラリの継続的インテグレーション事例
Ryuji Egashira
OpenStack 最新動向 2016/11
OpenStack 最新動向 2016/11
Akira Yoshiyama
AI分野におけるコンテナオーケストレーションとは
AI分野におけるコンテナオーケストレーションとは
Tetsurou Yano
AWS Device Farm を Jenkins CI から叩いてみた
AWS Device Farm を Jenkins CI から叩いてみた
Tatsuya Yamamoto
Ansible AWXで一歩進んだプロビジョニング
Ansible AWXで一歩進んだプロビジョニング
sugoto
Sensuで始めるクラウド時代のシステム監視
Sensuで始めるクラウド時代のシステム監視
Akihiko Horiuchi
Kubernetesの良さを活かして開発・運用!Cloud Native入門 / An introductory Cloud Native #osc19tk
Kubernetesの良さを活かして開発・運用!Cloud Native入門 / An introductory Cloud Native #osc19tk
whywaita
インフラチームとCCoEの関係.pptx
インフラチームとCCoEの関係.pptx
ssuser5c7ee4
20160526 kintone hive Vol.3 Tokyo
20160526 kintone hive Vol.3 Tokyo
R3 institute
Vulsで始めよう!DevSecOps!
Vulsで始めよう!DevSecOps!
Takayuki Ushida
Amazon Inspector v2で脆弱性管理を始めてみた
Amazon Inspector v2で脆弱性管理を始めてみた
cluclu_land
Similaire à 入門!Jenkins
(20)
Net なプロジェクトでも jenkins を使ってみた
Net なプロジェクトでも jenkins を使ってみた
Ansible softlayer
Ansible softlayer
テスト駆動で行うネットワーク自動化のすすめ
テスト駆動で行うネットワーク自動化のすすめ
OSC2014-KANSAI@Kyoto JOSUG - OpenStack and Ansible
OSC2014-KANSAI@Kyoto JOSUG - OpenStack and Ansible
Fcp
Fcp
インフラエンジニアがk8sでアプリを作って見えた今後のインフラ
インフラエンジニアがk8sでアプリを作って見えた今後のインフラ
Ossフル活用でinfrastructure as codeやってみた
Ossフル活用でinfrastructure as codeやってみた
Jenkins勉強会 in 札幌 第一部
Jenkins勉強会 in 札幌 第一部
SphinxのCIの続き Azure DevOpsでのビルド結果を、認証付きAzure App Serviceに公開するところまで
SphinxのCIの続き Azure DevOpsでのビルド結果を、認証付きAzure App Serviceに公開するところまで
GitHubとTravisCIで回す社内ライブラリの継続的インテグレーション事例
GitHubとTravisCIで回す社内ライブラリの継続的インテグレーション事例
OpenStack 最新動向 2016/11
OpenStack 最新動向 2016/11
AI分野におけるコンテナオーケストレーションとは
AI分野におけるコンテナオーケストレーションとは
AWS Device Farm を Jenkins CI から叩いてみた
AWS Device Farm を Jenkins CI から叩いてみた
Ansible AWXで一歩進んだプロビジョニング
Ansible AWXで一歩進んだプロビジョニング
Sensuで始めるクラウド時代のシステム監視
Sensuで始めるクラウド時代のシステム監視
Kubernetesの良さを活かして開発・運用!Cloud Native入門 / An introductory Cloud Native #osc19tk
Kubernetesの良さを活かして開発・運用!Cloud Native入門 / An introductory Cloud Native #osc19tk
インフラチームとCCoEの関係.pptx
インフラチームとCCoEの関係.pptx
20160526 kintone hive Vol.3 Tokyo
20160526 kintone hive Vol.3 Tokyo
Vulsで始めよう!DevSecOps!
Vulsで始めよう!DevSecOps!
Amazon Inspector v2で脆弱性管理を始めてみた
Amazon Inspector v2で脆弱性管理を始めてみた
Plus de Shuntaro Saiba
kube-system落としてみました
kube-system落としてみました
Shuntaro Saiba
NW入門
NW入門
Shuntaro Saiba
OS入門
OS入門
Shuntaro Saiba
DevOps勉強会
DevOps勉強会
Shuntaro Saiba
新卒3年目のぼくが、でぶおぷす???なオジサンだらけのエンプラ金融PJにAnsibleを導入してみた
新卒3年目のぼくが、でぶおぷす???なオジサンだらけのエンプラ金融PJにAnsibleを導入してみた
Shuntaro Saiba
新卒3年目のぼくが、でぶおぷす???なエンプラ金融PJにAnsibleを導入してみた
新卒3年目のぼくが、でぶおぷす???なエンプラ金融PJにAnsibleを導入してみた
Shuntaro Saiba
新卒3年目のぼくが、でぶおぷす???なインフラおじさん方にAnsibleを導入してみた
新卒3年目のぼくが、でぶおぷす???なインフラおじさん方にAnsibleを導入してみた
Shuntaro Saiba
Plus de Shuntaro Saiba
(7)
kube-system落としてみました
kube-system落としてみました
NW入門
NW入門
OS入門
OS入門
DevOps勉強会
DevOps勉強会
新卒3年目のぼくが、でぶおぷす???なオジサンだらけのエンプラ金融PJにAnsibleを導入してみた
新卒3年目のぼくが、でぶおぷす???なオジサンだらけのエンプラ金融PJにAnsibleを導入してみた
新卒3年目のぼくが、でぶおぷす???なエンプラ金融PJにAnsibleを導入してみた
新卒3年目のぼくが、でぶおぷす???なエンプラ金融PJにAnsibleを導入してみた
新卒3年目のぼくが、でぶおぷす???なインフラおじさん方にAnsibleを導入してみた
新卒3年目のぼくが、でぶおぷす???なインフラおじさん方にAnsibleを導入してみた
Dernier
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
Dernier
(7)
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
入門!Jenkins
1.
入門! Jenkins 構築からユースケースまで 0 @tarosaiba
2.
注意 1 本資料は、Jenkinsサーバをチームメンバに 引き継ぐ際に個人的に作成した資料になります 従って、読み手は私のチームメンバーを想定しています
3.
自己紹介 2 齋場 俊太朗
(さいば しゅんたろう) インフラ ~ CI回り担当 (新卒3年目) 配属からずっとAWS、今はオンプレ Future Architect, Inc. Technology Innovation Group所属 (OSS Vulsとか) Qiita 記事 “EC2上にHoneypot(T-Pot)をインストールして サイバー攻撃をELKで可視化してみた。” @tarosaiba
4.
コンテンツ 3 What is
Jenkins? Jenkinsを構築しよう Jenkinsを使ってみよう Jenkinsのユースケースいろいろ 自動化に対する考え方
5.
What is Jenkins?
6.
5 Jenkinsは、CIツールです
7.
Continuous integration (CI)とは 6
継続的インテグレーション(CI)とは、インテグレーション(ビルド⇒テスト⇒デプロ イのプロセス)を自動化し継続的に行うこと コミット テスト/ インスペクション デプロイ ビルド
8.
Continuous integration (CI)とは 7
継続的インテグレーション(CI)とは、インテグレーション(ビルド⇒テスト⇒デプロ イのプロセス)を自動化し継続的に行うこと コミット ビルド テスト/ インスペクション デプロイ
9.
8 人間は、 絶対にミスる
10.
9 だから自動化しましょう
11.
Continuous integration (CI)とは 10
継続的インテグレーション(CI)とは、インテグレーション(ビルド⇒テスト⇒デプロ イのプロセス)を自動化し継続的に行うこと コミット ビルド テスト/ インスペクション デプロイ
12.
Jenkinsは 11 https://jenkins.io/
13.
Jenkinsは 12 https://jenkins.io/ 簡単に使える! 拡張性がすごい! とりあえず..
14.
Jenkinsの基本の型 13 Jenkinsの基本はこれだけ。あとは応用です。 バージョン管理システム サーバJenkins
15.
Jenkinsの基本の型 14 この基本の形で、いろいろなことができちゃいます バージョン管理システム サーバJenkins ビルド デプロイ・リリース テスト コミット
16.
15 このお方いろいろできます https://www.cloudbees.com/
17.
16 このお方いろいろできます Jenkins様がやられておられることは単純で 様々なツールを”連携”させて、”自動で実行”しているだけです https://www.cloudbees.com/
18.
17 Jenkins自体は全然難しくありません ただ、内部で呼んでいる個々のツール (mavenとか)が 難しい場合があるだけ
19.
まとめ Who is
Jenkins 18 Jenkinsとは、CIツールです。 ソフトウェアのビルド、テスト、サーバへのリリース等の一連作業を自動化する事 が出来ます Jenkins自体ができることは、様々なツールを”連携”させて、”自動で実行”だけで す。
20.
Jenkinsを構築しよう
21.
20 Jenkins使ってみたいけど サーバが構築できない? プロキシとか、DNSとか、NWの設定とか、、
22.
21 Jenkinsサーバ 構築しちゃいましょう!
23.
こんな感じの構成でサーバ構築します 22 社内ネットワークにJenkinsサーバを構築する前提です この構成で構築する際の手順を説明していきます 社内ネットワーク Jenkins サーバ 社内 SCMサーバ 社内 Proxyサーバ 社内 DNSサーバ internet
24.
Jenkinsサーバ構築に必要なもの 23 Jenkinsサーバの中は以下のような構成になります。 それぞれのレイヤーで必要な設定を説明します 物理/仮想マシン OS OS設定 Java Jenkinsサーバ Jenkins GitClient SVNClient
25.
Jenkinsサーバ構築に必要なもの 24 Jenkinsサーバの中は以下のような構成になります。 それぞれのレイヤーで必要な設定を説明します 物理/仮想マシン OS OS設定 Java Jenkinsサーバ Jenkins GitClient SVNClient
サーバを用意してください メモリは8GB以上あった方が無難です 社内NWに接続できるやつで
26.
Jenkinsサーバ構築に必要なもの 25 Jenkinsサーバの中は以下のような構成になります。 それぞれのレイヤーで必要な設定を説明します 物理/仮想マシン OS OS設定 Java Jenkinsサーバ Jenkins GitClient SVNClient
OSをインストールします ここではCentOS6.8 を採用します インストールメディアを用意してインストールしましょ う ※ Cent6.8の理由はチームの都合です
27.
Jenkinsサーバ構築に必要なもの 26 Jenkinsサーバの中は以下のような構成になります。 それぞれのレイヤーで必要な設定を説明します 物理/仮想マシン OS OS設定 Java Jenkinsサーバ Jenkins GitClient SVNClient
以下を設定しましょう – NW (IP,DGW) – Proxy – NTP – DNS
28.
Jenkinsサーバ構築に必要なもの 27 Jenkinsサーバの中は以下のような構成になります。 それぞれのレイヤーで必要な設定を説明します 物理/仮想マシン OS OS設定 Java Jenkinsサーバ Jenkins GitClient SVNClient
JenkinsはJavaで動くのでJavaをインストールしま しょう
29.
Jenkinsサーバ構築に必要なもの 28 Jenkinsサーバの中は以下のような構成になります。 それぞれのレイヤーで必要な設定を説明します 物理/仮想マシン OS OS設定 Java Jenkinsサーバ Jenkins GitClient SVNClient
Jenkinsをインストールしましょう
30.
Jenkinsサーバ構築に必要なもの 29 Jenkinsサーバの中は以下のような構成になります。 それぞれのレイヤーで必要な設定を説明します 物理/仮想マシン OS OS設定 Java Jenkinsサーバ Jenkins GitClient SVNClient
JenkinsでSCMにアクセスするためのクライアントツー ル(Git&SVN)をインストールしましょう
31.
30 面倒なので自動で構築させましょう
32.
Ansibleで構築します 31 Ansibleが動くサーバを用意して、Playbookを実行してJenkinsサーバ構築します ※
Ansibleとは? は別資料を参照してください 社内ネットワーク Jenkins サーバ Ansibleが 動くサーバ Ansibleで操作できるように 以下だけは設定 – OSユーザ – NW (IP,DGW)
33.
32 詳細はソースコードを参照
34.
33 Jenkins 動きました!
35.
まとめ Jenkinsを構築しよう 34 Jenkinsを構築するのは簡単です
簡単ですが、いろいろ面倒なのでAnsibleを使って構築を自動化しましょう
36.
Jenkinsを使ってみよう
37.
36 何をすればよいの?
38.
37 “ジョブ” を作ってみましょう
39.
ジョブとは? 38 ジョブは、Jenkinsで処理を自動化する際の単位です。 以下の設定項目(構成要素)
があります ジョブ ソースコード管理 General (一般設定) ビルドトリガ ビルド ビルド後の処理 設定項目 (構成要素) 名前だとか、説明文だとかを設定します ビルドパラメータも設定できます 処理のインプットとなるソースコードを チェックアウトする設定をします ジョブ実行のトリガーを設定します 処理の内容を設定します ここがメインです 完了した後に行う処理を設定します ビルド環境 ジョブ実行時のオプションを設定します
40.
ジョブの設定 (General) 39 ソースコード管理 General (一般設定) ビルドトリガ ビルド環境 ビルド後の処理 押えておく最低限の設定 プロジェクト名を指定 パラメータ化も可能 日本語の表示名を設定可能 ビルド
41.
ジョブの設定 (ソースコード管理) 40 押えておく最低限の設定 SCMの種類を選択 チェックアウトする Gitのリポジトリ(project)指定 チェックアウトする SVNのリポジトリ(パス)指定 ソースコード管理 General (一般設定) ビルドトリガ ビルド環境 ビルド後の処理 ビルド
42.
ジョブの設定 (ビルドトリガ) 41 押えておく最低限の設定 ソースコード管理 General (一般設定) ビルドトリガ ビルド環境 ビルド後の処理 ジョブが実行されるトリガーを設定可能 ・
他のプロジェクト(ジョブ)の後にビルド ・ 定期的に実行 : cronのように使える ・ Gitlabのイベント(マージ)を検知してビルド ・ Subversionの更新を検知してビルド ビルド
43.
ジョブの設定 (ビルド環境) 42 押えておく最低限の設定 ソースコード管理 General (一般設定) ビルドトリガ ビルド環境 ビルド後の処理 そこまで重要な設定はないです ビルド
44.
ジョブの設定 (ビルド) 43 押えておく最低限の設定 ソースコード管理 General (一般設定) ビルドトリガ ビルド環境 ビルド後の処理 ビルド ジョブで実行する処理を定義します。以下が主な用途です ・
Ant/Mavenの呼び出し ・ スクリプトの実行
45.
ジョブの設定 (ビルド後の処理) 44 押えておく最低限の設定 ソースコード管理 General (一般設定) ビルドトリガ ビルド環境 ビルド後の処理 ジョブ実行後の処理を定義します。 うちのチームで使うのは以下が主になるかと思います。 ・
JUnitテスト結果の集計 ・ Javadocの保存 ・ 他のプロジェクトのビルド ・ 成果物(jar,war)を保存 ・ E-mail通知ビルド
46.
ジョブの実行フロー 45 ジョブの実行は以下のようなフローで行われます ビルドトリガ ソースコード チェックアウト ビルド 後処理 実行 ジョブの流れ ビルド処理
47.
ジョブの実行フロー 46 ジョブの実行は以下のようなフローで行われます ビルドトリガ ソースコード チェックアウト ビルド 後処理 実行 設定したトリガーでジョブがキックされます
特にトリガーを設定していない場合は、WebUIからジョブ実行 ボタンを押して実行します ビルド処理
48.
ジョブの実行フロー 47 ジョブの実行は以下のようなフローで行われます ビルドトリガ ソースコード チェックアウト ビルド 後処理 実行 処理のインプットとなるソースコードやドキュメントをチェック アウトします
インプットが必要なければスキップされます ビルド処理
49.
ジョブの実行フロー 48 ジョブの実行は以下のようなフローで行われます ビルドトリガ ソースコード チェックアウト ビルド処理 ビルド 後処理 実行 メインの処理です
定義した処理が実行されます – ビルド – テスト – リリース – 等々
50.
ジョブの実行フロー 49 ジョブの実行は以下のようなフローで行われます ビルドトリガ ソースコード チェックアウト ビルド処理 ビルド 後処理 実行 メインの処理の後に実行される処理です
定義した処理が実行されます – 成果物、テスト結 果 を保 存 する – フィードバックの メ ール を 送信 す る – 後続のジョブを実 行 する – 等々
51.
デモ
52.
まとめ Jenkinsを使ってみよう 51 Jenkinsを使う
= ジョブを作る です ジョブの中では、連携できるプラグインが膨大にありますが 基本的に使用するものは限られています 用途に合わせて、設定をしていきましょう プラグインを使いこなせば、どんなことでも自動化できるはず!きっと
53.
ユースケースいろいろ
54.
53 “INPUT/OUTPUT” を意識するべし それだけでOKです。
55.
ユースケース 54 ソースコードをビルドする INPUT OUTPUT コンパイル
モジュールソースコード
56.
ユースケース 55 ソースコードをビルドしてテストする INPUT OUTPUT テスト
テスト結果ソースコード
57.
ユースケース 56 モジュールをサーバにデプロイする INPUT OUTPUT デプロイ
サーバモジュール
58.
ユースケース 57 Excelからソースコードを自動で生成してSCMにコミットする INPUT OUTPUT ソースコード生成
ソースコードExcel
59.
ユースケース 58 ソースコードのチェックを行い、フィードバックMailを送信する INPUT OUTPUT ソースチェック
フィードバックソースコード
60.
ユースケース 59 サーバから情報を取得して、レポートを出力する INPUT OUTPUT 情報収集
レポートサーバ
61.
いろいろありますが
62.
結局どうなっているかというと 61 INPUT OUTPUT 何か 何か
63.
結局どうなっているかというと 62 中ではツール(プログラム)が動いている INPUT OUTPUT 何か
何か
64.
63 Jenkinsは ツール(プログラム)を呼び出すだけ
65.
64 逆に言えば、コマンドで実行可能なことは Jenkinsで自動化可能 さらに逆に言えば、Jenkinsで自動化するには コマンドで実行可能する必要がある
66.
65 結局、コマンドたたいてくれる ただのおじさんじゃね..??
67.
66 そうとは言わせません
68.
67 そのため、Jenkinsには 膨大の数のプラグインがあります https://plugins.jenkins.io/
69.
まとめ ユースケースいろいろ 68 Jenkinsのジョブ設計・構築で意識するのは
“INPUT/OUTPUT” Jenkinsはツール(プログラム)を呼び出すだけ コマンド実行可能な処理はJenkinsで自動化可能 逆に、Jenkinsで自動化するにはコマンド実行可能な処理にする必要あり Jenkinsには膨大な数のプラグインが用意されています。 それをうまく使って自動化を進めていくのが吉です。
70.
自動化に対する考え方
71.
自動化するかしないか 70 定型作業を自動化するかどうかを考える ・・・ コスト 月日 ・・・ いつものコスト
72.
自動化するかしないか 71 自動化するためのコストと削減できるコストがある ・・・ コスト 月日 ・・・ いつものコスト 自動化するためのコスト 削減できるコスト
73.
自動化するかしないか 72 自動化する OR
しない どちらかを選択する際の観点 自動化する 自動化しない 自動化するための コスト 運用の変化の 重み 削減できる コスト オペミスの削減 効果 変化しないリスク 変化するリスク
74.
自動化すれば 73 自動化が進めば余剰の時間が生まれ、さらなる自動化を進められる。 ※
あくまでも理想 作業の自動化 コスト削減 手作業がなくなる 余剰の時間が生まれる
75.
74 そんなに、甘くない。
76.
ブラック ボックス 気を付けないといけないこと 75 自動化の処理がブラックボックスになってしまうと、、、 INPUT OUTPUT 何か
何か わからない
77.
気を付けないといけないこと 76 運用自動化、不都合な真実 20171212 by opelab https://speakerdeck.com/opelab/20171212-automation 運用自動化をしっかり実現するには 使う人が自分で作るしかない、という結論
78.
77 それでも、自動化を進めていくべき だと私は考えています
79.
自動化するかしないか 78 自動化する OR
しない どちらかを選択する際の観点 (私の考え) 自動化する 自動化しない 自動化するための コスト 運用の変化の 重み 削減できる コスト オペミスの削減 効果 変化しないリスク 変化するリスク
80.
79 ちょっと煽りますが m(_ _)m
81.
自動化するかしないか 80 自動化する OR
しない どちらかを選択する際の観点 (私の考え) 自動化する 自動化しない 自動化するための コスト 運用の変化の 重み 削減できる コスト オペミスの削減 効果 変化しないリスク 変化するリスク 今、自動化ツールは次々と進化しています 私たちは、お客様の業務をシステム化するIT企業なのに その波に乗り遅れてよいのか
82.
81 Jenkinsで簡単なことから 自動化進めましょう
83.
まとめ 自動化に対するの考え方 82 今までの作業を自動化する
or そのままを検討する必要あり もし、自動化が成功すれば良いサイクルが回り始める (はず) しかし、自動化してもそれがブラックボックスになってしまってはダメ ブラックボックスにせず、まずは簡単なところから自動化進めましょう
84.
83 おわり だいぶ煽ってしまいましたが 人は時間が割けない背景は重々承知です。ごめんなさい。 ただ、少しでも自動化が進んでチームが幸せになれるのを祈っています
Télécharger maintenant