728x90
반응형
728x90
반응형
출처 : https://www.youtube.com/watch?v=S7l2UEXVhb0&list=PLBrGAFAIyf5rby7QylRc6JxU5lzQ9c4tN&index=17 Eventcount / Sequencer 이전 강의에서 배운 semaphore에서 busy waiting 문제는 해결하였다. 하지만 wakeup에서 대기하고 있는 프로세스 중 하나를 랜덤으로 고르기 때문에 끝까지 선택되지 않을 수 있는 프로세스가 존재(starvation problem)할 수 있다. 이 starvation problem을 해결하고자 어떤 순서를 만들어서 깨워주기 위해서 Eventcount / Sequencer가 등장한다. 은행의 번호표와 비슷한 개념 Sequencer : 번호표를 뽑는 기계 정수형 변수 생성시 0으로..
우리가 이전 시간에 만들었던 버킷을 클릭한다. 버킷에 이전의 업로드했던 파일을 클릭한다. 스토리지 클래스의 편집을 누른다. 다양한 스토리지 클래스가 존재한다. 이 중에서 내가 원하는 것을 선택하면 된다. 지능형 계층화를 선택하면 AWS에서 알아서 가장 적합한 스토리지 클래스를 골라준다. 스토리지 클래스를 선택하고 변경 사항 저장을 누르면 스토리지 클래스가 스탠다드에서 지능형 계층화로 변경된 것을 확인할 수 있다.
AWS에서 S3를 들어간 다음 버킷 만들기를 클릭한다. 버킷의 이름을 지어준다. 이때, S3 버킷은 글로벌 서비스이므로 고유한 이름으로 지어주어야 한다. 다만 리전을 선택해서 어디에 저장할 지는 선택할 수 있다. 기본 암호화의 버킷 키만 비활성화로 설정하고 나머지는 그대로 두고 버킷을 생성한다. 버킷이 성공적으로 생성된다. 버킷 이름에 대문자는 들어가면 안된다고 하길래 소문자로 변경해줬다. 생성한 버킷을 클릭해서 들어간다. 버킷을 들어가면 다음과 같은 화면이 나오게 된다. 파일을 하나 업로드 해보자. 간단하게 그냥 파일을 드래그해서 놓으면 업로드가 된다. 나는 그냥 최근 즐겨하는 원신 배경화면을 넣었다. 이렇게 성공적으로 업로드가 된다.
출처 : https://www.youtube.com/watch?v=CitsUz-Dx7A&list=PLBrGAFAIyf5rby7QylRc6JxU5lzQ9c4tN&index=16 Spinlock에서 P() 연산과 V() 연산이 한 번에 동작하도록 보장해줌으로써 문제를 간단하게 해결할 수 있다는 것을 확인했다. 하지만 여전히 Busy waiting 문제가 여전히 남아있다. 이번 장에서는 Busy waiting 문제를 해결할 수 있는 Semaphore를 알아보자. Semaphore 1965년 다익스트라가 제안 Busy waiting 문제 해결 음이 아닌 정수형 변수(S), S >= 0 초기화 연산, P(), V() 로만 접근 가능 P : Probern (들어가기 전에 검사) V : Verhogen (나올 때 돌..
새로운 보안 그룹을 생성한다. 보안 그룹의 이름을 지어주고 인바운드 규칙에 NFS를 추가한다. EFS로 들어가 파일 시스템을 생성한다. EFS의 이름을 지어주고 생성한다. 성공적으로 EFS가 생성된다. 해당 EFS의 파일 시스템 ID를 클릭한다. EFS의 파일 시스템에 네트워크 항목을 보면 보안 그룹들이 default로 설정되어있다. 우리가 처음 생성했던 보안 그룹으로 만들어주자. 우측의 관리를 클릭한다. default로 되어있던 초기의 보안 그룹들을 제거하고 우리가 만든 EFS 보안 그룹을 선택한다. EC2로 돌아가서 오토 스케일링으로 들어간다. 새로운 오토 스케일링 그룹을 생성한다. 새로운 시작 템플릿을 생성한다. 새로운 시작 템플릿의 이름을 지어준다. AMI는 amzn2-ami-kernel-5.10..
시작하기에 앞서 새로운 AMI 를 만들어준다. 우리는 이전에 Amazon Linux 2023 AMI를 사용했지만 이 버전에서는 401 에러가 난다. 그러므로 Amazon Linux 2 AMI (HVM) - Kernel 5.10, SSD Volume Type 인 AMI를 새로 생성해주고 시작한다. Linux 2 AMI를 새로 만들어주고, 이 AMI를 사용해서 인스턴스 2개를 새로 생성한다. 인스턴스의 이름을 지어주고, 키 페어와 보안 그룹은 이전에 생성했던 것을 사용한다. 그리고 인스턴스 갯수는 2개를 생성한다. 2개의 인스턴스가 새로 생성되었을 것이다. 구분 짓기 위해 이름을 각각 First와 Second로 지어준다. 해당 인스턴스의 퍼블릭 IP 주소로 들어가면 둘 다 동일하게 Hello, world! ..