SlideShare a Scribd company logo
1 of 48
Download to read offline
Azure Kubernetes Service
真壁 徹
日本マイクロソフト株式会社
クラウドソリューションアーキテクト
2019/12/4
2019年を ふりかえる
自己紹介
apiVersion: selfIntroduction/v1
name: “真壁 徹(まかべ とおる)”
company:
name: “日本マイクロソフト株式会社”
role: “クラウド ソリューションアーキテクト”
career:
- name: “大和総研”
- name: ”HP Enterprise”
cert : “CNCF Certified Kubernetes Admin.”
AKS(Azure Kubernetes Service)の
2019年の機能拡充やトピックを
おさらいしよう
※AKSの利用に大きく影響する他サービスも一部含みます (ACR、ACIなど)
Azure Kubernetes Service (AKS) 主なリリース
補足のないものはGAしてます
API ServerのIPアドレス ホワイト
リスト制御
APIサーバー 監査ログ
Azure Monitor for containers
Virtual Node in ACI
ユーザー定義ルートのサポート
Azure Arc による管理 (Preview)
Kubernetes 1.12、1.13、1.14、
1.15(Preview)
Availability Zones
複数Node Pool
Cluster Autoscaler & VMSS
Network Policy
Japan East/West両リージョン対応
Azure Kubernetes Service (AKS) 主なリリース
補足のないものはGAしてます
AKS Pod Security Policy
(Preview)
Azure PolicyとOpen Policy Agent
の統合 (Preview)
Azure Monitor for containers ラ
イブデータ表示 (Preview)
Azure Monitor Prometheus
Metric スクレイピング (Preview)
Standard Load Balancerサポート
App Gateway Ingress Controller
証明書ローテーション
Egress lockdown
対話型診断
Managed Identity 統合 (Preview)
Windowsノード (Preview)
Azure Container Registry (ACR) 主なリリース
補足のないものはGAしてます
リポジトリスコープ RBACサポー
ト (Preview)
監査と診断ログ (Preview)
Azure Security Centerによるイ
メージの脆弱性スキャン
(Preview)
署名済みイメージのサポート
ACR Tasks スケジューリング
ACR in VNet (Preview)
Helm Chartリポジトリ (Preview)
ACR Tasks Cloud Native Buildpack
サポート (Preview)
今後のプランは? 公開ロードマップをご覧下さい
GitHubに公開してます
プライベートクラスター
ノード自己修復
ノード自動アップグレード
Low Priority ノードプール
などなど
そのほかリリース
マイクロソフトがリード/関与が強い CNCFプロジェクトなど
Kubernetes Confidential
computing
Distributed Application Runtime
(Dapr)
Cloud Native Application Bundle
(CNAB) with Brigade
KEDA (Kubernetes-based Event
Driven Autoscaling)
GitHub Actions for deploying to
Kubernetes service
Service Mesh Interface
Helm 3
2019年末時点での
AKS ベストプラクティス
公式ベストプラクティス
Azureの製品グループだけでなく、
ユーザーに接しているメンバーが
その知見をコンテンツとして提供
手を動かす前に目を通してもよ
し、振り返り/改善のチェックに読
むもよし
まずは ここ を見よう
Ignite 2019 Breakout Session
BRK4006 Applying best practices to Azure Kubernetes Service (AKS)
AKSを本番で使うなら必見
高可用性
バックアップ&リストア
マルチクラスター & マルチリー
ジョン
アップグレード
などなど
不安定な時はノードのディスク性能を疑う
kubeletやtunnnelfrontなど、ノード上にはアプリ以外にも重要コンポーネントが動いている
IOPSの高いディスクにすると安定することが とても とても 多い
PodのResource Limitも重要 暴れん坊を抑え込もう
特にメモリ
周辺リソースと合わせてInfrastructure as Code化する
アップグレードや新機能の検証など、運用しているとクラスターを作る機会は多い
Kubernetesだけで完結するシステムは稀
データストアやネットワーク系サービスなど周辺リソースも合わせて作れるようにする
TerraformでもARM Templateでも お好みで
俺のベストプラクティス
おかしいな、という時はGitHubのIssueを検索する
サポート窓口ではありません が、PMがIssueを見て対応しています
ズバリな解決策が見つかることも
とはいえ サポート要求はサポート窓口、新機能リクエストはAzure Feedbackへ
話題の機能/OSSだからといって あれもこれも使う必要はない
運用するなら腹落ちしたもの、ビジネス目標に合うものを選んで使いましょう
華やかな 事例の裏には 生存者バイアスが
みなぎらないなら その時を待つ
どんどん進化するので 追従には組織としてのモチベーションが重要です
流行ってるっぽいから、誰かにやれって言われたから、では続きません
AKS/Kubernetesの代替方式は多くあります (App Service、Functions、ACI、etc)
俺のベストプラクティス
ここからは
鮮度重視で
英語です
あっ 5 7 5
主要リリース/機能の
図解とポイント
Additional
nodes needed
Pods are in
pending state
Cluster Autoscaler
Pod Pod
Node
Pod Pod
Node
Pod Pod
AKS cluster
Cluster
AutoscalerAzure
Node is granted
Pending pods
are scheduled
The cluster autoscaler watches for pods that can't be scheduled on nodes because of
resource constraints. The cluster then automatically increases the number of nodes.
1. HPA obtains resource metrics and
compares them to user-specified
threshold
2. HPA evaluates whether user specified
threshold is met or not
3. HPA increases/decreases the replicas
based on the specified threshold
4. The Deployment controller adjusts
the deployment based on
increase/decrease in replicas
• Elastically provision compute capacity
in seconds
• No infrastructure to manage
• Built on open sourced Virtual Kubelet
technology, donated to the Cloud Native
Computing Foundation (CNCF)
Serverless Kubernetes using AKS virtual nodes
Node
Pods
Node
Pods
Kubernetes
control plane
Azure Container
Instances (ACI)
Pods
Virtual node
Application Gateway Ingress Controller
• Application Gateways as Ingress for AKS
• Deployed using Helm
• Utilizes pod-AAD for ARM authentication.
• Tighter integration with AKS add on support upcoming
• Supports URI path based, host based, SSL termination,
SSL re-encryption, redirection, custom health probes,
draining, cookie affinity
• Support for Let’s Encrypt provided TLS certificates
• WAF fully supported with custom listener policies
• Support for multiple AKS as backend
• Support for mixed mode – both AKS and other backend
types on the same Application Gateway!
Application
Gateway
Azure ARM
Azure Key Vault
Azure Kubernetes
Services (AKS)
API
server
AGIngressController
Ingressresource
Pods
Configure routing rules
Accelerate containerized development
Kubernetes and DevOps
better together
Develop
• Native containers and Kubernetes support in IDE
• Remote debugging and iteration for multi-
containers
• Effective code merge
• Automatic containerization
Deliver
• CI/CD pipeline with automated tasks in a few
clicks
• Pre-configured canary deployment strategy
• In depth build and delivery process review and
integration testing
• Private registry with Helm support
Operate
• Out-of-box control plane telemetry, log
aggregation, and container health
• Declarative resource management
• Auto scaling
Inner loop
Test
Debug
Azure
DevSpaces
AKS dev
cluster
CI/CD Pipelines
GitHub repos
Azure
Container
Registry
Helm chart
Container
image
AKS
production
cluster
Azure
Monitor
Scale
Terraform
Develop Deliver Operate
Boards
GitHub Actions for Kubernetes on Azure
1. Authenticate and login securely to an Azure
subscription
2. Set the target AKS cluster
3. Create Kubernetes secret objects to manage
sensitive information
4. Connect to the Kubernetes cluster and deploy
manifests, etc.
Action
docker-login
Action
k8s-create-secret
Action
aks-set-context
Action
k8s-deploy
Pull Request flow in Dev Spaces
1. John is working out of branch “feature-x”
locally
2. John commits his code and pushes his
branch to his remote GitHub repo
3. John creates a pull request before
merging the changes into the
application’s main branch
4. GitHub Actions workflow is triggered
upon PR creation; a delta namespace for
the pull request is created and the code
is deployed to the namespace
Source
code control
master
namespace
feature-x
namespace
GitHub Actions
workflow builds and
deploys
feature-x
John
Developer
Lisa
Reviewer
Open pull
request, deploy
feature-branch
Pull request merged,
master updated
PR namespace
created, changes
deployed
Azure Dev Spaces + AKS cluster
5. A team member reviews the changes in
the context of the entire application
6. The pull request is approved and a
GitHub workflow is triggered to update
the master namespace with the merged
code changes
AKS with RBAC
Storage
SQL
Database
Cosmos
DB
VNet
Node Node
Pod Pod
AAD Pod Identity
Key Vault
Active
Directory
Active
Directory
Identity
Use familiar tools like AAD for fine-grained identity and access control to Kubernetes resources from
cluster to containers
1. Kubernetes operator defines an
identity map for K8s service accounts
AAD Pod identity
2. Node Managed Identity (NMI)
watches for mapping reaction and
syncs to Managed Service Identify
(MSI)
3. Developer creates a pod with
a service account, and pod uses
standard Azure SDK to fetch
a token bound to MSI
4. Pod uses access token to consume
other Azure services; services validate
token
Kubernetes
Kubernetes
controller
Azure MSI
Azure
Identity
Binding
Active
Directory
Pod Identity
NMI + EMSI
Pod
Token
Azure SQL
Server
Developer
<¥>
1. Cloud architect assigns a deployment
policy across cluster(s)
2. Developer uses standard Kubernetes
API to deploy to the cluster
3. Real-time deployment enforcement
(acceptance/denial) provided to
developer based on policy
4. Cloud architect obtains compliance
report for the entire environment and
can drill down to individual pod level
Azure Policy for clusters (OPA Integration)
Cloud
Architect
Developer
Cluster-1
Cluster-2 Cluster-3
AKS
Azure
Policy
Cluster-3

