Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Abstract Sentinel
Search
Junki Mano
August 26, 2019
Technology
0
130
Abstract Sentinel
社内LT用に作成したHelmfileの概要資料です
チームのDaily Standup Meeting後に、Kubernetes周りのエコシステムやツールがテーマであるLTがありそこで発表しました
Junki Mano
August 26, 2019
Tweet
Share
More Decks by Junki Mano
See All by Junki Mano
ソフトウェアアーキテクトって何やるの? ~知っておくと役立つ考え方を共有します~ | 技育祭2022秋
laqiiz
3
2.2k
Goで工場を制御する要であるPLCにアクセスする / go-plc
laqiiz
0
2.6k
CNCF
laqiiz
1
130
Local_Kubernetes.pdf
laqiiz
1
130
Abstract Helmfile
laqiiz
1
120
Abstract GitOps
laqiiz
1
190
公開用_WebDBForum2018_テクノロジーショーケース_業務IoTストリーミング基盤.pdf
laqiiz
1
350
Other Decks in Technology
See All in Technology
Function Body Macros で、SwiftUI の View に Accessibility Identifier を自動付与する/Function Body Macros: Autogenerate accessibility identifiers for SwiftUI Views
miichan
2
180
いま注目のAIエージェントを作ってみよう
supermarimobros
0
280
Aurora DSQLはサーバーレスアーキテクチャの常識を変えるのか
iwatatomoya
1
990
AWSを利用する上で知っておきたい名前解決のはなし(10分版)
nagisa53
10
3.1k
実践!カスタムインストラクション&スラッシュコマンド
puku0x
0
410
機械学習を扱うプラットフォーム開発と運用事例
lycorptech_jp
PRO
0
250
企業の生成AIガバナンスにおけるエージェントとセキュリティ
lycorptech_jp
PRO
2
170
AIのグローバルトレンド2025 #scrummikawa / global ai trend
kyonmm
PRO
1
290
バイブスに「型」を!Kent Beckに学ぶ、AI時代のテスト駆動開発
amixedcolor
2
560
【初心者向け】ローカルLLMの色々な動かし方まとめ
aratako
7
3.5k
DDD集約とサービスコンテキスト境界との関係性
pandayumi
3
280
2つのフロントエンドと状態管理
mixi_engineers
PRO
3
110
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
Building an army of robots
kneath
306
46k
Why Our Code Smells
bkeepers
PRO
339
57k
Imperfection Machines: The Place of Print at Facebook
scottboms
268
13k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
920
BBQ
matthewcrist
89
9.8k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.1k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
Making Projects Easy
brettharned
117
6.4k
Side Projects
sachag
455
43k
Transcript
Sentinel Future-Daily-Standup-Meeting Kubernetes Ecosystem Study 2019-08-26 Mano Junki
What is Sentinel?
Sentinel Sentinelは、インフラの変更が安全であることを確実にするた めに、ビジネスポリシーと規制ポリシーをコード化することで変 更範囲を制限します。infrastructure as codeとpolicy as codeを 統合することで、利用者はインフラ管理を安全に自動化できます 2017年にHashiCorpが提唱。アクセスポリシーをコードとして
記述可能にするという意味で、同社ツールが実現してきた 「Infrastructure as Code」に掛けて「Policy as Code」とした。 実現するためのツールは”Sentinel”。 https://www.publickey1.jp/blog/17/hashicorpsentinelpolicy_as_codehashiconf17.html
What is “Policy as a Code”?
Policy as a Code • Infrastructure as Codeの普及から、Terraform(HCL)や Kubernetes Menifest(YAML)などの宣言的なコンフィグの
複雑性が勃興 • これらの定義は宣言的であるので、チェックが難しい(レビュアーや規約 でガンバって後はテスト)。その割に神経質になる必要がありツラミ。 • 例えば、命名ルールや、設定された値について(k8sのレプリカ数が Staging以降は3以上であるべきなどは暗黙値化しやすい) →Policy as a Codeと呼ばれるツール
Usage
RE: Sentinel • Policy as a Codeを実現するための草分け的なツール • HashiCorpエンタープライズに入れば利用可能 •
専用のDSLでルールを記載
Example • ステージングが「us-east-1」リージョンにデプロイされ、本番環境が「us-west-1」にデプロイ されることを保証するSentinelポリシーの例です。 https://www.hashicorp.com/blog/why-policy-as-code
sentinel test sentinel test で検証
DevOps
CI • 機械的にチェックできることはルールセットを定義して、それ をもとに lint でチェックして CI で失敗させるのが効率的 • 人が意思入れしたものを、コードで宣言的に表現できる
(Bastionサーバだけはプレフィスクを付ける、リソースリ ミットをこのクラスタには入れる、など)
(個人的)チェックしたいこと
(個人的)チェックしたいこと一覧 Terraformに対して • 命名規約系 • 環境数ごとのvariableがあるか(prd, stg, etc.) • GKE最大ノード数、マシンタイプ
• 外部IP付与 • Firewall Ruleプロトコル(ssh, https) • Firewall Ruleの優先度(他のリソースとの依存性) • LoadBalancerに固定IPが必須(エフェメラルNG) • etc. →クリエイティブな仕事
まとめ
まとめ • SentinelはPolicy as a Codeと呼ばれる静的解析のLinter • Linterのルールには、各自ポリシーや業務ルールを組み込め、 より宣言的に、よりCI組み込みにフレンドリー •
ただし、Sentinelの利用にはEnterprise*利用 * 現状、OSS版の提供は無し https://www.hashicorp.com/products/terraform/offerings
Thank you