If(3)
-
retention 없는 CloudWatch logs의 log groups
- 개요 테라폼이나 AWS Web console에서 AWS 리소스를 생성할 때 CloudWatch Logs에 log group이 retention 설정 없이 생성되는 경우가 많으며 관리가 안돼서 비용이 과금되는 경우가 많다. 아래는 기 생성된 log groups의 retention을 확인하고 적용하는 명령어를 자동 생성해 주는 스크립트이다. - 스크립트 #!/bin/bash echo "CloudwatchLog without Retention Settings" for i in $(aws logs describe-log-groups --query logGroups[*].logGroupName[] --output text) do CloudwatchLogRetention=$(aws logs describe-lo..
2022.12.07 -
ECR repository life-cycle-policy 확인
- 개요 ECR에서 repository를 생성할 경우 LifeCyclePolicy가 기본적으로 없이 생성되므로 과금의 원인이 된다. 아래는 기 존재하는 repository의 LifeCyclePolicy가 있는지 확인해주는 스크립트 이다 - 스크립트 #!/bin/bash for i in $(aws ecr describe-repositories --query 'repositories[*].repositoryName[]' --output text) do ecr=$(aws ecr get-lifecycle-policy --repository-name $i 2>/dev/null) if [ $? == 0 ]; then echo good else echo $i has no life cycle policy fi done
2022.11.04 -
대상 서버 파일시스템중에 사용량이 80%이 넘는 목록 확인
- 개요 Linux 파일 시스템을 용량 관리는 상당히 중요하다. 아래는 대상 서버에 mount 되어 있는 파일시스템중에 80%가 넘는 목록을 확인하는 스크립트 이다. - 스크립트 #!/bin/bash host_list=(host1, host2) for i in ${host_list[@]} do v=$(ssh $i 'df -t xfs -t ext4 --output=target,pcent | egrep "([80][0-9]|[90][0-9]|100)%" | grep -v loop' 2>/dev/null ) if [ $? == 0 ]; then echo -e $i, $v else echo pass fi done - 참고 ssh options https://happyengine.tistory.com/47
2022.10.06