Cluster-2Cluster-1
Compliance reports
2. Node and cluster level security
• Automatic security patching nightly
• Nodes deployed in private virtual network
subnet w/o public addresses
• Network policy to secure communication
paths between namespaces (and nodes)
• Pod Security Policies using Gatekeeper
• K8s RBAC and AAD for authentication
• Threat protection on nodes
AKS with RBAC
Security overview
1. Image and container level security
• AAD authenticated Container registry
access
• ACR image scanning and content trust for
image validation
3. Pod level security
• Pod level control using AAD Pod Identity
• Pod Security Context
4. Workload level security
• Azure Role-based Access Control (RBAC)
& security policy groups
• Secure access to resources & services
(e.g. Azure Key Vault) via Pod Identity
• Storage Encryption
• App Gateway with WAF to protect against
threats and intrusions
Developer
Azure
Container
Registry
Kubernetes
Admin
Azure Storage SQL Database Cosmos DB
Internal
User
Internal
Load Balancer
External
User
External
Load Balancer
Azure VNet
Node Node
Pod Pod
AAD Pod Identity
Ingress
Controller
Encrypted Storage
Azure
Key Vault
Ingress
Controller
App Gateway
External
DNS
Active
Directory
AKS Support in Azure Security Center
1. For managed subscriptions, each new AKS
cluster and node are discovered in ASC
2. ASC monitors AKS cluster for security
misconfigurations and provides
actionable recommendations for
compliance with security best practices
3. ASC continuously analyzes AKS for
potential threats based on:
a. Raw security events such as network
data and process creation
b. Kubernetes log audit
Azure
Security
Center
Continuous discovery of
managed AKS instances
Actionable recommendations
for security best practices
Detect threats across AKS
nodes and clusters using
advanced analytics
Azure Kubernetes Service
AKS security configuration
API Server
Master
Workers
Node1
Container runtime
Security center
Node2
Container runtime
Security center
Node3
Container runtime
Security center
Verified by Security Center
Audit log
Raw security events
…and reports any threats and malicious
activity detected (e.g., “API requests to your
cluster from a suspicious IP was detected”)
Threat protection
Automated threat detection and best practices recommendation for Kubernetes clusters using advanced
analytics from Azure Security Center
Cluster Cluster Cluster
Azure
Security
Center
Continuous discovery of
managed AKS instances
Actionable recommendations
for security best practices
Detect threats across AKS
nodes and clusters using
advanced analytics
Azure Kubernetes Service
Image Security
Developer
CI/CD
Pipelines
Azure Container Registry
Azure
Kubernetes
ServiceImage scanning
Fail Pass
Your private registry, with built-in Helm chart support, only deploys validated images and can be
automatically geo-replicated to the data center close to where your users are
Vulnerability
scanning
Actionable
recommendations
Admin
Secure network communications with VNET and CNI
AKS subnet
Backend
services subnet
Azure VNet A
On-premises
infrastructure
Enterprise
system
Other peered VNets
VNet peering
Azure
Express
RouteAKS cluster SQL Server
1. Uses Azure subnet for both your
containers and cluster VMs
2. Allows for connectivity to existing
Azure services in the same VNet
AKS VNet integration works seamlessly
with your existing network infrastructure
3. Use Express Route to connect to on-
premises infrastructure
4. Use VNet peering to connect to other
VNets
Service
Endpoint
Azure SQL
PaaS DB
5. Connect AKS cluster securely and
privately to other Azure resources
using VNet endpoints
1. A developer authenticates to the AAD
token issuance endpoint and requests
an access token
Identity and access management through AAD and RBAC
Azure delivers a streamlined identity and
access management solution with Azure
Active Directory (AAD) and Azure
Kubernetes Services (AKS)
2. The AAD token issuance endpoint
issues the access token
3. The access token is used to
authenticate to the secured resource
4. Data from the secured resource is
returned to the web application
AKS
Azure Active
Directory
Token
Token
Developer
Azure Pipelines build audit & enforcement using Azure Policy
1. Cloud architect assigns a policy across
clusters; policy can be set to block non-
compliance (deny) or generate non-
compliance warnings (audit)
2. Developer makes code change that kicks
off a build on Azure Pipelines
3. Azure Pipelines evaluates the request for
policy compliance
4. If policy is set to deny, Azure Pipelines
rejects the build attempt if any non-
compliance is identified
5. If policy is set to audit, a non-compliance
event is logged and the build is allowed
to proceed
Cloud
Architect
Developer
Cluster-1 Cluster-2 Cluster-3
AKS
Azure
Policy
CI/CD Pipelines
Pass
Fail
Deny policy
</>Yes No
Compliance check
</>
Azure management
experiences
Azure Portal
Azure CLI
Azure SDK
Hybrid Agent
and Services:
Azure Arc for Kubernetes - Components
Azure
Identity
RBAC
Policy
Index
Groups
Etc.
Azure Resource
Manager
Azure
Container
Registry
Kubernetes
K8s API server
Cluster provisioning
Cluster upgrade and patch
management
Cluster lifecycle management
Cluster monitoring
Administrative access
K8s native tools
Customer locations
Config Service
K8s Connect
Service
Source Repo
GitOps
Manager
Config Agent
Connect Agent
k8s cluster
1: security.yaml
Cluster
Admin
3: Arc
operators
4:
Kubernetes
Cluster –
Azure Arc
2: Policy
Security
Admin
6: config
to cluster
8: get manifest
from repo
7: Git Url
9: apply and
enforce rules
Azure Arc for Kubernetes - Workflow
5
Azure Monitor for containers Azure
Monitor
for containers
Visualization
Insights
Monitor &
analyze
Response
Native alerting with integration
to issue management and
ITSM tools
Monitor and analyze
Kubernetes and container
deployment performance,
events, health, and logs
Provide insights with
cluster health rollup view
Visualize overall health and
performance from cluster to
containers with drilldowns
and filters
Cloud native experience
for Azure Monitor with
Prometheus integration
Azure
Kubernetes
Service
Azure
Pipelines
Observability
Observe live container
logs and Kubernetes
event log on container
deployment status
Virtual
node
Prometheus
1. Get detailed insights about your
workloads with Azure Monitor
3. See graphical insights about clusters
2. Filter for details about nodes,
controllers, and containers
4. Pull events and logs for detailed
activity analysis
1. Deploy Azure Arc for Kubernetes
agent
2. Azure Arc agent registers cluster with
ARM
3. Cluster operator applies cluster
configuration via ARM
4. Configuration agent picks up
configuration and syncs state
from git repo
5. Configuration agent informs Azure
policy of status
6. Cluster operator or application
developer pushes changes via GitHub
Cluster
Connect RP
Cluster
operator
Azure
Resource
Manager
Cluster
Config RP
Azure
Policy
GitHub
Config
agent
Azure Arc
agent
Cluster operator/
Application dev
Azure Monitor for containers
Configuration management scenario
Kubernetes on-prem
AKS Diagnostics
Azure
backend
telemetry Node 1 Node 2
AKS
production
cluster
User
Azure
portal
Zero configuration
and zero cost
Intelligent detectors based
on AKS-specific telemetry
Cluster-specific
observations
Recommended actions
for troubleshooting
<¥>Cluster Insights
Cluster Node Issues
Node Issues Detected
Node Insufficient Resources Detected
Create, Read, Update & Delete Operations
Identity and Security Management
AKS Diagnostics
Sample diagnostics web portal
!
!
!


