본문 바로가기
반응형

java5

AWS Secrets Manager 개념 및 테스트 비밀값 관리 대부분 어플리케이션은 외부에 노출돼서는 안되는 비밀값을 갖고 있음(ex. 데이터베이스 접속정보, 서드파티 서비스 호출을 위한 액세스 키 등) 비밀값 관리 원칙 비밀값 유출가능성으로 비밀값은 버전 관리 시스템에 업로드되면 안됨 비밀값은 최소한의 인원만 알고 있어야 함 비밀값과 아닌 값은 분리해서 관리 필요 비밀값 관리 방법 배포 자동화 툴 - Jenkins, Chef, Ansible 같은 배포 자동화 툴들은 배포 시 서버 내 암호화된 값을 어플리케이션이 사용할 수 있게 저장할 수 있음 Vault(오픈소스) - 비밀값 암호화, API 접속을 위한 임시 토큰 발급, 키 롤링, 외부서비스(IAM, SSH, DB 등)에서 사용하는 권한 시스템 사용, 기록 감사, 암복호화 API 등 제공 - 어플리케이.. 2022. 3. 11.
AWS CodeDeploy로 EC2 Auto Scaling Group 배포(java) CodeDeploy 클라우드 기반 배포 자동화를 위한 CD(Continuous Deploy) 도구 AWS EC2, ECS, Lambda 및 온프레미스 서버에도 배포 가능 S3, CodeCommit, CodePipeline, Git, ELB, Auto-Scaling 등과 통합 CodeDeploy 주요 구성 요소 AppSpec 파일: 배포할 어플리케이션에 대한 정보를 설정(yml or json) 배포 구성: CodeDeploy에서 사용하는 배포규칙,배포성공/실패 조건 세트 - EC2/온프레미스 인스턴스의 최소개수지정, Lambda함수 버전으로 특정 트래픽 라우팅 방식(Canary, Linear, All-at-Once) 등 배포그룹: 개별 인스턴스들의 세트, 특정 태그가 지정된 인스턴스 or ASG에 포함된 .. 2022. 2. 27.
Java List removeIf(), 안전한 List 루프 Item Remove java List객체에서 조건에 해당하는 아이템을 list에서 제거할 때 일반적으로 생각할 수 있는게 List를 루프 돌면서 해당 아이템에 대해 remove() 처리를 하는 것이다. 그러나 다음 코드와 같이 실행했을 때 아래와 같은 에러 등이 발생한다. 각 아이템을 List에서 제거하면서 List 내부조정에 따른 아이템의 인덱스 등이 달라지기 때문이다 public static void main(String[] args){ ArrayList numbers = new ArrayList( Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)); for (Integer num: numbers){ if(num % 2 ==0){ numbers.remove(num); } } } java 8.. 2022. 2. 15.
EC2 Java 설치 및 JAVA_HOME 설정 1. java 설치 가능 목록 확인 yum list | grep jdk 2. java Install 및 설치 확인 - "devel"로 설치 sudo yum install -y java-1.8.0-openjdk-devel.x86_64 java -version 3. java 경로 확인 $ which java /usr/bin/java $ readlink -f /usr/bin/java /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-1.amzn2.0.2.x86_64/jre/bin/java 4. JAVA_HOME 설정 # vi 열기 sudo vi /etc/profile # profile내에 JAVA_HOME 등록 export JAVA_HOME=/usr/lib/jvm/java-1... 2022. 1. 21.
SonarQube 설치 및 구성 SonarQube - 코드 정적분석 툴(Tool) - 정적분석: 실제 프로그램을 실행하지 않고 코드의 패턴을 바탕으로 Bug, Code Smell, 보안취약점 등을 분석 - 기타 정적분석 툴: PMD, FindBugs, CheckStyle 다운로드 및 설치 - JDK 1.8 기준 테스트 wget https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-7.8.zip // non-root user(root user로 실행 불가) unzip ./sonarqube-7.8.zip // 실행 옵션 [console | start | stop | force-stop | restart | status | dump] sonarqube-7.8/bin/linux-.. 2021. 11. 30.
반응형