JsonnetというJSONテンプレート言語を紹介する。 後で見るように、これはJSONを生成するための汎用テンプレートというよりはむしろ、計算や依存関係を含む設定を静的に書き下すために便利なのではないかと考えられる。 実際Jsonnetの仕様はGoogleのBCLに似ている。BCLはGoogleでコンテナクラスタシステムBorgの設定を記述するために使われている言語だ。 JSONテンプレート言語 ある意味でJsonnetは毎度おなじみのやつだ。JavaScriptの文法の不便さに対してalt JSが多数出てきた。CSSにおけるネストの分かりづらさやの記述の重複に対してCSS preprocessorが多数出てきた。それと同じようにして、Webにおける機械可読データのLingua FrancaたるJSONを記述するのが不便なのでJSONテンプレートが出てきた。 Jsonnetはその中の1つ
これは,NTTコミュニケーションズ Advent Calendar 2018 14日目の記事です はじめに Cloud Native Days Tokyo 2018 で発表もさせていただいたのですが、会社でSpinnakerを試しているチームのお手伝いをしております。そこの要望としてPipelineをWebのGUIからではなく、コードとして扱いgitなどでバージョン管理をしたいという話があったので、Pipeline-templateを試してみることにしました。 つまり今回の記事はSpinnakerのpipeline-templateで困っていると言うニッチな方に向けた記事となります。 Spinnakerは簡単に言うと「オープンソースのマルチクラウド対応な継続的デリバリのためのプラットフォーム」というものなのですが細かい説明は今回は割愛させていただきます。Spinnakerが気になる方は上記
構成 デプロイターゲットとなるKubernetesクラスタはEKSで稼働している 上記のクラスタとは別のKubernetesクラスタでSpinnakerを稼働させる halコマンドは専用のEC2上で実行する(後述) 前提条件 必要なKubernetesクラスタが作成済み halコマンド実行環境作成 halコマンドとは halはHalyardをインストールすることで利用できるコマンド halconfigがSpinnakerの構成を管理しており、halコマンドによってhalconfigの内容をコントロールできる 環境作成について 複数人でSpinnakerを運用することを見据えてローカルPCではなく専用のEC2で環境を作る AMIはUbuntu16.04を選択 Amazon LinuxとUbuntu18.04だとHalyardのセットアップに失敗 そもそも公式ドキュメントでもUbuntu18.
そのため、Spinnaker 1.0からはインストールや設定を行うための専用ツール「halyard」が導入された。Spinnakerをインストールするにはまずこのhalyardをインストールし、続いてhalyardが提供する「hal」コマンドを使ってコンポーネントの設定やインストールを行うことになる。 halyardのインストール方法については公式ドキュメントでも解説されているが、直接作業用のマシンにインストールする方法と、halyardがインストールされたコンテナを利用する方法がある。Spinnakerが提供しているインストールスクリプトはUbuntu 14.04/16.04向けとなっていることもあり、今回はコンテナをDocker経由で実行する方法を選択した。 また、Spinnakerの各コンポーネントのインストールについても、これらを直接ホストにインストールする方法(Local Deb
SREの@deeeetです。 新しい機能を素早くリリースしフィードバックを得てすぐにPivotの決定を行う、もしくはリスクを抑え小さな改善を継続的に行うContinuous Deliveryはソフトウェア開発において非常に重要です。 メルカリではこのContinuous DeliveryのためのPlatformにSpinnakerを採用し始めました。現在は主にkubernetes(k8s)へのコンテナアプリケーションのDeployに利用しており、既にいくつかの本番アプリケーションがSpinnakerによりDeployされています。 本記事ではなぜSpinnakerを採用したか、Spinnakerとは何か、実際にメルカリでどのようにSpinnakerを使っているか、について簡単な紹介をします。 kubernetes上でのDeploy問題 k8sへのコンテナイメージのDeployは非常に簡単で
みなさんKubernetesクラスタへのデプロイはどのように実施していますか?? 小規模環境であれば kubectlを利用した手動デプロイ、もう少し規模が大きい場合は、CodePipeline、CodeBuildなどを利用した自動デプロイにて実施するケースが多いのではないでしょうか。 そんな中、最近のk8s界隈では 俺たちはSpinnakerでデプロイしているぜ!!という声をちらほら聞くようになりました。 ということで今回は、Spinnaker環境の構築方法と、何かできるのかを簡単に紹介したいと思います。 Spinnakerとは Spinnakerは、Netflix社が開発したマルチクラウド環境への継続的デリバリーツールです。 大雑把に説明すると、CodePipelineの機能、CodeDelpoy(マルチクラウド)の機能、管理対象リソースのViewがあるイメージです。 その他、Pipel
終了 2018/04/27(金) 18:30〜 あつまれ! CI/CDツール大集合! - cndjp第5回 Cloud Native Developers JP 第5回勉強会です。 hhiroshell 他 東京都渋谷区道玄坂1丁目12番1号
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く