x
An interactive and intelligent experience
for self-troubleshooting your app issues
Diagnose and guide you through each
problem with best practices
recommendations
Intelligent search capabilities to help you
find right answers fast
Straight out-of-the box, no extra
configuration necessary
Open-source component jointly built by Microsoft and
RedHat
• Event-driven container creation & scaling
Allows containers to “scale to zero” until an event
comes in, which will then create the container and
process the event, resulting in more efficient
utilization and reduced costs
• Native triggers support
Containers can consume events directly from the
event source, instead of routing events through
HTTP
• Can be used in any Kubernetes service
This includes in the cloud (e.g., AKS, EKS, GKE, etc.)
or on-premises with OpenShift—any Kubernetes
workload that requires scaling by events instead of
traditional CPU or memory scaling can leverage this
component.
Kubernetes-based event-driven auto-scaling (KEDA)
Kubernetes cluster
External
trigger source
KEDA
AKS clusterScaler
Controller
Metrics adapter
SMI defines a set of APIs that can be implemented
by individual mesh providers. Service meshes and tools
can either integrate directly with SMI or an adapter can
consume SMI and drive native mesh APIs.
• Standard interface for service mesh on Kubernetes
• Basic feature set to address most common
scenarios
• Extensible to support new features as they become
widely available
Service Mesh Interface (SMI)
Apps Tooling Ecosystem
…and more
Service Mesh Interface
Routing Telemetry Policy
Kubernetes
ユーザー事例と
そのアーキテクチャー
Bosch Increases Vehicle Safety Using Precision
GPS Algorithms and Azure Kubernetes Service
Challenge: Bosch designed a software development kit (SDK) that
can be used by original equipment manufacturers (OEMs)
to embed driving safety information at scale. For such a
service to work commercially, they had to build a real-
time data ingestion and processing pipeline capable of
detecting hazards and notifying drivers within seconds
Solution: The solution is deployed as multiple microservices
running in containers behind an Azure API Management
gateway. AKS provided the simplicity a serverless
Kubernetes experience that provided the elastic
provisioning they wanted without the need to manage the
infrastructure.
Outcome: By running their solution, which has been downloaded by
12 million users, on Azure and AKS, the average time to
detect driving hazards dropped to approximately 60
milliseconds.
What we like about AKS is the simplified
Kubernetes experience. It's click and deploy,
it’s click and scale. It’s infrastructure as code
too, which is quite cool for us.”
— Christian Jeschke, Product Owner, Bosch
Click icon to learn more
“
Bosch: architecture
1. Sensor data is generated and streamed to
Azure API Management
2. AKS cluster runs microservice that are deployed
as containers behind a service mesh; containers
are built using a DevOps process and stored in
Azure Container Registry
3. Ingest service stores data in an Azure Cosmos
DB and other data storage destinations
4. Asynchronously, the map matching service
receives the data from Kafka Streams on Azure
HDInsight
5. Data is processed and stored the result in
Azure Database for PostgreSQL and maps are
continuously updated using Azure Databricks
6. A web app running in Azure App Service is used
to visualize the results
VNet
Security
Public API Key Vault
SDK
Hotspots
WDW Service
Blob
Storage
Web Apps
ACR
AKS
Service
Kafka Streams
on HD Insights
AKS
Map matching
Data Explorer
Clusters
Cosmos
DB
Cache for
Redis
PostgreSQL
Server
Databricks
mVISE
Power grid operator uses containerized software
to promote smart utility initiatives for 1.5M people
Challenge: Legacy systems for reading meter data needed greater
capacity to process large volumes of IoT data—but
implementing the necessary system enhancements was
difficult and expensive
Solution: Hafslund chose to develop its own software for
processing meter data. The company used Microsoft
Azure as its cloud platform, AKS to manage software
containers, and Azure Monitor for containers to optimize
container performance.
Outcome: Halfslund now has a standard way to create, monitor,
scale, and manage applications, which means it can
respond to customer needs faster.
We wanted a platform to speed development
and testing but do it safely, without losing
control over security and performance. That’s
why Azure and AKS are the perfect fit for us.”
— Ståle Heitmann, Chief Technology Officer
Hafslund Nett
Click icon to learn more
“
Hafslund Nett: architecture
1. Azure Pipelines automates container
image build, push and release to Azure
Kubernetes service, triggered by source
code updates.
2. Azure Kubernetes Services provides the
always-on service for meter reading and
connects with Azure managed databases
to process the massive amounts of data
the IoT devices generate
3. Azure API Management serves as the
secure gateway that helps connect to
data and services anywhere.
4. Azure network and Active Directory
provides fine-grain controls for external
and inter-service communication.
5. Azure Monitor provides a single pane of
glass for cluster-to-container monitoring.
…
Terraform
Infrastructure
AKS
…
Namespace…Namespace Namespace
Halsfund
Nett
CSS Styles
Express
Routes
Virtual
Network
Table
Storage
GitHub
VM
Active
Directory
Key Vault
…
Application Insights
Log
Analytics
Cosmos
DB
SQL
Server
Azure
Search
Container
Monitor
On-prem
services
VM VM VM
Load
Balancer
Internal
ACR
DevOps
Load
Balancer
External
API
Mgmt.
DNV GL scales up machine learning using Azure
Kubernetes Service
Challenge: Initially, the group trained machine learning models
locally and deployed each application to Azure Virtual
Machines. This process took up to 2 weeks and consumed
more Azure resources than needed.
Solution: DNV GL created a service using that builds and deploys
each machine learning application as a container on AKS.
They’re able to use the Kubernetes Cluster Autoscaler to
add resources on demand as the need for more compute
power arises.
Outcome: Data scientists and developers at DNV GL can now deliver
more solutions to their internal and external customers
with more speed, for less money, and with a more elastic
software stack. Now the data scientists and engineers at
DNV GL can focus on developing new, predictive solutions
and providing real business value.
Click icon to learn more
We decided to address the friction areas
of our internal company deployment,
management, and operations, and after
evaluating commercial offerings, we chose
to develop ML Factory based on Azure
services.”
— Kristian Ramsrud, Machine Learning group
DNV GL Maritime
“
DNV GL: architecture
1. Data scientists create their machine learning
applications as containers using the ML Factory
development tools
2. ML Apps are built using automatically using Azure
Container Registry Tasks and are deployed to Azure
Kubernetes Service
3. Realtime logs can be streamed directly for
debugging purposes. Azure Log Analytics also
provides access to historical logs within defined
retention periods
4. As the data flows through the platform, multiple
functions hosted in Azure Functions work together
to fire alerts or trigger actions, triggered by signals
from Azure Event Grid
5. Published applications are automatically added to
the company’s corporate API Management gateway
and the internal API catalog
ML development
and monitoring
Support
components
ML Factory
Event
Grid
Function
Apps
ML Factory
Developer tools
Active
Directory
Blob
Storage
API
Management
Key
Vault
ML Factory
Web portal
AKS
SQL
Server
Storage
Accounts
App
Service
API
Gateway
Consuming
applications
ACR
Click icon to learn more
Maersk uses AKS for a customer service process
to elevate NSAT, an industry-wide challenge
Needs: Get near-real-time data to provide better customer
service
Collect data for future Machine Learning driven features
Challenges: Compute & memory intensive features
Data integration difficulties
Limited organisational experience in Cloud & Kubernetes
Requirements: Spend less time on container software management
Automation and continuous delivery
Full visibility to application, container and infrastructure
Fine grained security and access control
Outcomes: Reduced environment provisioning time from 1+ weeks
to 2.5 hours
AKS and CaaS can potentially save 33% on run cost
Using Kubernetes on Azure satisfies our
objectives for efficient software development.
It aligns well with our digital plans and our
choice of open-source solutions for specific
programming languages.”
“
— Rasmus Hald, Head of Cloud Architecture,
A.P. Moller - Maersk
1. Azure Pipelines for automation
and CI/CD pipelines; adding
Terraform for further automation
2. Key Vault to secure secrets and
for persistent configuration
store
3. Azure Monitor for containers to
provide better logging,
troubleshooting, with no direct
container access
4. RBAC control for fine grained
Kubernetes resources access
control
Firewall
App Gateway
AKS w/
RBAC
Azure
Monitor
App
Insights
SQL
Database
Cosmos
DB
Performance
Document DB
Key Vault
Vault
Event Hub
Batch processing
Event Simulation
Data
Factory
Data
Management
Gateway
On-premises
database
Express
Route
Service Bus
Internal Queuing
SQL
Database
Azure
Pipelines
Maersk: architecture
© Copyright Microsoft Corporation. All rights reserved.

More Related Content

What's hot

Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤Amazon Web Services Japan
 
3分でわかるAzureでのService Principal
3分でわかるAzureでのService Principal3分でわかるAzureでのService Principal
3分でわかるAzureでのService PrincipalToru Makabe
 
Ingress on Azure Kubernetes Service
Ingress on Azure Kubernetes ServiceIngress on Azure Kubernetes Service
Ingress on Azure Kubernetes ServiceToru Makabe
 
20191220 「アウトプットしないのは知的な便秘」の影響力
20191220  「アウトプットしないのは知的な便秘」の影響力20191220  「アウトプットしないのは知的な便秘」の影響力
20191220 「アウトプットしないのは知的な便秘」の影響力Typhon 666
 
オープンソースのAPIゲートウェイ Kong ご紹介
オープンソースのAPIゲートウェイ Kong ご紹介 オープンソースのAPIゲートウェイ Kong ご紹介
オープンソースのAPIゲートウェイ Kong ご紹介 briscola-tokyo
 
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...NTT DATA Technology & Innovation
 
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャーKubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャーToru Makabe
 
IAM Roles Anywhereのない世界とある世界(2022年のAWSアップデートを振り返ろう ~Season 4~ 発表資料)
IAM Roles Anywhereのない世界とある世界(2022年のAWSアップデートを振り返ろう ~Season 4~ 発表資料)IAM Roles Anywhereのない世界とある世界(2022年のAWSアップデートを振り返ろう ~Season 4~ 発表資料)
IAM Roles Anywhereのない世界とある世界(2022年のAWSアップデートを振り返ろう ~Season 4~ 発表資料)NTT DATA Technology & Innovation
 
