DevOps & Cloud Engineering(220)
-
Amazon EKS (k8s) namespace 삭제가 안될 경우 (terminating status)
개요Amazon EKS에서 namespace를 삭제할 때 terminating으로 상태가 멈춰 있을 경우namespace 및 current context 확인 기능 추가 (2024.10.08)지우려는 대상 namespace가 있는 지 확인 기능 추가 (2024.10.15)Terraform Workspace 확인하는 기능 추가 (2024.10.29) 스크립트#!/bin/bash# 색상 코드 정의GREEN='\033[0;32m'YELLOW='\033[1;33m'RED='\033[0;31m'NC='\033[0m' # No Color (색상 초기화)# Define the stuck namespace as a variableNAMESPACE=$1# Check if the namespace is providedi..
2024.10.15 -
k8s worker node runtime 확인하는 방법
개요k8s worker node runtime 확인하는 방법 방법kubectl get nodes -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.status.nodeInfo.containerRuntimeVersion}{"\n"}{end}' 참고https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/find-out-runtime-you-use/
2024.10.14 -
eks cluster add-on 버전 호환성 및 버전 확인
개요eks cluster version에 따른 사용가능한 add-on 리스트와 버전과 add-on 버전이 확인 가능한 CLI 버전 및 호환성 확인# 특정 EKS Version에서 지원되는 특정 add-on 버전 리스트aws eks describe-addon-versions --kubernetes-version --addon-name --query 'addons[].addonVersions[].{Version: addonVersion, Defaultversion: compatibilities[0].defaultVersion}' --output table# 특정 EKS Version에서 지원되는 add-on 리스트aws eks describe-addon-versions --kubernetes-versi..
2024.10.04 -
k8s에 설치된 argocd 초기 비밀번호 확인하기
개요k8s에 설치된 argocd 초기 비밀번호는 따로 지정하지 않으면 임의로 생성이 된다. 확인 방법kubectl -n get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 --decode
2024.10.04 -
AWS S3 presigned URLs 생성 및 업로드 테스트
개요presigend url을 통해 업로드하는 테스트 스크립트 스크립트Downloading Object using presigned URLsaws s3 presign s3://DOC-EXAMPLE-BUCKET1/mydoc.txt --expires-in 604800Uploading Object using presigned URLs➜ ~ brew install python3➜ ~ pip3 install boto3 --break-system-packes➜ ~ vim pre.pyimport boto3BUCKET = ‘my-bucket’KEY = 'my-uploaded-file.txt's3 = boto3.client('s3')url = s3.generate_presigned_url( ClientMet..
2024.07.30 -
EC2 stopped 시간과 이름 출력 (AWS CLI)
스크립트#!/bin/bash# 정지된 인스턴스 목록 가져오기stopped_instances=$(aws ec2 describe-instances \ --filters "Name=instance-state-name,Values=stopped" \ --query "Reservations[*].Instances[*].[InstanceId, Tags[?Key=='Name'].Value | [0]]" \ --output json)# 테이블 헤더 출력printf "%-50s %-50s %-50s\n" "Instance ID" "Instance Name" "Stopped Time"# 각 인스턴스에 대해 정지 시간을 가져와서 출력echo "$stopped_instances" | jq -c '.[][]' ..
2024.07.29 -
Amazon EC2 종료 시간 확인 (CLI)
개요EC2 인스턴스가 Launch 된 시간은 확인이 가능하지만 Off 된 시간은 콘솔에서 따로 확인 불가하다. 아래는 CLI를 통해 확인하는 방법이다. Amazon EC2 종료 시간 확인 (CLI)aws ec2 describe-instances --filters "Name=instance-state-code,Values=80" --query 'Reservations[].Instances[].[Tags[?Key==`Name`] | [0].Value, InstanceId, PrivateIpAddress, State.Name, StateTransitionReason]' --output table
2024.05.08 -
AWS CLI 페이저 옵션 끄기
개요AWS CLI의 output이 prompt로 떨어지지 않고 page로 나오면 상황에 따라서 불편할 수 있다. pager option 끄기aws configure set cli_pager "" 참고https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-pagination.html
2024.04.15 -
mac에서 날짜 계산하기 (gdate)
개요 mac에서는 date 명령어가 gdate로 사용된다. 설치 brew install coreutils 날짜 계산 (현재 기준 180일 전) gdate --date "180 days ago" +"%Y%m%d" 날짜 계산 (현재 기준 180일 후) gdate --date "180 days" +"%Y%m%d"
2024.04.04 -
AWS Cloudtrail IAM 관련 변경 이벤트 알림 slack
개요 AWS Cloudtrail에서 IAM 변경 알림이 이벤트로 기록이 된다. 해당 기록을 Slack 으로 받는 방법은 아래와 같다. 구성 (N.virginia Region) Cloudtrail >> Eventbridge Rules >> SNS >> Chatbot >> Slack Cloudtrail IAM 변경 관련 이벤트 { "source": ["aws.iam", "aws.ec2"], "detail-type": ["AWS API Call via CloudTrail"], "detail": { "eventSource": ["iam.amazonaws.com", "ec2.amazonaws.com"], "eventName": ["AttachGroupPolicy", "AttachRolePolicy", "Attac..
2024.04.03