祝Jenkins15周年、「Developer Productivity Engineering」に貢献してきたことを誇りに思うと川口氏。DevOps World / Jenkins World 2019 Sanfrancisco 8月12日から15日にかけて、サンフランシスコのモスコーニセンターで「DevOps World / Jenkins World 2019 Sanfrancisco」が開催されました。 今年はJenkinsの15周年にあたります。基調講演にはJenkins開発者である川口耕介が登壇。Jenkins開発当時のことを振り返りつつ、会場の参加者とともに15周年を祝いました。 本記事では、その内容をダイジェストで紹介します(講演は英語で行われており、本記事ではその内容の一部を翻訳して紹介しています)。 Jenkinsの開発当初を振り返る Jenkinsの開発者 川口耕介氏
はじめに こんにちは、技術本部ML・データ部MLOpsブロックの鹿山(@Ash_Kayamin)です。先日、20個の開発環境APIを用意し、各APIをリクエストに応じて動的に起動できる仕組みをKnative Servingを用いて構築しました。 この記事ではKnative Servingを利用した背景と、利用方法、はまりどころ、利用によって得られたコスト削減効果についてご紹介します。なお、今回はKubernetesクラスタのバージョンとの互換性の都合でKnativev1.3.1を利用しました。2022/9現在の最新バージョンはv1.7.1になりますのでご注意ください。 目次 はじめに 目次 課題:20個の異なる開発環境APIを低コストで提供したい 解決策:Knative Servingを用いて、リクエストに応じて動的にAPIサーバーを起動する仕組みを導入する Google Cloud上でA
吉積:吉積情報 代表取締役 吉積礼敏。アクセンチュア出身で現在Google専門の開発会社を経営。Google社員以外の⽇本人として初めてGoogle Apps Certified Deployment Specialistを取得。2014年3⽉、日本人として初めてGCPのQualified Developer5種⽬合格。 上田:ソフトウェアエンジニア 上田哲広。Web系の開発でGoogle App Engineを使ったことがきっかけでコミュニティに参加し、現在はGoogle Developers Expertとして活動中。サーバーサイドでGCPやAWSを使っており、最近はAndroidやiOSのアプリも開発している。好きな言語はGoとPython。 得上:オークファンサービス基盤技術部長 得上竜一。新会社に移って、ますます意気盛んなML(Machine Learning)の第一人者。最近は
ども、大瀧です。 開催中のAWSプライベートイベント、re:Inventで続々と新サービスが発表になっています(他のブログエントリーでチェックしましょう)!今回は、CodeDeployという新サービスに触ってみたのでレポートします。 AWS CodeDeployとは CodeDeployは、その名の通りアプリケーションコードをAWSの仮想マシンサービスであるEC2にデプロイ、管理するサービスです。 従来からElastic Beanstalk、OpsWorksと言ったデプロイ系のサービスがありますが、CodeDeployは管理対象をEC2/AutoScalingのみに特化し、ローテーションやCIツールとの連携などより細やかなデプロイを意識したサービスと受け取れました。また、今後リリースされるAWS CodePipeline、CodeCommitとの連携にも期待したいところですね。費用はEC2
One of the goals that my colleagues and I urge on our clients is that of a completely automated deployment process. Automating your deployment helps reduce the frictions and delays that crop up in between getting the software "done" and getting it to realize its value. Dave Farley and Jez Humble are finishing up a book on this topic - Continuous Delivery. It builds upon many of the ideas that are
Visual Studio で C#など を書いていると、データベースの接続設定などアプリケーションで利用する値を外部ファイルに外出ししたくなることが多々あります。この時利用するのが アプリケーション構成ファイル App.config です。 How to: Add an Application Configuration File to a C# Project - Visual Studio 2015 | Microsoft Learn https://msdn.microsoft.com/ja-jp/library/ms243192.aspx さてこの App.config ですが、コンソール/WPF アプリでもビルド構成によって変えたりできることは良く知られています。そう、ASP.NET MVC などWebアプリケーションで行う、web.config の Configuration
December 2, 2014 Rails v4.1.2 capistrano v3.3.3 TL;DR cap3でrails4のデプロイとbundle install unicornの操作をできるようにするまでのメモ 手元のマシンでcap3をインストール $ gem install capistrano Railsアプリケーションのあるパスに移動 $ cd app_name cap install $ cap install mkdir -p config/deploy create config/deploy.rb create config/deploy/staging.rb create config/deploy/production.rb mkdir -p lib/capistrano/tasks create Capfile Capified $ app_name/conf
はじめに こんにちは、計測プラットフォーム開発本部SREブロックの渡辺です。普段はZOZOMATやZOZOGLASSなどの計測技術に関わるシステムの開発、運用に携わっています。 先日私達のチームでは、EKS環境にArgo CDを導入し、デプロイパイプラインのリアーキテクトを行いました。 開発環境では、Argo CD Image Updater(以下、Image Updaterとする)を活用したスピーディなデプロイ設計をしました。詳しくは「EKS環境へArgo CD Image Updaterを導入し、デプロイ時間と管理コストを削減した話」を参照ください。 techblog.zozo.com 本記事では、Argo CD導入による本番環境のリリースフロー設計やタグ更新の仕組みなど工夫した点について紹介します。Argo CDを検討している方に向けて、少しでも参考になれば幸いです。 目次 はじめに
と言いつつ、自分ではMongrel使ってない(主にlighttpd)のですが、 RailsChatでshachiさん、くまくまーのmaihaさん、笹田さん、のりおさんと話してた時に出てきた、最近のWebサーバのメモ。 thin 軽量で高速らしい。 Ebb libevとかを使っていてthinより速いらしい。 小さいファイルが弱点だったが、最近克服されたらしい。 swiftply Webサーバではない。プロクシフレームワーク。 (See also Swiftiplyのアーキテクチャとベンチマーク) あとで試す。 話は変わりますが、上述のプログラムの大半の実装はCで書かれていて、 インターフェイスの部分だけRubyで実装されている感じのものが 多いですね。これこそがRubyの真骨頂だと思う。 いろんな言語を使ってきたけれど、 最近はCとRubyの組み合わせが良い感じです。 C言語用の高性能プリプ
SVN Repository svn ls http://code.mfac.jp/svn/ 公開してるもの Archer MFで使っている、デプロイツール。 http://www.slideshare.net/tokuhirom/archer/1 オレオレCPAN MFの社員が作ったCPANモジュール。 オレオレJavaScript? MFの社員が作ったJavaScriptライブラリ。 MoFege? Sledgeのラッパー。 EggPlan? MoFegeつかって作った、セクシータスク管理システム。 未公開のモジュールに依存しているので動きません ;-) MadEye? サーバ監視系 Moxy モバイルサイト開発用プロキシ UserAgent偽装や、HTMLの幅のリサイズを行なってくれる BackPaper? no paste! 公開予定なもの 発表資料とか おすすめ おすすめCPAN
とある Subversion をリポジトリとするプロジェクトで、デプロイツールとして Capistrano を使用しようと思ったのですが、私と同僚の開発環境が異なる事を理由に、前から目を付けていた Webistrano を試してみました。 動作環境 apache 2.2.9 mysql 5.0.67 ruby 1.8.6 rails 2.1.0 passenger 2.0.3 capistrano 2.5.0 webistrano Revision 189 webistrano 本体は http://labs.peritor.com/svn/webistrano/trunk/ からチェックアウトしたものを使用しています。 基本的な使い方 下記を眺めると、何となく理解できます。 Screencasts – Peritor Webistrano – Trac Catalyst で作ったアプリを
本日のアップデートで、CodeBuild において一時停止および、AWS Systems Manager セッションマネージャー(以下、セッションマネージャー)でのビルドコンテナへのログインがサポートされました! AWS CodeBuild now supports accessing Build Environments with AWS Session Manager 何がうれしいのか これまで CodeBuild でビルド実行中のコンテナにログインする手段は提供されていなかったため、例えばビルドがうまく走らない場合のデバッグを行うには、CloudWatch Logs などのログに一旦出力したうえで探る必要がありました。 状態確認のためのコマンドを buildspec.yml に追加して、再ビルドして、ログを確認しようとしたけど「思てたんとちがーう!」内容しか表示されていなかったので、
SinatraやRailsは開発は楽だけどデプロイ方法がいろいろあって悩む。 最近はpassengerを使う方法が流行ってるけど、あいにく学校に置いたサーバーでサブドメインが使えないので同一ホスト名でapacheと共存させるしかない。 passengerでもRailsBaseURIだったか?を設定すればサブディレクトリでRack対応アプリを動かせるが、 今回は1年前からRails+mongrelのデプロイに使っているapache2のサブディレクトリをmongrelで起動してるrailsにプロキシする – 橋本詳解と同じ方法でSinatra+Thinをデプロイした。 Railsではmongrel_clusterで複数起動させたrailsにapache2のmod_proxy_balancerでアクセスを割り振ったが、同じ設定でsinatra+thinにも割り振れる。 結果、橋本商会 Twitt
How does Netflix build code before it’s deployed to the cloud? While pieces of this story have been told in the past, we decided it was time we shared more details. In this post, we describe the tools and techniques used to go from source code to a deployed service serving movies and TV shows to more than 75 million global Netflix members. The above diagram expands on a previous post announcing Sp
タイミング 各フェーズで起点となるタイミングについて説明します。 プランニング確認 上の表の「プランニング」の週に行います。 リリースの3週間前にプランニング確認のミーティングを行います。開発の進捗や、一週間でQAが行える分量なのかなどを確認して、そのバージョンに含める機能を最終調整して確定します。そのタイミングまでは、PdMやエンジニアがNotionに機能を追記していきます。 QA準備 上の表の「開発」の週に行います。 リリースの2週間前にQA準備のミーティングを行い、そのバージョンのテストシナリオやQAリソースが足りているかどうかを確認します。休日などの都合に応じて工程調整を行ったりもします。 QA開始 上の表の「QA」の週です。 QA開始前までに全てのpull requestをマージしておく必要があります。このタイミングに間に合わなかった場合は次のバージョンに延期されます。 QA開始
Deploys require a careful balance of speed and reliability. At Slack, we value quick iteration, fast feedback loops, and responsiveness to customer feedback. We also have hundreds of engineers who are trying to be as productive as possible. Keeping to these values while growing as a company means continual refinement of our deployment system. We had to invest in greater visibility and reliability
みなさんこんにちは。@ryuzeeです。 2012年11月3日,4日の二日間にかけて行われたPHPMatsuri 2012で、登壇させていただきました。 その際の資料を公開しておきます。 内容は過去にやったワンクリックデプロイ勉強会の内容にCakePHPっぽい内容を追加した感じです。 大分前からこのあたりの話はしているのですが、まだまだデファクトスタンダードでどこの会社でもやっているという状況にはほど遠く、ようやく各社取り組み始めたところ、という感じな気がします(もちろん大分状況は変わってきた) 参加者の方に聞いたところ、環境構築含め自動化されているのは2名くらいでした。 せっかくフレームワークを使い倒して高速に開発できるようになっても、もっと他に高速化すべき箇所もあるし、そもそもその速度を継続できないと意味がない、いまそのあたりができていないならできるところから着実に改善していくといいん
初期状態では、一つのインスタンスに、EC2の中だけで使えるPrivate IPと、外部からアクセスするためのPublic IP(グローバルアドレス)が割当たってます。 インスタンス自体への割当IPはPrivate IPですが、上位のルータに1:1のNATがあり、これによって外部からPublic IPでアクセスできる様になっています。 今までの、Private IPとPublic IPに加えて、今度は固定IPのグローバルアドレスが割り当てられるElastic IPを選択出来るようになりました。 これは、Public IPと同じ様に、外部からアクセスするためのグローバルアドレスですが、AWSアカウント毎に発行されるので、インスタンスの再起動などによって代わる事はありません。 これを使えば、EC2で最大の問題点であった、「インスタンスを再起動するとIPアドレスが代わる」という問題から解放されます
Hudsonとは? Hudsonとは、JavaベースのCI(Continuous Integration)ツールだ。MavenやAntなどで記述されたビルドプロセスを定期的に実行し、結果をモニタリングするものと説明するとわかりやすいだろうか。CIツールにはさまざまなものが存在するが、中でもHudsonはオープンソースであること、セットアップが容易であること、標準で日本語化されていることなどから人気を集めている。 図1 Hudson Hudsonと連携するためのEclipseプラグインとして、hudson-eclipseがある。このプラグインを利用することで、Eclipse上からHudsonに対し、ビルドの実行を要求したり、ビルド結果の監視を行うことができる。 今回はHudsonのセットアップから、hudson-eclipseによるEclipseとの連携方法までを解説する。 Hudsonのセ
新案件でpom.xmlの設定を見直したら、以前のエントリの方法が冗長だったので書き直し。 各環境で共通の設定部分をprojectタグ直下のbuildタグ内にまとめたことで、よりDRYな構成となった。 1.resourcesフォルダ以下のように分け、上書き変更したいファイルを置く。 src/main/resources/config.properties (開発) src/integration/resources/config.properties (結合テスト環境) src/production/resources/config.properties (本番) 2.pom.xmlを以下のように記述 (※2008/5/21 一部修正) <?xml version="1.0" encoding="UTF-8"?> <project> 〜 <build> ← 共通設定はすべてprojectタ
「ニフティクラウドユーザーブログ」は、移転しました。 自動でページを移動しない場合は、下記のリンクをクリックし、 新しい「ニフティクラウドユーザーブログ」をご覧ください。 今後とも「ニフティクラウドユーザーブログ」をよろしくお願いいたします。 > ニフティクラウドユーザーブログ
たびたびブログでも取り上げつつ、きちんとした書評を掲載していなかった「リーンスタートアップ」。最近読んだ本の中ではガチでおすすめできるスゴ本だと思います。リーン・スタートアップ ―ムダのない起業プロセスでイノベーションを生みだすエリック・リース 日経BP社 2012-04-12売り上げランキング : 63Amazon楽天市場価格.comby カエレバ簡単に言うと、スタートアップを成功させるには、どういうことを意識して行動、意思決定すべきかということが網羅的にまとめられている本なのですが、おもしろいのは、この本に記載されていることはスタートアップから大企業まで全てにおいて有効な手段である、と断言されていること。そして、たしかに読み進めると、至る所にでは大きな企業ではどうすべきか、企業が大きくなる過程で、このプロセスを維持するためにはどうすべきか、という知見が書かれています。これは個人から大企
> There is more than one way to manage it > Easy to learn, use and extend > It's (not) just Perl > Apache 2.0 licensed task prepare => sub { pkg 'apache2', ensure => 'latest'; service 'apache2', ensure => 'started'; }; News 2023-08-05 Rex-1.14.3 Rex-1.14.3 is now available on CPAN. It contains bug fixes for local package installation, command existence checks, and Git tests. 2023-05-05 Rex-1.14.2
ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは、システム統括本部でPrivate PaaSを担当している増田彬(@Go_zen_chu)と水落啓太(@keitam913)です。 僕たちはPaaSチームとして3年半ほど、ヤフー社内で利用されるPrivate PaaSの運用と関連システムの開発に携わってきました。 その中でどのようにPaaSを通じて利用者へ利便性を提供し、安定して稼働する体制作りをしてきたのかをお話しします。 PaaSとは? PaaS(Platform as a Service)という単語はさまざまな用途で利用されますが、その中で僕たちが提供しているのは、「社内のエンジニアが簡単にアプリケーションを動作することができるプラットフォーム」です。 この「簡単
今回構築から検証までの間で説明を省略していた 「keepalived.conf」について私が理解している範疇で説明します。 ※誤り等あればご指摘いただけると助かります。。。 まず、説明の対象となる「keepalived.conf」を以下に掲載いたします。 vrrp_instance vip_mysqld { state BACKUP interface eth0 grap_master_delay 5 virtual_router_id 1 priority 100 nopreempt advert_int 1 authentication { auth_type PASS auth_pass secret } virtual_ipaddress { 10.1.100.100/24 dev eth0 } } virtual_server 10.1.100.
Go has been designed as a backend language and is mostly used as such. Servers are the most common type of software produced with it. The question I’m going to answer here is: how to cleanly upgrade a running server? Goals: Do not close any of the existing connections: for instance, we don’t want to cut down any running deployment. However we want to be able to upgrade our services whenever we wan
AWS DevOps Blog Best practices for developing cloud applications with AWS CDK April 20, 2022: Updates are available in the Best practices topic of the AWS CDK documentation. The documentation is the most up-to-date resource going forward. In this post, we discuss strategies for organizing the development of complex cloud applications with large teams, using the AWS Cloud Development Kit (AWS CDK)
Docker、そしてCloud FoundryとPaaSの価値とは:James Watters氏に聞く(1/2 ページ) Docker人気を踏まえたとき、Cloud Foundryはどのように位置付けられるのか。PaaSの最終的な価値とは何なのか。AWSとの競合とは。Cloud Foundryの責任者である米PivotalのJames Watters氏に聞いた。 James Watters氏は、2010年9月から、Cloud Foundryに関わってきた。現在では米Pivotalのクラウドプラットフォーム事業担当バイスプレジデントとして、Cloud Foundry、Spring Source、Rabbit MQ、Redisを含む製品群の責任者を務めている。 この人の目には、「Dockerブーム」がどう映っているのか。また、Cloud Foundryはどのような点で差別化を続けていくのか。2
Windows用のXサーバは多数存在する。ここでは「X-Deep/32」を例に、XDMCP(X Display Manager Control Protocol)でLinuxにアクセスする方法を説明する。 フリーのXサーバとしてはCygwin/Xが利用されることが多いが、もともとCygwinはXサーバとして開発されたものではないので、インストールや設定にはそれなりの手順が必要となる。 X-Deep/32は、Windows 95/98/ME/NT/2000/XPで動作するXサーバで、以前は有償だったが、2004年にフリーウェアとなった。もともとが商用のXサーバなので、一般的なWindowsアプリケーションと同様の手順でインストールできる。設定もすべてダイアログボックスで行えるので、「Xサーバの使用」が目的であれば、X-Deep/32の方が簡単だ。また、Windows用の商用Xサーバを利用した
Rocketeer Rocketeer is a modern PHP task runner and deployment package. It is inspired by the Laravel Framework philosophy and thus aims to be fast, elegant, and more importantly easy to use. Like the latter, emphasis is put on smart defaults and modern development. While it is coded in PHP, it can deploy any project from small HTML/CSS websites to large Rails applications. Main features Versatile
本記事はNext.js Advent Calendar 2020の9日目です。 tl;dr Vercel以外でもIncremental Static Regenerationは可能 試した範囲ではフルに機能するのはコンテナで動かした場合のみ AWSのサーバーレスで動かすのは現時点で絶望的 はじめに 早速ですが、みなさん、次世代のStatic Site Generation(SSG)と言っても過言ではないIncremental Static Regeneration(ISR)はご存知でしょうか。 一応知らない人のためにすごく簡単に説明をすると、『リクエストに対して静的にビルドされたページを返しつつ、有効期限が過ぎたら非同期で静的ページの再生成をSSRで行う』っていうものです。Cache Controlにおけるstale-while-revalidateと同じような考え方が適用されたものとも言
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く