インフラ廻戦 品川事変 前夜編
インフラ廻戦 品川事変 前夜編インフラ廻戦 品川事変 前夜編
インフラ廻戦 品川事変 前夜編Toru Makabe
 
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティスAmazon Web Services Japan
 
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?Kazumi IWANAGA
 
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPNAmazon Web Services Japan
 
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
20210216 AWS Black Belt Online Seminar AWS Database Migration Service20210216 AWS Black Belt Online Seminar AWS Database Migration Service
20210216 AWS Black Belt Online Seminar AWS Database Migration ServiceAmazon Web Services Japan
 
AWS Black Belt Online Seminar - Amazon Lightsail
AWS Black Belt Online Seminar - Amazon Lightsail AWS Black Belt Online Seminar - Amazon Lightsail
AWS Black Belt Online Seminar - Amazon Lightsail Amazon Web Services Japan
 
20190220 AWS Black Belt Online Seminar Amazon S3 / Glacier
20190220 AWS Black Belt Online Seminar Amazon S3 / Glacier20190220 AWS Black Belt Online Seminar Amazon S3 / Glacier
20190220 AWS Black Belt Online Seminar Amazon S3 / GlacierAmazon Web Services Japan
 
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)Trainocate Japan, Ltd.
 
20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...Amazon Web Services Japan
 
「自分のとこでは動くけど…」を無くす devcontainer
「自分のとこでは動くけど…」を無くす devcontainer「自分のとこでは動くけど…」を無くす devcontainer
「自分のとこでは動くけど…」を無くす devcontainerYuta Matsumura
 
AWS Black Belt Techシリーズ Amazon WorkDocs / Amazon WorkMail
AWS Black Belt Techシリーズ Amazon WorkDocs / Amazon WorkMailAWS Black Belt Techシリーズ Amazon WorkDocs / Amazon WorkMail
AWS Black Belt Techシリーズ Amazon WorkDocs / Amazon WorkMailAmazon Web Services Japan
 

What's hot (20)

Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
 
3分でわかるAzureでのService Principal
3分でわかるAzureでのService Principal3分でわかるAzureでのService Principal
3分でわかるAzureでのService Principal
 
Ingress on Azure Kubernetes Service
Ingress on Azure Kubernetes ServiceIngress on Azure Kubernetes Service
Ingress on Azure Kubernetes Service
 
20191220 「アウトプットしないのは知的な便秘」の影響力
20191220  「アウトプットしないのは知的な便秘」の影響力20191220  「アウトプットしないのは知的な便秘」の影響力
20191220 「アウトプットしないのは知的な便秘」の影響力
 
オープンソースのAPIゲートウェイ Kong ご紹介
オープンソースのAPIゲートウェイ Kong ご紹介 オープンソースのAPIゲートウェイ Kong ご紹介
オープンソースのAPIゲートウェイ Kong ご紹介
 
AWS Black Belt Online Seminar Amazon Aurora
AWS Black Belt Online Seminar Amazon AuroraAWS Black Belt Online Seminar Amazon Aurora
AWS Black Belt Online Seminar Amazon Aurora
 
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
 
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャーKubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
 
IAM Roles Anywhereのない世界とある世界(2022年のAWSアップデートを振り返ろう ~Season 4~ 発表資料)
IAM Roles Anywhereのない世界とある世界(2022年のAWSアップデートを振り返ろう ~Season 4~ 発表資料)IAM Roles Anywhereのない世界とある世界(2022年のAWSアップデートを振り返ろう ~Season 4~ 発表資料)
IAM Roles Anywhereのない世界とある世界(2022年のAWSアップデートを振り返ろう ~Season 4~ 発表資料)
 
インフラ廻戦 品川事変 前夜編
インフラ廻戦 品川事変 前夜編インフラ廻戦 品川事変 前夜編
インフラ廻戦 品川事変 前夜編
 
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
 
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
 
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
 
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
20210216 AWS Black Belt Online Seminar AWS Database Migration Service20210216 AWS Black Belt Online Seminar AWS Database Migration Service
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
 
AWS Black Belt Online Seminar - Amazon Lightsail
AWS Black Belt Online Seminar - Amazon Lightsail AWS Black Belt Online Seminar - Amazon Lightsail
AWS Black Belt Online Seminar - Amazon Lightsail
 
20190220 AWS Black Belt Online Seminar Amazon S3 / Glacier
20190220 AWS Black Belt Online Seminar Amazon S3 / Glacier20190220 AWS Black Belt Online Seminar Amazon S3 / Glacier
20190220 AWS Black Belt Online Seminar Amazon S3 / Glacier
 
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
 
