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
91
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.3k
CNCF
laqiiz
1
90
Local_Kubernetes.pdf
laqiiz
1
87
Abstract Helmfile
laqiiz
1
86
Abstract GitOps
laqiiz
1
160
公開用_WebDBForum2018_テクノロジーショーケース_業務IoTストリーミング基盤.pdf
laqiiz
1
270
Other Decks in Technology
See All in Technology
小規模に始めるデータメッシュとデータガバナンスの実践
kimujun
3
590
신뢰할 수 있는 AI 검색 엔진을 만들기 위한 Liner의 여정
huffon
0
370
いまならこう作りたい AWSコンテナ[本格]入門ハンズオン 〜2024年版 ハンズオンの構想〜
horsewin
9
2.1k
リンクアンドモチベーション ソフトウェアエンジニア向け紹介資料 / Introduction to Link and Motivation for Software Engineers
lmi
4
290k
プロポーザルのつくり方 〜個人技編〜 / How to come up with proposals
ohbarye
2
140
【若手エンジニア応援LT会】AWSで繋がり、共に成長! ~コミュニティ活動と新人教育への挑戦~
kazushi_ohata
0
180
わたしとトラックポイント / TrackPoint tips
masahirokawahara
1
240
急成長中のWINTICKETにおける品質と開発スピードと向き合ったQA戦略と今後の展望 / winticket-autify
cyberagentdevelopers
PRO
1
160
IaC運用を楽にするためにCDK Pipelinesを導入したけど、思い通りにいかなかった話
smt7174
1
110
Gradle: The Build System That Loves To Hate You
aurimas
2
150
CyberAgent 生成AI Deep Dive with Amazon Web Services / genai-aws
cyberagentdevelopers
PRO
1
480
バクラクにおける可観測性向上の取り組み
yuu26
3
420
Featured
See All Featured
Product Roadmaps are Hard
iamctodd
PRO
48
10k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
7.9k
Designing on Purpose - Digital PM Summit 2013
jponch
115
6.9k
The Pragmatic Product Professional
lauravandoore
31
6.3k
Art, The Web, and Tiny UX
lynnandtonic
296
20k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
3
370
Building an army of robots
kneath
302
42k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
Unsuck your backbone
ammeep
668
57k
Scaling GitHub
holman
458
140k
Why You Should Never Use an ORM
jnunemaker
PRO
53
9k
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