GitHub のリリースノート自動生成機能を使う
昨年10月 GitHub のリリース機能がリニューアルされ、自動的なリリースノート生成とリリースページ作成 UI の改善が実施されました。 Improvements to GitHub Releases - generally available | GitHub Changelog 自動的なリリースノート生成については、これまで Release Drafter が使われてきましたが、この機能が本家に取り込まれた感じですね...
記事を読む使って分かった!お勧めMicroProfile仕様厳選3選
MicroProfileは大小様々な仕様が存在します。 前回紹介したサンプルアプリにMicroProfileの各機能を組み込んでフィット感を試してみた結果、MicroProfileを採用するのであれば『これは抑えておくベキ、もしくは使っておくベキ』と言える仕様がいくつかありました。今回はその中から厳選した3つの仕様をランキング形式で紹介します...
記事を読むGitHub Actions - 再利用可能ワークフローを使う
GitHub Actions のワークフローから別のワークフローを再利用する機能が昨年11月にリリースされました。この機能がなくて不便に感じていた人も多いのではないでしょうか。 GitHub Actions: Reusable workflows are generally available | GitHub Changelog Reusing workflows - GitHub Docs シンプルなワークフローを作って試してみました。 呼び出し側のワークフロー...
記事を読む使った、作った、Helidonで! - サンプルアプリの紹介
前回まではMicroProfile全体に関する軟らかめの話でしたが、今回からはMicroProfileでどのようなことができるか?そして使うのか?などの実装的な側面の話をしていきます。 その初回となる今回は、まずは動くものを見てもらう意味も含めMicroProfileを使ったサンプルアプリを紹介し、その後にMicroProfile実装として利用しているHelidonを説明します。サンプルアプリの中身は以降の回をとおして説明するため、今回はこんなのが有りますよ程度の説明に留めます...
記事を読むRust によるデスクトップアプリケーションフレームワーク Tauri
Tauri はクロスプラットフォームデスクトップアプリのための Rust によるフレームワークです。Electron と同様 Web 技術でアプリの UI を構築します。 Build smaller, faster, and more secure desktop applications with a web frontend | Tauri Studio 記事執筆時点で v1.0.0-rc.5 (Pre-release)、もうすぐ v1.0 がリリースされそうなところです...
記事を読むKubernetesのPod Security(PSS/PSA)
Kubernetesのv1.21で、今までPodセキュリティを担っていたPodSecurityPolicy(PSP)が非推奨となりました[1]。このままいくとPSPはv1.25で削除される予定です。 Kubernetesコミュニティ(Auth Special Interest Group)では、現在これに代わるものとして新たにPod Security Standardsを規定し、これをもとにPodのスペックを検証するPod Security Admissionを開発しています...
記事を読むMicroProfileってなにそれ? - MicroProfileの仕様と実装
前回はMicroProfileの登場からMicroProfileが目指すものまで説明しました。今回はMicroProfileの中身となるMicroProfileの仕様と実装について、私見も交えながら説明したいと思います。若干長い説明となりますが、最後まで目を通していただけたら幸いです。 --> 連載の紹介豆蔵デベロッパーサイトではMicroProfileをテーマに「逆張りのMicroProfile ~ Helidonで始めるマイクロサービスへの一歩 ~」を連載しています...
記事を読むMicroProfileってなにそれ? - MicroProfileの登場
連載初回となる今回はなにはともあれまずはMicroProfileそのものについて、概要から説明していきたいと思います...
記事を読むDebezium によるチェンジデータキャプチャー
Change Data Capture (CDC) は、データベースで発生した変更をキャプチャーして別のシステムに伝播させ、応答できるようにする仕組みです。CDC を利用することで、テーブルの更新をポーリングするバッチ処理などを作り込まずに、イベントドリブンな応答処理を実装できます。CDC はイベントソーシングと並んで分散システムをリアクティブに連携させるためのソリューションとして位置付けられます...
記事を読むPodスケジューリング - NodeAffinity / TaintToleration
Kubernetesで作成したPodは、Node[1]が割り当てられ、コンテナランタイムを通して実行されます。 Nodeは、多数のVMでクラスタ構成され、データセンター障害に備えて物理的に分散して配置されることが一般的です。 また、コスト最適化やワークロード要件を満たすために、コア数やメモリ容量だけでなく、OS種類やCPU/GPU、SSD/HDD等様々なスペックを持っていることもあるでしょう...
記事を読むmacOS 上で Podman を動かす
2022年1月31日で Docker Desktop の移行期間が終了し、企業での使用は無償使用の条件に該当しない限り全て有償化されました。 有償化による金額の大小に関わらず、大企業での作業には予算の認可に時間が掛かったり、中小企業だとそもそも年度の予算が足りなかったりなど、さまざまな理由でライセンス料を支払う事が難しいケースもあります。 そこで Docker Desktop の代替となるツールの候補として、Podman について調査してみました...
記事を読むEnvoy を使用して ID Token (OIDC) を検証する
庄司です。 Envoy proxy は API を使って動的に構成すると無停止で設定変更等を行うことができます。このような操作は 通常 Istio や AWS App Mesh のようなコントロールプレーンで行うことになります。 この一連の記事では Envoy proxy 単体の機能を説明するために静的な設定を用いて説明しています...
記事を読むEnvoy と Open Policy Agent を使用した認可
庄司です。 Envoy proxy は API を使って動的に構成すると無停止で設定変更等を行うことができます。このような操作は 通常 Istio や AWS App Mesh のようなコントロールプレーンで行うことになります。 この一連の記事では Envoy proxy 単体の機能を説明するために静的な設定を用いて説明しています。 認証についての記事で OpenID Connect の ID Token の検証について説明しています...
記事を読むGitHub Actions ワークフローにおけるジョブ制御
GitHub Actions ワークフローでは、複数のジョブを順次・並列・条件実行できます。各ジョブは異なるマシン(Runner) もしくは コンテナイメージで実行されます。それぞれ具体的に見ていきましょう。 --> Information本記事は、以下のブログ記事を再編・追記したものです...
記事を読むオートスケーリング - Horizontal Pod Autoscaler(HPA)
商用環境で実際にサービスが運用されると、時間帯やイベント等、様々な要因によってトラフィックが変動し、それに合わせてシステム負荷も増減します。 コンテナ以前の従来のシステムでは、あらかじめ最大のスループットを見積もり、それに合わせてサーバーのサイジングをすることが一般的でした。 ただ、これはほとんどのケースでオーバースペックとなり、費用対効果が良いとは言えない状況でした...
記事を読むServerless Framework v3新機能のStage Parameters紹介
2022/1/27にServerless Frameworkのメジャーアップデート(v3)がありました。 Serverless Framework V3 Is Live! CLIの改善以外にそれほど大きな変更はなさそうですが、v3でStage parametersという新たな機能が導入されました。 これをうまく活用することで、環境ごとに異なる設定を簡潔に記述できます。 今回はこのStage parametersを紹介したいと思います...
記事を読むS3 の静的 Web サイトを Envoy でホスティング
庄司です。 S3 に静的なコンテンツを配置して公開する場合、よく見られる構成は CloudFront とを組み合わせるパターンです。ほとんどの場合、これで問題ありません。しかし、一部のパターン、例えばエンタープライズで利用されるフロントエンドの場合には、VPN を通じたアクセスのみを許可している場合があります。このような場合、世界中の多数のユーザに低レイテンシーな配信を目的としている CloudFront のような CDN が適切とは言い難いものとなります...
記事を読むMarkdown でスライドを作れる Slidev を使う
Slidev は Markdown でスライドを作成できる NPM パッケージです。 ドキュメントは日本語版もあります。 概要ページに書かれている機能性を見ると、普段コードを書いてる人をターゲットにしていることが分かります...
記事を読むelectron-quick-start のコミット履歴で見る Electron プログラミングモデルの変遷
electron-quick-start は Electron でのプロジェクトのひな形となるアプリのリポジトリです。 GitHub - electron/electron-quick-start: Clone to try a simple Electron app Electron が1.0に到達する以前の2015年からメンテナンスされています。Electron の進化とともにファイル構成やプログラミングモデルも変わってきました。その歴史をコミット履歴から見ていきましょう...
記事を読むKarpenterのオートスケールを試してみました
2021/11/29に、AWSはKarpenterというKubernetesのオートスケーラーをGAリリースしました。 Introducing Karpenter – An Open-Source High-Performance Kubernetes Cluster Autoscaler これは有料のサービスではなく、OSSとしての提供です。現在はAWSのみに対応していますが、構造上はそれ以外のクラウドプロバイダーでも使えるものになっています...
記事を読む