サービスメッシュ環境における OpenTelemetry 活用 / OpenTelemetry in Service Mesh
![サービスメッシュ環境における OpenTelemetry 活用 / OpenTelemetry in Service Mesh](https://cdn-ak-scissors.b.st-hatena.com/image/square/b9579786dbb3cae4377fb1735102195547531998/height=288;version=1;width=512/https%3A%2F%2Ffiles.speakerdeck.com%2Fpresentations%2F9425840773a24456bc0a24feb7ca88bc%2Fslide_0.jpg%3F29485248)
PydanticのBaseModelの恩恵をlistやdictにも与えたい こんにちは、極論モンスターのYosematです。 PydanticはTypeSafeにPythonをかけて最高ですよね。特に私が好きなのはmodel_validateのようなSerialize/Deserializeの機能です。しかしPydanticのBaseModelはうまいことdictやjsonへのSerialize/Deserializeができますがlist[MyModel]はPydanticのクラスではないのでmodel_validateのようなクラスメソッドにアクセスできません。 ダサい方法を先に書きます。 from __future__ import annotations from pydantic import BaseModel class MyModel(BaseModel): value: s
""" エントリポイント """ import click # サブコマンド ファイル分割 from . import cli1 # サブコマンド 1 from . import cli2 # サブコマンド 2 @click.command(cls=click.CommandCollection, sources=[cli1.cli1, cli2.cli2]) @click.option('--debug/--no-debug', default=False) # 全サブコマンドに共通のオプション @click.pass_context def cli(ctx, debug): """エントリポイント""" ctx.obj = {'debug': debug} if __name__ == '__main__': cli() """ サブコマンド 1 """ import click cl
Retty インフラチームの幸田です。 6月に実施したマイクロサービス強化月間で公開した記事では、マイクロサービス環境を Terraform を利用して刷新した話を書きました。 engineer.retty.me この記事では前回と重複する箇所もありますが、Terraform の CI/CD にフォーカスした内容を書こうと思います。 CI を整備するにあたって意識したこと 「誰でも」かつ「安全に」利用できるように CI 上ですべての作業を完結させる Pull Request によるレビュー環境の整備 バージョンアップ作業の完全自動化 Terraform のディレクトリ構成について リポジトリの運用フロー Terraform によるリソースの追加、変更、削除 tfmigrate によるステートファイルの操作 CI で実行される job について Pull Request をオープンした時 P
Pythonにはclickというコマンドラインパーサとして使えるライブラリがあります。同様のライブラリとして以前からargparseがありますが、clickはargparseよりももっと簡単に使えるライブラリです。 clickでコマンドラインパーサを書く例は以下になります。 # main.py import click @click.command() @click.option( "--count", type=int, default=1, required=True, help="Number of greetings.", ) @click.option( "--name", type=str, default="Your name", required=True, help="The person to greet.", ) def hello( count: int, name
JX通信社 Engineering Manager の @jazzsasori です。 皆さん自身の成長にコミットしてますか? マネージャーの皆さんメンバーの成長にコミットしてますか? 私はゼルダ無双の体験版をダウンロードしてしまったために成長にコミットできなさそうです。 あと買ってしまいそうです。 弊社もリモート中心のメンバーが増えました こんなご時世なので弊社も多くのメンバーの勤務がリモート中心となって久しいです。 弊社はSlack, Zoom, Discord を活用、リモートに関する制度の充実などにより比較的コミュニケーションはうまくいっているように思います。 が、ご多分に漏れず多少のコミュニケーションに関する問題も起こっているのも事実です。 最近メンバーとエモい話してますか? 私は昭和の人間なので飲みニケーションが好きです。 私は生中を飲みながら「やったろうぜー!」なんて言いなが
SREのたっち(@TatchNicolas)です 本記事は、先日の弊社主催のTechトークイベントで発表した内容について、もうすこし詳細に書いてみます。 jxpress.connpass.com TL;DR; GitLabのenvironmentとHelmのreleaseを対応させることで動的な環境の作成・削除を実現した CIOpsとGitOpsを使い分けて、「ちょうどいい」使用感を目指した 環境の順番待ちがなくなった! 背景 JX通信社のサーバサイド開発では、ECSによるコンテナベースでの開発・デプロイが主流です。*1 環境としては ローカル環境: docker-composeやgo run yarn run などで起動する、文字通り手元のマシンのローカル上で動かす環境 開発版環境: SQSやFirestoreなどのマネージドサービスや、ローカルで立てるのが大変な別のAPI*2との繋ぎ込
自分が Node.js を用いたアプリケーションのコンテナイメージを作成するときに気をつけていることをメモとして記載します。 Docker and Node.js Best Practices node の Docker Image のリポジトリには Best Practices というドキュメントが用意されています。 基本的には、これに従って Dockerfile を書いています。 Handling Kernel Signals 上記の Best Practices にも記載がありますが、Node.js は PID 1 で動作するように設計されていないようで、そのままコンテナイメージで動かそうとすると SIGINT 等のシグナルを上手く扱ってくれません。 そのため tini 等を PID 1 で動かし、その子プロセスで Node.js を動かします。 docker コマンドには --in
これは何? kaniko を使って, docker buildx みたいなことをする話です. 結論 docker run の引数に --platform つけ, それに対応する kaniko の image をしていす ただし, linux/amd64, linux/arm64, linux/ppc64le の3種類のみ対応しています. 想定読者 docker in docker をやりたくない人 想定していない読者 Kubernetes 使う人 詳細 kaniko は customPlatform の説明にあるように, 異なるアーキテクチャに向けた docker image のビルドはできません. ですが, kaniko 自身は v.1.5.0 から multi-platform image となり, 3種類のプラットフォームで動作することができます. ということで, 作成する dock
みなさんこんにちは。@ryuzeeです。 スクラム実践者のバイブルとなるのがスクラムガイドです。 本文は、日本語版の場合で12ページと分量は少ないですが、多くの人のフィードバックを受けて何度も改訂しているだけあって必要なことが凝縮されています。 チームで定期的に読み合わせをすると学びがあって良いのではないかと思います(安定の角さん翻訳で読みやすさも抜群です)。 一方で、スクラムでは責任とイベントと作成物が密接な関係を持つため。どの順番に説明しようとしても、まだ説明していない他の要素に依存したり、説明が分散したりします。 これは構造上仕方がないことですが、初学者にとってはとっつきにくさもあるかもしれません。 例えば、スプリントレビューの内容に関する記述は、スクラムガイド日本語版では、7ページ、10ページ〜11ページ、13ページに分散しています。 10ページから11ページがスプリントレビューそ
AAPやAWXでジョブ実行に必要なExecution Environments(EE)を作るために通常はAnsible Builderを使ってコンテナイメージをビルドするが、要件を満たせばDockerfileを直接書いて自前でビルドしても動くのでは…と思ったので確認してみた。 結論としては、以下が入っていれば最低限動作した。 Ansible Core プラス必要なAnsible Collection Ansible Runner SSHクライアント sshpass (パスワード認証の場合) Ansible BuilderではRHEL系コンテナしか使えない(夏にv3対応したときにいろいろ試したがRHEL系以外はダメだった)が、お試しでDebian系…もいいかと思ったけど、せっかくなのでAnsible利用時にあまり使われず(個人の感想)、イメージサイズがより小さいAlpine Linuxでビル
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く