EKS Auto Mode Operations Quiz
関連ドキュメント: Operations
選択式問題
1. 営業時間中の node 中断を最小限に抑えるための NodePool Disruption Budget 設定はどれですか?
- A)
nodes: "100%" - B) schedule 付きの
nodes: "0" - C)
consolidateAfter: 0s - D)
consolidationPolicy: Never
答えを表示
答え: B) schedule 付きの nodes: "0"
解説: schedule と一緒に nodes: "0" を設定すると、特定の時間帯に node 中断を完全に防止できます。
disruption:
consolidationPolicy: WhenEmptyOrUnderutilized
consolidateAfter: 5m
budgets:
# Default: Only 10% of total nodes can be disrupted simultaneously
- nodes: "10%"
# Business hours: No disruptions
- nodes: "0"
schedule: "0 9-18 * * mon-fri" # Mon-Fri 9-18
duration: 9h2. PodDisruptionBudget (PDB) における minAvailable: 80% は何を意味しますか?
- A) 最大 80% の Pod を実行できる
- B) 最低 80% の Pod が常に running でなければならない
- C) Pod 保持の確率が 80%
- D) Pod を 80 秒間保護する
答えを表示
答え: B) 最低 80% の Pod が常に running でなければならない
解説: PDB の minAvailable は、常に running でなければならない Pod の最小数または割合を指定します。
apiVersion: policy/v1
kind: PodDisruptionBudget
metadata:
name: web-pdb
spec:
minAvailable: 80%
selector:
matchLabels:
app: webまたは、maxUnavailable を使用できます:
spec:
maxUnavailable: 1 # Only 1 Pod can be disrupted simultaneously3. Auto Mode の node 問題を診断するとき、最初に確認すべき resource はどれですか?
- A) Pod logs
- B) NodeClaim status
- C) EC2 console
- D) CloudWatch metrics
答えを表示
答え: B) NodeClaim status
解説: NodeClaim は、node provisioning のプロセスと status を追跡する key resource です。
# Check NodeClaim status
kubectl get nodeclaims
# Check details and events
kubectl describe nodeclaim <name>
# Check provisioning failure causes
kubectl get nodeclaims -o yaml | grep -A 10 status典型的な troubleshooting の順序:
- NodeClaim status を確認する
- NodePool configuration を確認する
- IAM roles/policies を検証する
- subnets/security groups を検証する
4. do-not-disrupt annotation の正しい使い方はどれですか?
- A)
kubernetes.io/do-not-disrupt: "true" - B)
karpenter.sh/do-not-disrupt: "true" - C)
eks.amazonaws.com/no-disrupt: "true" - D)
node.kubernetes.io/exclude-disruption: "true"
答えを表示
答え: B) karpenter.sh/do-not-disrupt: "true"
解説: この annotation を Pod または Node に追加すると、Karpenter の consolidation または drift replacement から除外されます。
# Apply to Pod
apiVersion: v1
kind: Pod
metadata:
name: critical-pod
annotations:
karpenter.sh/do-not-disrupt: "true"
spec:
containers:
- name: app
image: myapp:latest
# Apply to Node
kubectl annotate node <node-name> karpenter.sh/do-not-disrupt=true5. Auto Mode cluster の node status を monitoring するための推奨 tool はどれですか?
- A) kubectl top nodes のみ
- B) Container Insights + kubectl の組み合わせ
- C) EC2 console で直接確認する
- D) AWS CLI のみ
答えを表示
答え: B) Container Insights + kubectl の組み合わせ
解説: 効果的な monitoring には tool を組み合わせて使用します。
# Real-time monitoring
watch -n 5 'echo "=== Pending Pods ===" && \
kubectl get pods -A --field-selector=status.phase=Pending && \
echo "=== Node Status ===" && kubectl get nodes -o wide'
# Check resource usage
kubectl top nodes
kubectl top pods -A
# Check NodePool status
kubectl get nodepools
kubectl describe nodepool <name>Container Insights metrics:
- Node CPU/memory utilization
- Pod scheduling latency
- Container restart count
6. Day-2 operations で node updates を自動化するには、どの NodePool field を設定すべきですか?
- A)
autoUpdate: true - B)
expireAftersetting - C)
updatePolicy: Rolling - D)
refreshInterval: 24h
答えを表示
答え: B) expireAfter setting
解説:expireAfter を設定すると、指定した時間後に node が自動的に置き換えられ、最新の AMI と security patches が適用されます。
spec:
template:
spec:
expireAfter: 168h # Auto-replace after 7 daysDay-2 operations automation settings:
expireAfter: 定期的な node replacementconsolidationPolicy: Cost optimization- Disruption Budget: service impact の最小化
7. production environment での rolling updates に推奨される Disruption Budget 設定はどれですか?
- A) 高速 updates のための
nodes: "100%" - B) 段階的な updates のための
nodes: "10%"または absolute value - C) Disruption Budget を無効にする
- D) 中程度の速度のための
nodes: "50%"
答えを表示
答え: B) 段階的な updates のための nodes: "10%" または absolute value
解説: production environment では、service impact を最小限に抑えながら段階的に update します。
disruption:
consolidationPolicy: WhenEmptyOrUnderutilized
consolidateAfter: 5m
budgets:
# Default: Gradual replacement at 10%
- nodes: "10%"
# Peak hours: More conservative
- nodes: "1"
schedule: "0 9-18 * * mon-fri"
duration: 9h
# Maintenance window: More aggressive
- nodes: "30%"
schedule: "0 2-4 * * sun"
duration: 2h8. Auto Mode node 関連の CloudWatch alarms における key metrics はどれですか?
- A) EC2 instance status のみ
- B) Pending Pod count、node provisioning time、workload availability
- C) Cost metrics のみ
- D) Network traffic のみ
答えを表示
答え: B) Pending Pod count、node provisioning time、workload availability
解説: Auto Mode operations で monitoring すべき key metrics:
| Metric | Normal Range | Alarm Condition |
|---|---|---|
| Pending Pod count | 0-5 | > 10 for 5 min |
| Node provisioning time | < 90 sec | > 120 sec |
| Workload availability | > 99.9% | < 99.5% |
| API response time | < 200ms | > 500ms |
これらの metrics を自動的に収集するには、CloudWatch Container Insights を有効にします。