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
99
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.1k
Goで工場を制御する要であるPLCにアクセスする / go-plc
laqiiz
0
2.4k
CNCF
laqiiz
1
98
Local_Kubernetes.pdf
laqiiz
1
92
Abstract Helmfile
laqiiz
1
92
Abstract GitOps
laqiiz
1
160
公開用_WebDBForum2018_テクノロジーショーケース_業務IoTストリーミング基盤.pdf
laqiiz
1
280
Other Decks in Technology
See All in Technology
Goで実践するBFP
hiroyaterui
1
120
embedパッケージを深掘りする / Deep Dive into embed Package in Go
task4233
1
220
機械学習を「社会実装」するということ 2025年版 / Social Implementation of Machine Learning 2025 Version
moepy_stats
5
1.2k
re:Invent2024 KeynoteのAmazon Q Developer考察
yusukeshimizu
1
150
Amazon Route 53, 待ちに待った TLSAレコードのサポート開始
kenichinakamura
0
170
「隙間家具OSS」に至る道/Fujiwara Tech Conference 2025
fujiwara3
7
6.5k
Formal Development of Operating Systems in Rust
riru
1
420
AWS re:Invent 2024 re:Cap Taipei (for Developer): New Launches that facilitate Developer Workflow and Continuous Innovation
dwchiang
0
170
20250116_自部署内でAmazon Nova体験会をやってみた話
riz3f7
1
100
2025年のARグラスの潮流
kotauchisunsun
0
800
.NET 最新アップデート ~ AI とクラウド時代のアプリモダナイゼーション
chack411
0
200
ゼロからわかる!!AWSの構成図を書いてみようワークショップ 問題&解答解説 #デッカイギ #羽田デッカイギおつ
_mossann_t
0
1.5k
Featured
See All Featured
Designing Experiences People Love
moore
139
23k
The World Runs on Bad Software
bkeepers
PRO
66
11k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.5k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
RailsConf 2023
tenderlove
29
970
A Modern Web Designer's Workflow
chriscoyier
693
190k
Bash Introduction
62gerente
610
210k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
28
2.2k
Facilitating Awesome Meetings
lara
51
6.2k
Raft: Consensus for Rubyists
vanstee
137
6.7k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.2k
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