20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
20190130 AWS Black Belt Online Seminar AWS Identity and Access Management (AW...
 
「自分のとこでは動くけど…」を無くす devcontainer
「自分のとこでは動くけど…」を無くす devcontainer「自分のとこでは動くけど…」を無くす devcontainer
「自分のとこでは動くけど…」を無くす devcontainer
 
AWS Black Belt Techシリーズ Amazon WorkDocs / Amazon WorkMail
AWS Black Belt Techシリーズ Amazon WorkDocs / Amazon WorkMailAWS Black Belt Techシリーズ Amazon WorkDocs / Amazon WorkMail
AWS Black Belt Techシリーズ Amazon WorkDocs / Amazon WorkMail
 

Similar to Azure Kubernetes Service 2019 ふりかえり

Accelerate Application Innovation Journey with Azure Kubernetes Service
Accelerate Application Innovation Journey with Azure Kubernetes Service Accelerate Application Innovation Journey with Azure Kubernetes Service
Accelerate Application Innovation Journey with Azure Kubernetes Service WinWire Technologies Inc
 
04_Azure Kubernetes Service: Basic Practices for Developers_GAB2019
04_Azure Kubernetes Service: Basic Practices for Developers_GAB201904_Azure Kubernetes Service: Basic Practices for Developers_GAB2019
04_Azure Kubernetes Service: Basic Practices for Developers_GAB2019Kumton Suttiraksiri
 
Running Containers on Azure
Running Containers on AzureRunning Containers on Azure
Running Containers on AzureNick Trogh
 
Application portability with kubernetes
Application portability with kubernetesApplication portability with kubernetes
Application portability with kubernetesOleg Chunikhin
 
Kubernetes VS. App Service: When the orchestrator challenges the platform
Kubernetes VS. App Service: When the orchestrator challenges the platformKubernetes VS. App Service: When the orchestrator challenges the platform
Kubernetes VS. App Service: When the orchestrator challenges the platformLorenzo Barbieri
 
Consolidating Infrastructure with Azure Kubernetes Service
Consolidating Infrastructure with Azure Kubernetes ServiceConsolidating Infrastructure with Azure Kubernetes Service
Consolidating Infrastructure with Azure Kubernetes ServiceEng Teong Cheah
 
Lets talk about: Azure Kubernetes Service (AKS)
Lets talk about: Azure Kubernetes Service (AKS)Lets talk about: Azure Kubernetes Service (AKS)
Lets talk about: Azure Kubernetes Service (AKS)Pedro Sousa
 
Kubernetes for .NET Developers
Kubernetes for .NET DevelopersKubernetes for .NET Developers
Kubernetes for .NET DevelopersLorenzo Barbieri
 
Best Practices with Azure Kubernetes Services
Best Practices with Azure Kubernetes ServicesBest Practices with Azure Kubernetes Services
Best Practices with Azure Kubernetes ServicesQAware GmbH
 
Cloud for Kubernetes : Session4
Cloud for Kubernetes : Session4Cloud for Kubernetes : Session4
Cloud for Kubernetes : Session4WhaTap Labs
 
EKS New features - Re:invent 2022 recap at AWSUGNL Benelux
EKS New features - Re:invent 2022 recap at AWSUGNL BeneluxEKS New features - Re:invent 2022 recap at AWSUGNL Benelux
EKS New features - Re:invent 2022 recap at AWSUGNL BeneluxMasoom Tulsiani
 
Open service broker API with Azure Kubernetes Services
Open service broker API with Azure Kubernetes ServicesOpen service broker API with Azure Kubernetes Services
Open service broker API with Azure Kubernetes ServicesJorge Arteiro
 
Building Cloud Native Applications Using Azure Kubernetes Service
Building Cloud Native Applications Using Azure Kubernetes ServiceBuilding Cloud Native Applications Using Azure Kubernetes Service
Building Cloud Native Applications Using Azure Kubernetes ServiceDennis Moon
 
Making sense of containers, docker and Kubernetes on Azure.
Making sense of containers, docker and Kubernetes on Azure.Making sense of containers, docker and Kubernetes on Azure.
Making sense of containers, docker and Kubernetes on Azure.Nills Franssens
 
SpringOne Tour: An Introduction to Azure Spring Apps Enterprise
SpringOne Tour: An Introduction to Azure Spring Apps EnterpriseSpringOne Tour: An Introduction to Azure Spring Apps Enterprise
SpringOne Tour: An Introduction to Azure Spring Apps EnterpriseVMware Tanzu
 
Implementing AKS on the Enterprise
Implementing AKS on the EnterpriseImplementing AKS on the Enterprise
Implementing AKS on the EnterpriseJorge Arteiro
 
Container orchestration k8s azure kubernetes services
Container orchestration  k8s azure kubernetes servicesContainer orchestration  k8s azure kubernetes services
Container orchestration k8s azure kubernetes servicesRajesh Kolla
 

Similar to Azure Kubernetes Service 2019 ふりかえり (20)

Accelerate Application Innovation Journey with Azure Kubernetes Service
Accelerate Application Innovation Journey with Azure Kubernetes Service Accelerate Application Innovation Journey with Azure Kubernetes Service
Accelerate Application Innovation Journey with Azure Kubernetes Service
 
04_Azure Kubernetes Service: Basic Practices for Developers_GAB2019
04_Azure Kubernetes Service: Basic Practices for Developers_GAB201904_Azure Kubernetes Service: Basic Practices for Developers_GAB2019
04_Azure Kubernetes Service: Basic Practices for Developers_GAB2019
 
Running Containers on Azure
Running Containers on AzureRunning Containers on Azure
Running Containers on Azure
 
Application portability with kubernetes
Application portability with kubernetesApplication portability with kubernetes
Application portability with kubernetes
 
Kubernetes VS. App Service: When the orchestrator challenges the platform
Kubernetes VS. App Service: When the orchestrator challenges the platformKubernetes VS. App Service: When the orchestrator challenges the platform
Kubernetes VS. App Service: When the orchestrator challenges the platform
 
AKS
AKSAKS
AKS
 
Consolidating Infrastructure with Azure Kubernetes Service
Consolidating Infrastructure with Azure Kubernetes ServiceConsolidating Infrastructure with Azure Kubernetes Service
Consolidating Infrastructure with Azure Kubernetes Service
 
Lets talk about: Azure Kubernetes Service (AKS)
Lets talk about: Azure Kubernetes Service (AKS)Lets talk about: Azure Kubernetes Service (AKS)
Lets talk about: Azure Kubernetes Service (AKS)
 
Kubernetes for .NET Developers
Kubernetes for .NET DevelopersKubernetes for .NET Developers
Kubernetes for .NET Developers
 
Best Practices with Azure Kubernetes Services
Best Practices with Azure Kubernetes ServicesBest Practices with Azure Kubernetes Services
Best Practices with Azure Kubernetes Services
 
Kubernetes vs App Service
Kubernetes vs App ServiceKubernetes vs App Service
Kubernetes vs App Service
 
Cloud for Kubernetes : Session4
Cloud for Kubernetes : Session4Cloud for Kubernetes : Session4
Cloud for Kubernetes : Session4
 
EKS New features - Re:invent 2022 recap at AWSUGNL Benelux
EKS New features - Re:invent 2022 recap at AWSUGNL BeneluxEKS New features - Re:invent 2022 recap at AWSUGNL Benelux
EKS New features - Re:invent 2022 recap at AWSUGNL Benelux
 
Open service broker API with Azure Kubernetes Services
Open service broker API with Azure Kubernetes ServicesOpen service broker API with Azure Kubernetes Services
Open service broker API with Azure Kubernetes Services
 
Building Cloud Native Applications Using Azure Kubernetes Service
Building Cloud Native Applications Using Azure Kubernetes ServiceBuilding Cloud Native Applications Using Azure Kubernetes Service
Building Cloud Native Applications Using Azure Kubernetes Service
 
Making sense of containers, docker and Kubernetes on Azure.
Making sense of containers, docker and Kubernetes on Azure.Making sense of containers, docker and Kubernetes on Azure.
Making sense of containers, docker and Kubernetes on Azure.
 
SpringOne Tour: An Introduction to Azure Spring Apps Enterprise
SpringOne Tour: An Introduction to Azure Spring Apps EnterpriseSpringOne Tour: An Introduction to Azure Spring Apps Enterprise
SpringOne Tour: An Introduction to Azure Spring Apps Enterprise
 
Implementing AKS on the Enterprise
Implementing AKS on the EnterpriseImplementing AKS on the Enterprise
Implementing AKS on the Enterprise
 
Container orchestration k8s azure kubernetes services
Container orchestration  k8s azure kubernetes servicesContainer orchestration  k8s azure kubernetes services
Container orchestration k8s azure kubernetes services
 
Getting started with containers on Azure
Getting started with containers on AzureGetting started with containers on Azure
Getting started with containers on Azure
 

More from Toru Makabe

細かすぎて伝わらないかもしれない Azure Container Networking Deep Dive
細かすぎて伝わらないかもしれない Azure Container Networking Deep Dive細かすぎて伝わらないかもしれない Azure Container Networking Deep Dive
細かすぎて伝わらないかもしれない Azure Container Networking Deep DiveToru Makabe
 
Demystifying Identities for Azure Kubernetes Service
Demystifying Identities for Azure Kubernetes ServiceDemystifying Identities for Azure Kubernetes Service
Demystifying Identities for Azure Kubernetes ServiceToru Makabe
 
Azure Blueprints - 企業で期待される背景と特徴、活用方法
Azure Blueprints - 企業で期待される背景と特徴、活用方法Azure Blueprints - 企業で期待される背景と特徴、活用方法
Azure Blueprints - 企業で期待される背景と特徴、活用方法Toru Makabe
 
ミッション : メガクラウドを安全にアップデートせよ!
ミッション : メガクラウドを安全にアップデートせよ!ミッション : メガクラウドを安全にアップデートせよ!
ミッション : メガクラウドを安全にアップデートせよ!Toru Makabe
 
俺の Kubernetes Workflow with HashiStack
俺の Kubernetes Workflow with HashiStack俺の Kubernetes Workflow with HashiStack
俺の Kubernetes Workflow with HashiStackToru Makabe
 
Resilience Engineering on Kubernetes
Resilience Engineering on KubernetesResilience Engineering on Kubernetes
Resilience Engineering on KubernetesToru Makabe
 
Real World Azure RBAC
Real World Azure RBACReal World Azure RBAC
Real World Azure RBACToru Makabe
 
インフラ野郎AzureチームProX
インフラ野郎AzureチームProXインフラ野郎AzureチームProX
インフラ野郎AzureチームProXToru Makabe
 
NoOps Japan Community 1st Anniversary 祝辞
NoOps Japan Community 1st Anniversary 祝辞 NoOps Japan Community 1st Anniversary 祝辞
NoOps Japan Community 1st Anniversary 祝辞 Toru Makabe
 
ZOZOTOWNのCloud Native Journey
ZOZOTOWNのCloud Native JourneyZOZOTOWNのCloud Native Journey
ZOZOTOWNのCloud Native JourneyToru Makabe
 
Essentials of container
Essentials of containerEssentials of container
Essentials of containerToru Makabe
 
インフラ野郎 Azureチーム at クラウド boost
インフラ野郎 Azureチーム at クラウド boostインフラ野郎 Azureチーム at クラウド boost
インフラ野郎 Azureチーム at クラウド boostToru Makabe
 
ダイ・ハード in the Kubernetes world
ダイ・ハード in the Kubernetes worldダイ・ハード in the Kubernetes world
ダイ・ハード in the Kubernetes worldToru Makabe
 
半日でわかる コンテナー技術 (応用編)
半日でわかる コンテナー技術 (応用編)半日でわかる コンテナー技術 (応用編)
半日でわかる コンテナー技術 (応用編)Toru Makabe
 
インフラエンジニア エボリューション ~激変する IT インフラ技術者像、キャリアとスキルを考える~ at Tech Summit 2018
インフラエンジニア エボリューション ~激変する IT インフラ技術者像、キャリアとスキルを考える~ at Tech Summit 2018インフラエンジニア エボリューション ~激変する IT インフラ技術者像、キャリアとスキルを考える~ at Tech Summit 2018
インフラエンジニア エボリューション ~激変する IT インフラ技術者像、キャリアとスキルを考える~ at Tech Summit 2018Toru Makabe
 
インフラ野郎 Azureチーム v18.11 at Tech Summit 2018
インフラ野郎 Azureチーム v18.11 at Tech Summit 2018インフラ野郎 Azureチーム v18.11 at Tech Summit 2018
インフラ野郎 Azureチーム v18.11 at Tech Summit 2018Toru Makabe
 
半日でわかる コンテナー技術 (入門編)
半日でわかる コンテナー技術 (入門編)半日でわかる コンテナー技術 (入門編)
半日でわかる コンテナー技術 (入門編)Toru Makabe
 
NoOps?よろしいならば戦争だ
NoOps?よろしいならば戦争だNoOps?よろしいならば戦争だ
NoOps?よろしいならば戦争だToru Makabe
 

More from Toru Makabe (20)

細かすぎて伝わらないかもしれない Azure Container Networking Deep Dive
細かすぎて伝わらないかもしれない Azure Container Networking Deep Dive細かすぎて伝わらないかもしれない Azure Container Networking Deep Dive
細かすぎて伝わらないかもしれない Azure Container Networking Deep Dive
 
Demystifying Identities for Azure Kubernetes Service
Demystifying Identities for Azure Kubernetes ServiceDemystifying Identities for Azure Kubernetes Service
Demystifying Identities for Azure Kubernetes Service
 
Azure Blueprints - 企業で期待される背景と特徴、活用方法
Azure Blueprints - 企業で期待される背景と特徴、活用方法Azure Blueprints - 企業で期待される背景と特徴、活用方法
Azure Blueprints - 企業で期待される背景と特徴、活用方法
 
ミッション : メガクラウドを安全にアップデートせよ!
ミッション : メガクラウドを安全にアップデートせよ!ミッション : メガクラウドを安全にアップデートせよ!
ミッション : メガクラウドを安全にアップデートせよ!
 
俺の Kubernetes Workflow with HashiStack
俺の Kubernetes Workflow with HashiStack俺の Kubernetes Workflow with HashiStack
俺の Kubernetes Workflow with HashiStack
 
Resilience Engineering on Kubernetes
Resilience Engineering on KubernetesResilience Engineering on Kubernetes
Resilience Engineering on Kubernetes
 
俺とHashiCorp
俺とHashiCorp俺とHashiCorp
俺とHashiCorp
 
Real World Azure RBAC
Real World Azure RBACReal World Azure RBAC
Real World Azure RBAC
 
インフラ野郎AzureチームProX
インフラ野郎AzureチームProXインフラ野郎AzureチームProX
インフラ野郎AzureチームProX
 
NoOps Japan Community 1st Anniversary 祝辞
NoOps Japan Community 1st Anniversary 祝辞 NoOps Japan Community 1st Anniversary 祝辞
NoOps Japan Community 1st Anniversary 祝辞
 
ZOZOTOWNのCloud Native Journey
ZOZOTOWNのCloud Native JourneyZOZOTOWNのCloud Native Journey
ZOZOTOWNのCloud Native Journey
 
Ops meets NoOps
Ops meets NoOpsOps meets NoOps
Ops meets NoOps
 
Essentials of container
Essentials of containerEssentials of container
Essentials of container
 
インフラ野郎 Azureチーム at クラウド boost
インフラ野郎 Azureチーム at クラウド boostインフラ野郎 Azureチーム at クラウド boost
インフラ野郎 Azureチーム at クラウド boost
 
ダイ・ハード in the Kubernetes world
ダイ・ハード in the Kubernetes worldダイ・ハード in the Kubernetes world
ダイ・ハード in the Kubernetes world
 
半日でわかる コンテナー技術 (応用編)
半日でわかる コンテナー技術 (応用編)半日でわかる コンテナー技術 (応用編)
半日でわかる コンテナー技術 (応用編)
 
インフラエンジニア エボリューション ~激変する IT インフラ技術者像、キャリアとスキルを考える~ at Tech Summit 2018
インフラエンジニア エボリューション ~激変する IT インフラ技術者像、キャリアとスキルを考える~ at Tech Summit 2018インフラエンジニア エボリューション ~激変する IT インフラ技術者像、キャリアとスキルを考える~ at Tech Summit 2018
インフラエンジニア エボリューション ~激変する IT インフラ技術者像、キャリアとスキルを考える~ at Tech Summit 2018
 
インフラ野郎 Azureチーム v18.11 at Tech Summit 2018
インフラ野郎 Azureチーム v18.11 at Tech Summit 2018インフラ野郎 Azureチーム v18.11 at Tech Summit 2018
インフラ野郎 Azureチーム v18.11 at Tech Summit 2018
 
半日でわかる コンテナー技術 (入門編)
半日でわかる コンテナー技術 (入門編)半日でわかる コンテナー技術 (入門編)
半日でわかる コンテナー技術 (入門編)
 
NoOps?よろしいならば戦争だ
NoOps?よろしいならば戦争だNoOps?よろしいならば戦争だ
NoOps?よろしいならば戦争だ
 

Recently uploaded

"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 

Recently uploaded (20)

"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 

Azure Kubernetes Service 2019 ふりかえり

  • 1. Azure Kubernetes Service 真壁 徹 日本マイクロソフト株式会社 クラウドソリューションアーキテクト 2019/12/4 2019年を ふりかえる
  • 2. 自己紹介 apiVersion: selfIntroduction/v1 name: “真壁 徹(まかべ とおる)” company: name: “日本マイクロソフト株式会社” role: “クラウド ソリューションアーキテクト” career: - name: “大和総研” - name: ”HP Enterprise” cert : “CNCF Certified Kubernetes Admin.”
  • 4. Azure Kubernetes Service (AKS) 主なリリース 補足のないものはGAしてます API ServerのIPアドレス ホワイト リスト制御 APIサーバー 監査ログ Azure Monitor for containers Virtual Node in ACI ユーザー定義ルートのサポート Azure Arc による管理 (Preview) Kubernetes 1.12、1.13、1.14、 1.15(Preview) Availability Zones 複数Node Pool Cluster Autoscaler & VMSS Network Policy Japan East/West両リージョン対応
  • 5. Azure Kubernetes Service (AKS) 主なリリース 補足のないものはGAしてます AKS Pod Security Policy (Preview) Azure PolicyとOpen Policy Agent の統合 (Preview) Azure Monitor for containers ラ イブデータ表示 (Preview) Azure Monitor Prometheus Metric スクレイピング (Preview) Standard Load Balancerサポート App Gateway Ingress Controller 証明書ローテーション Egress lockdown 対話型診断 Managed Identity 統合 (Preview) Windowsノード (Preview)
  • 6. Azure Container Registry (ACR) 主なリリース 補足のないものはGAしてます リポジトリスコープ RBACサポー ト (Preview) 監査と診断ログ (Preview) Azure Security Centerによるイ メージの脆弱性スキャン (Preview) 署名済みイメージのサポート ACR Tasks スケジューリング ACR in VNet (Preview) Helm Chartリポジトリ (Preview) ACR Tasks Cloud Native Buildpack サポート (Preview)
  • 8. そのほかリリース マイクロソフトがリード/関与が強い CNCFプロジェクトなど Kubernetes Confidential computing Distributed Application Runtime (Dapr) Cloud Native Application Bundle (CNAB) with Brigade KEDA (Kubernetes-based Event Driven Autoscaling) GitHub Actions for deploying to Kubernetes service Service Mesh Interface Helm 3
  • 11. Ignite 2019 Breakout Session BRK4006 Applying best practices to Azure Kubernetes Service (AKS) AKSを本番で使うなら必見 高可用性 バックアップ&リストア マルチクラスター & マルチリー ジョン アップグレード などなど
  • 12. 不安定な時はノードのディスク性能を疑う kubeletやtunnnelfrontなど、ノード上にはアプリ以外にも重要コンポーネントが動いている IOPSの高いディスクにすると安定することが とても とても 多い PodのResource Limitも重要 暴れん坊を抑え込もう 特にメモリ 周辺リソースと合わせてInfrastructure as Code化する アップグレードや新機能の検証など、運用しているとクラスターを作る機会は多い Kubernetesだけで完結するシステムは稀 データストアやネットワーク系サービスなど周辺リソースも合わせて作れるようにする TerraformでもARM Templateでも お好みで 俺のベストプラクティス
  • 13. おかしいな、という時はGitHubのIssueを検索する サポート窓口ではありません が、PMがIssueを見て対応しています ズバリな解決策が見つかることも とはいえ サポート要求はサポート窓口、新機能リクエストはAzure Feedbackへ 話題の機能/OSSだからといって あれもこれも使う必要はない 運用するなら腹落ちしたもの、ビジネス目標に合うものを選んで使いましょう 華やかな 事例の裏には 生存者バイアスが みなぎらないなら その時を待つ どんどん進化するので 追従には組織としてのモチベーションが重要です 流行ってるっぽいから、誰かにやれって言われたから、では続きません AKS/Kubernetesの代替方式は多くあります (App Service、Functions、ACI、etc) 俺のベストプラクティス
  • 16. Additional nodes needed Pods are in pending state Cluster Autoscaler Pod Pod Node Pod Pod Node Pod Pod AKS cluster Cluster AutoscalerAzure Node is granted Pending pods are scheduled The cluster autoscaler watches for pods that can't be scheduled on nodes because of resource constraints. The cluster then automatically increases the number of nodes. 1. HPA obtains resource metrics and compares them to user-specified threshold 2. HPA evaluates whether user specified threshold is met or not 3. HPA increases/decreases the replicas based on the specified threshold 4. The Deployment controller adjusts the deployment based on increase/decrease in replicas
  • 17. • Elastically provision compute capacity in seconds • No infrastructure to manage • Built on open sourced Virtual Kubelet technology, donated to the Cloud Native Computing Foundation (CNCF) Serverless Kubernetes using AKS virtual nodes Node Pods Node Pods Kubernetes control plane Azure Container Instances (ACI) Pods Virtual node
  • 18. Application Gateway Ingress Controller • Application Gateways as Ingress for AKS • Deployed using Helm • Utilizes pod-AAD for ARM authentication. • Tighter integration with AKS add on support upcoming • Supports URI path based, host based, SSL termination, SSL re-encryption, redirection, custom health probes, draining, cookie affinity • Support for Let’s Encrypt provided TLS certificates • WAF fully supported with custom listener policies • Support for multiple AKS as backend • Support for mixed mode – both AKS and other backend types on the same Application Gateway! Application Gateway Azure ARM Azure Key Vault Azure Kubernetes Services (AKS) API server AGIngressController Ingressresource Pods Configure routing rules
  • 19. Accelerate containerized development Kubernetes and DevOps better together Develop • Native containers and Kubernetes support in IDE • Remote debugging and iteration for multi- containers • Effective code merge • Automatic containerization Deliver • CI/CD pipeline with automated tasks in a few clicks • Pre-configured canary deployment strategy • In depth build and delivery process review and integration testing • Private registry with Helm support Operate • Out-of-box control plane telemetry, log aggregation, and container health • Declarative resource management • Auto scaling Inner loop Test Debug Azure DevSpaces AKS dev cluster CI/CD Pipelines GitHub repos Azure Container Registry Helm chart Container image AKS production cluster Azure Monitor Scale Terraform Develop Deliver Operate Boards
  • 20. GitHub Actions for Kubernetes on Azure 1. Authenticate and login securely to an Azure subscription 2. Set the target AKS cluster 3. Create Kubernetes secret objects to manage sensitive information 4. Connect to the Kubernetes cluster and deploy manifests, etc. Action docker-login Action k8s-create-secret Action aks-set-context Action k8s-deploy
  • 21. Pull Request flow in Dev Spaces 1. John is working out of branch “feature-x” locally 2. John commits his code and pushes his branch to his remote GitHub repo 3. John creates a pull request before merging the changes into the application’s main branch 4. GitHub Actions workflow is triggered upon PR creation; a delta namespace for the pull request is created and the code is deployed to the namespace Source code control master namespace feature-x namespace GitHub Actions workflow builds and deploys feature-x John Developer Lisa Reviewer Open pull request, deploy feature-branch Pull request merged, master updated PR namespace created, changes deployed Azure Dev Spaces + AKS cluster 5. A team member reviews the changes in the context of the entire application 6. The pull request is approved and a GitHub workflow is triggered to update the master namespace with the merged code changes
  • 22. AKS with RBAC Storage SQL Database Cosmos DB VNet Node Node Pod Pod AAD Pod Identity Key Vault Active Directory Active Directory Identity Use familiar tools like AAD for fine-grained identity and access control to Kubernetes resources from cluster to containers
  • 23. 1. Kubernetes operator defines an identity map for K8s service accounts AAD Pod identity 2. Node Managed Identity (NMI) watches for mapping reaction and syncs to Managed Service Identify (MSI) 3. Developer creates a pod with a service account, and pod uses standard Azure SDK to fetch a token bound to MSI 4. Pod uses access token to consume other Azure services; services validate token Kubernetes Kubernetes controller Azure MSI Azure Identity Binding Active Directory Pod Identity NMI + EMSI Pod Token Azure SQL Server Developer <¥>
  • 24. 1. Cloud architect assigns a deployment policy across cluster(s) 2. Developer uses standard Kubernetes API to deploy to the cluster 3. Real-time deployment enforcement (acceptance/denial) provided to developer based on policy 4. Cloud architect obtains compliance report for the entire environment and can drill down to individual pod level Azure Policy for clusters (OPA Integration) Cloud Architect Developer Cluster-1 Cluster-2 Cluster-3 AKS Azure Policy Cluster-3  Cluster-2Cluster-1 Compliance reports
  • 25. 2. Node and cluster level security • Automatic security patching nightly • Nodes deployed in private virtual network subnet w/o public addresses • Network policy to secure communication paths between namespaces (and nodes) • Pod Security Policies using Gatekeeper • K8s RBAC and AAD for authentication • Threat protection on nodes AKS with RBAC Security overview 1. Image and container level security • AAD authenticated Container registry access • ACR image scanning and content trust for image validation 3. Pod level security • Pod level control using AAD Pod Identity • Pod Security Context 4. Workload level security • Azure Role-based Access Control (RBAC) & security policy groups • Secure access to resources & services (e.g. Azure Key Vault) via Pod Identity • Storage Encryption • App Gateway with WAF to protect against threats and intrusions Developer Azure Container Registry Kubernetes Admin Azure Storage SQL Database Cosmos DB Internal User Internal Load Balancer External User External Load Balancer Azure VNet Node Node Pod Pod AAD Pod Identity Ingress Controller Encrypted Storage Azure Key Vault Ingress Controller App Gateway External DNS Active Directory
  • 26. AKS Support in Azure Security Center 1. For managed subscriptions, each new AKS cluster and node are discovered in ASC 2. ASC monitors AKS cluster for security misconfigurations and provides actionable recommendations for compliance with security best practices 3. ASC continuously analyzes AKS for potential threats based on: a. Raw security events such as network data and process creation b. Kubernetes log audit Azure Security Center Continuous discovery of managed AKS instances Actionable recommendations for security best practices Detect threats across AKS nodes and clusters using advanced analytics Azure Kubernetes Service AKS security configuration API Server Master Workers Node1 Container runtime Security center Node2 Container runtime Security center Node3 Container runtime Security center Verified by Security Center Audit log Raw security events …and reports any threats and malicious activity detected (e.g., “API requests to your cluster from a suspicious IP was detected”)
  • 27. Threat protection Automated threat detection and best practices recommendation for Kubernetes clusters using advanced analytics from Azure Security Center Cluster Cluster Cluster Azure Security Center Continuous discovery of managed AKS instances Actionable recommendations for security best practices Detect threats across AKS nodes and clusters using advanced analytics Azure Kubernetes Service
  • 28. Image Security Developer CI/CD Pipelines Azure Container Registry Azure Kubernetes ServiceImage scanning Fail Pass Your private registry, with built-in Helm chart support, only deploys validated images and can be automatically geo-replicated to the data center close to where your users are Vulnerability scanning Actionable recommendations Admin
  • 29. Secure network communications with VNET and CNI AKS subnet Backend services subnet Azure VNet A On-premises infrastructure Enterprise system Other peered VNets VNet peering Azure Express RouteAKS cluster SQL Server 1. Uses Azure subnet for both your containers and cluster VMs 2. Allows for connectivity to existing Azure services in the same VNet AKS VNet integration works seamlessly with your existing network infrastructure 3. Use Express Route to connect to on- premises infrastructure 4. Use VNet peering to connect to other VNets Service Endpoint Azure SQL PaaS DB 5. Connect AKS cluster securely and privately to other Azure resources using VNet endpoints
  • 30. 1. A developer authenticates to the AAD token issuance endpoint and requests an access token Identity and access management through AAD and RBAC Azure delivers a streamlined identity and access management solution with Azure Active Directory (AAD) and Azure Kubernetes Services (AKS) 2. The AAD token issuance endpoint issues the access token 3. The access token is used to authenticate to the secured resource 4. Data from the secured resource is returned to the web application AKS Azure Active Directory Token Token Developer
  • 31. Azure Pipelines build audit & enforcement using Azure Policy 1. Cloud architect assigns a policy across clusters; policy can be set to block non- compliance (deny) or generate non- compliance warnings (audit) 2. Developer makes code change that kicks off a build on Azure Pipelines 3. Azure Pipelines evaluates the request for policy compliance 4. If policy is set to deny, Azure Pipelines rejects the build attempt if any non- compliance is identified 5. If policy is set to audit, a non-compliance event is logged and the build is allowed to proceed Cloud Architect Developer Cluster-1 Cluster-2 Cluster-3 AKS Azure Policy CI/CD Pipelines Pass Fail Deny policy </>Yes No Compliance check </>
  • 32. Azure management experiences Azure Portal Azure CLI Azure SDK Hybrid Agent and Services: Azure Arc for Kubernetes - Components Azure Identity RBAC Policy Index Groups Etc. Azure Resource Manager Azure Container Registry Kubernetes K8s API server Cluster provisioning Cluster upgrade and patch management Cluster lifecycle management Cluster monitoring Administrative access K8s native tools Customer locations Config Service K8s Connect Service Source Repo GitOps Manager Config Agent Connect Agent
  • 33. k8s cluster 1: security.yaml Cluster Admin 3: Arc operators 4: Kubernetes Cluster – Azure Arc 2: Policy Security Admin 6: config to cluster 8: get manifest from repo 7: Git Url 9: apply and enforce rules Azure Arc for Kubernetes - Workflow 5
  • 34. Azure Monitor for containers Azure Monitor for containers Visualization Insights Monitor & analyze Response Native alerting with integration to issue management and ITSM tools Monitor and analyze Kubernetes and container deployment performance, events, health, and logs Provide insights with cluster health rollup view Visualize overall health and performance from cluster to containers with drilldowns and filters Cloud native experience for Azure Monitor with Prometheus integration Azure Kubernetes Service Azure Pipelines Observability Observe live container logs and Kubernetes event log on container deployment status Virtual node Prometheus 1. Get detailed insights about your workloads with Azure Monitor 3. See graphical insights about clusters 2. Filter for details about nodes, controllers, and containers 4. Pull events and logs for detailed activity analysis
  • 35. 1. Deploy Azure Arc for Kubernetes agent 2. Azure Arc agent registers cluster with ARM 3. Cluster operator applies cluster configuration via ARM 4. Configuration agent picks up configuration and syncs state from git repo 5. Configuration agent informs Azure policy of status 6. Cluster operator or application developer pushes changes via GitHub Cluster Connect RP Cluster operator Azure Resource Manager Cluster Config RP Azure Policy GitHub Config agent Azure Arc agent Cluster operator/ Application dev Azure Monitor for containers Configuration management scenario Kubernetes on-prem
  • 36. AKS Diagnostics Azure backend telemetry Node 1 Node 2 AKS production cluster User Azure portal Zero configuration and zero cost Intelligent detectors based on AKS-specific telemetry Cluster-specific observations Recommended actions for troubleshooting <¥>Cluster Insights Cluster Node Issues Node Issues Detected Node Insufficient Resources Detected Create, Read, Update & Delete Operations Identity and Security Management AKS Diagnostics Sample diagnostics web portal ! ! !   x An interactive and intelligent experience for self-troubleshooting your app issues Diagnose and guide you through each problem with best practices recommendations Intelligent search capabilities to help you find right answers fast Straight out-of-the box, no extra configuration necessary
  • 37. Open-source component jointly built by Microsoft and RedHat • Event-driven container creation & scaling Allows containers to “scale to zero” until an event comes in, which will then create the container and process the event, resulting in more efficient utilization and reduced costs • Native triggers support Containers can consume events directly from the event source, instead of routing events through HTTP • Can be used in any Kubernetes service This includes in the cloud (e.g., AKS, EKS, GKE, etc.) or on-premises with OpenShift—any Kubernetes workload that requires scaling by events instead of traditional CPU or memory scaling can leverage this component. Kubernetes-based event-driven auto-scaling (KEDA) Kubernetes cluster External trigger source KEDA AKS clusterScaler Controller Metrics adapter
  • 38. SMI defines a set of APIs that can be implemented by individual mesh providers. Service meshes and tools can either integrate directly with SMI or an adapter can consume SMI and drive native mesh APIs. • Standard interface for service mesh on Kubernetes • Basic feature set to address most common scenarios • Extensible to support new features as they become widely available Service Mesh Interface (SMI) Apps Tooling Ecosystem …and more Service Mesh Interface Routing Telemetry Policy Kubernetes
  • 40. Bosch Increases Vehicle Safety Using Precision GPS Algorithms and Azure Kubernetes Service Challenge: Bosch designed a software development kit (SDK) that can be used by original equipment manufacturers (OEMs) to embed driving safety information at scale. For such a service to work commercially, they had to build a real- time data ingestion and processing pipeline capable of detecting hazards and notifying drivers within seconds Solution: The solution is deployed as multiple microservices running in containers behind an Azure API Management gateway. AKS provided the simplicity a serverless Kubernetes experience that provided the elastic provisioning they wanted without the need to manage the infrastructure. Outcome: By running their solution, which has been downloaded by 12 million users, on Azure and AKS, the average time to detect driving hazards dropped to approximately 60 milliseconds. What we like about AKS is the simplified Kubernetes experience. It's click and deploy, it’s click and scale. It’s infrastructure as code too, which is quite cool for us.” — Christian Jeschke, Product Owner, Bosch Click icon to learn more “
  • 41. Bosch: architecture 1. Sensor data is generated and streamed to Azure API Management 2. AKS cluster runs microservice that are deployed as containers behind a service mesh; containers are built using a DevOps process and stored in Azure Container Registry 3. Ingest service stores data in an Azure Cosmos DB and other data storage destinations 4. Asynchronously, the map matching service receives the data from Kafka Streams on Azure HDInsight 5. Data is processed and stored the result in Azure Database for PostgreSQL and maps are continuously updated using Azure Databricks 6. A web app running in Azure App Service is used to visualize the results VNet Security Public API Key Vault SDK Hotspots WDW Service Blob Storage Web Apps ACR AKS Service Kafka Streams on HD Insights AKS Map matching Data Explorer Clusters Cosmos DB Cache for Redis PostgreSQL Server Databricks mVISE
  • 42. Power grid operator uses containerized software to promote smart utility initiatives for 1.5M people Challenge: Legacy systems for reading meter data needed greater capacity to process large volumes of IoT data—but implementing the necessary system enhancements was difficult and expensive Solution: Hafslund chose to develop its own software for processing meter data. The company used Microsoft Azure as its cloud platform, AKS to manage software containers, and Azure Monitor for containers to optimize container performance. Outcome: Halfslund now has a standard way to create, monitor, scale, and manage applications, which means it can respond to customer needs faster. We wanted a platform to speed development and testing but do it safely, without losing control over security and performance. That’s why Azure and AKS are the perfect fit for us.” — Ståle Heitmann, Chief Technology Officer Hafslund Nett Click icon to learn more “
  • 43. Hafslund Nett: architecture 1. Azure Pipelines automates container image build, push and release to Azure Kubernetes service, triggered by source code updates. 2. Azure Kubernetes Services provides the always-on service for meter reading and connects with Azure managed databases to process the massive amounts of data the IoT devices generate 3. Azure API Management serves as the secure gateway that helps connect to data and services anywhere. 4. Azure network and Active Directory provides fine-grain controls for external and inter-service communication. 5. Azure Monitor provides a single pane of glass for cluster-to-container monitoring. … Terraform Infrastructure AKS … Namespace…Namespace Namespace Halsfund Nett CSS Styles Express Routes Virtual Network Table Storage GitHub VM Active Directory Key Vault … Application Insights Log Analytics Cosmos DB SQL Server Azure Search Container Monitor On-prem services VM VM VM Load Balancer Internal ACR DevOps Load Balancer External API Mgmt.
  • 44. DNV GL scales up machine learning using Azure Kubernetes Service Challenge: Initially, the group trained machine learning models locally and deployed each application to Azure Virtual Machines. This process took up to 2 weeks and consumed more Azure resources than needed. Solution: DNV GL created a service using that builds and deploys each machine learning application as a container on AKS. They’re able to use the Kubernetes Cluster Autoscaler to add resources on demand as the need for more compute power arises. Outcome: Data scientists and developers at DNV GL can now deliver more solutions to their internal and external customers with more speed, for less money, and with a more elastic software stack. Now the data scientists and engineers at DNV GL can focus on developing new, predictive solutions and providing real business value. Click icon to learn more We decided to address the friction areas of our internal company deployment, management, and operations, and after evaluating commercial offerings, we chose to develop ML Factory based on Azure services.” — Kristian Ramsrud, Machine Learning group DNV GL Maritime “
  • 45. DNV GL: architecture 1. Data scientists create their machine learning applications as containers using the ML Factory development tools 2. ML Apps are built using automatically using Azure Container Registry Tasks and are deployed to Azure Kubernetes Service 3. Realtime logs can be streamed directly for debugging purposes. Azure Log Analytics also provides access to historical logs within defined retention periods 4. As the data flows through the platform, multiple functions hosted in Azure Functions work together to fire alerts or trigger actions, triggered by signals from Azure Event Grid 5. Published applications are automatically added to the company’s corporate API Management gateway and the internal API catalog ML development and monitoring Support components ML Factory Event Grid Function Apps ML Factory Developer tools Active Directory Blob Storage API Management Key Vault ML Factory Web portal AKS SQL Server Storage Accounts App Service API Gateway Consuming applications ACR
  • 46. Click icon to learn more Maersk uses AKS for a customer service process to elevate NSAT, an industry-wide challenge Needs: Get near-real-time data to provide better customer service Collect data for future Machine Learning driven features Challenges: Compute & memory intensive features Data integration difficulties Limited organisational experience in Cloud & Kubernetes Requirements: Spend less time on container software management Automation and continuous delivery Full visibility to application, container and infrastructure Fine grained security and access control Outcomes: Reduced environment provisioning time from 1+ weeks to 2.5 hours AKS and CaaS can potentially save 33% on run cost Using Kubernetes on Azure satisfies our objectives for efficient software development. It aligns well with our digital plans and our choice of open-source solutions for specific programming languages.” “ — Rasmus Hald, Head of Cloud Architecture, A.P. Moller - Maersk
  • 47. 1. Azure Pipelines for automation and CI/CD pipelines; adding Terraform for further automation 2. Key Vault to secure secrets and for persistent configuration store 3. Azure Monitor for containers to provide better logging, troubleshooting, with no direct container access 4. RBAC control for fine grained Kubernetes resources access control Firewall App Gateway AKS w/ RBAC Azure Monitor App Insights SQL Database Cosmos DB Performance Document DB Key Vault Vault Event Hub Batch processing Event Simulation Data Factory Data Management Gateway On-premises database Express Route Service Bus Internal Queuing SQL Database Azure Pipelines Maersk: architecture
  • 48. © Copyright Microsoft Corporation. All rights reserved.