Noisy Neighbor - CI/CD用語集の定義
noisy neighborとは、マシンを共有するワークロードのうち、共有リソース(CPU、メモリ帯域幅、ディスクI/O、またはネットワーク)を不釣り合いに消費し、同居するワークロードのパフォーマンスを低下させるものです。密に詰め込まれたCI runnerでは、断続的で再現しにくい速度低下を引き起こします。
CIでの症状
通常4分で終わるjobが、コードの変更がないのに時々12分かかることがあります。これは、同じホスト上の別のjobがディスクI/Oやメモリ帯域幅を飽和させたためです。原因が自分のjobの外部にあるため、flakinessのように見えます。エフェメラルな単一jobのrunnerは、各jobに独自のマシンを与えることでnoisy neighborを排除します。
関連ガイド
Bin Packing - CI/CD Glossary DefinitionBin Packing: Bin packing is the scheduling strategy of placing as many jobs (or containers) onto each machine…
Ephemeral Runner - CI/CD Glossary DefinitionEphemeral Runner: An **ephemeral runner** is created fresh for one job and destroyed after, giving clean, rep…
Disk IOPS - CI/CD Glossary DefinitionDisk IOPS: Disk IOPS (input/output operations per second) is the rate at which a storage device can service r…