좋은 아침입니다. 이쪽은 인프라의 미야시타입니다.
회사 내 Redmine은 오래돼서 교체를 고려 중입니다.
최대한 적은 노력으로 검증 환경을 준비하고 싶었기에 AWS 클라우드포메이션을 사용했습니다
레드마인을 준비하려고 했어요.
목차
서론
현재 운영 중인 Redmine 환경은 매우 오래되었으며, 물리적 서버에 Redmine 1.1.2.stable(MySQL) 버전이 설치되어 있어서 결국 교체하고 싶습니다.
CloudFormation에서 인스턴스를 생성하세요
관리 콘솔에서 Cloudformation 화면을 열어보세요.
"Create Stack"으로 새 템플릿을 만들기 시작하세요.
·이름→ 관리하기 쉬운 이름을 자유롭게 붙여줘.
- 템플릿의 SingleInstanceSamples에서 "Redmine 프로젝트 관리 시스템"을 선택→샘플 템플릿 사용.
*검증 환경이기 때문에 이번에는 최소화된 구성으로 구축할 예정입니다.
"다음 단계"로 다음 단계로 이동하세요.
Specify Parameters에 값을 입력했는데, 기본적으로 키를 지정할 수 없었어요.
그래서 저는 '되돌아가'로 돌아가겠습니다.
아마존에서 게시한 다음 템플릿을 지역 PC에 저장하세요.
https://s3.amazonaws.com/cloudformation-templates-us-east-1/Redmine\_Single\_Instance.템플릿
샘플과의 차이점은 KeyName 정의만 포함하고 있다는 점입니다. 그래서 SSH 로그인하지 않으면
이 작업은 필요하지 않습니다.
[shell](8행) "KeyName": { "Description" : "인스턴스에 대한 SSH 접근을 가능하게 하는 기존 EC2 키쌍의 이름", "Type": "String", "MinLength": "1", "MaxLength": "255", "AllowedPattern" : "[\\x20-\\x7E]*", "ConstraintDescription" : "ASCII 문자만 포함할 수 있습니다." },
(230행) "KeyName" : { "ref" : "KeyName" },[/shell]
"Create A New Stack"의 Upload 템플릿 파일을 다시 선택한 후 저장된 템플릿을 선택한 후 "다음 단계"로 진행하세요.
Parameters에 KeyName 필드가 추가되므로, 생성된 키 이름을 입력하세요.
·DBRootPassword→ 자유롭게 사용하세요. 나중에 mysql에 로그인할 때 꼭 사용하세요.
·InstanceType→ 기본적으로 m1.small이지만, t1.micro로 변경합니다.
- 이미 생성된 키→ KeyName을 지정하세요. 아직 생성되지 않았다면 먼저 생성하세요.
• SSH→ SSH를 허용하는 NW를 지정하세요. 나중에 Securitypolicy에서 변경할 수 있습니다
"다음 단계"로 다음 단계로 이동하세요.
옵션이 필수는 아니지만, 관리하기 쉽게 하려면 태그 이름을 이름으로 붙이는 것이 좋다고 생각합니다
이번에는 고급 설정도 필요하지 않습니다. 자동 확장 시 알림을 받고 싶다면 설정하세요.
"다음 단계"로 다음 단계로 이동하세요.
리뷰에서 최종 체크가 있고 문제가 없다면, 창작은 "Create"로 시작합니다.
인스턴스 실행 후 구성
스택 이벤트가 업데이트되어 CREATE_COMPLETE가 되면 EC2 쪽을 확인하세요.
지정된 타입 인스턴스가 실행 중이므로, 먼저 브라우저에서 접근해 보세요.
http://ec2-54-xxx-xxx-xxx.ap-northeast-1.compute.amazonaws.com/
Redmine 로그인 페이지가 뜨면 기본 관리자로 로그인해 보세요.
ID:admin 비밀번호:admin
안전하게 로그인할 수 있었습니다.
이제 시작했으니, HTTP 포트는 기본적으로 ANY에서 열려 있습니다.
이번에는 회사 입장이므로, 보안 정책을 변경하고 IP 주소 제한을 도입할 예정입니다.
80 (HTTP) 0.0.0.0/0 →80 (HTTP) 202.202.202.xx/32
*만약 ANY를 유지하고 싶다면, 관리자 비밀번호를 즉시 변경하는 것이 더 낫다고 생각합니다.
이제 인스턴스를 쉽게 만들 수 있습니다.
Bitnami의 AMI를 마켓플레이스에서 만들 수 있을 거예요.
운영체제가 우분투이고 앞으로 Autoscale을 사용하고 싶어서 이번에는 CloudFormation으로 빌드했습니다.
다음에는 Redmine 1.1.2 + MySQL 5.0 환경에서 Redmine 2.4.0 + MySQL 5.5로 데이터를 마이그레이션한 기록을 게시할 예정입니다.
○2014/4/8 업데이트
OpenSSL 취약점(하트블리드)을 방지하기 위해 버전을 업그레이드했습니다.
[shell]# rpm -qa|grep openssl openssl-1.0.1e-4.55.amzn1.x86_64 openssl-1.0.1e-4.55.amzn1.i686 openssl-devel-1.0.1e-4.55.amzn1.x86_64[/shell] *HTTS 통신이 없고 접근이 제한되어 있지만 불편합니다.
이미 다뤄진 버전으로 업데이트하세요.
[shell]# yum update openssl 업데이트: audit.x86_64 0:2.3.2-3.19.amzn1 openssl.i686 1:1.0.1g-1.69.amzn1 openssl.x86_64 1:1.0.1g-1.69.amzn1
의존성 업데이트: audit-libs. i686 0:2.3.2-3.19.AMZN1 audit-libs.x86_64 0:2.3.2-3.19.amzn1 glibc.i686 0:2.17-36.81.amzn1 glibc.x86_64 0:2.17-36.81.amzn1 glibc-common.x86_64 0:2.17-36.81.amzn1 glibc-devel.x86_64 0:2.17-36.81.amzn1 glibc-headers.x86_64 0:2.17-36.81.amzn1 openssl-devel.x86_64 1:1.0.1g-1.69.AMZN1
완료! # rpm -q --changelog openssl * 2014년 4월 9일 수요일 크리스티안 개프턴 gafton@amazon.com - 업스트림 v1.0.1g로 리베이스
* 2014년 4월 7일 월요일 Ben Cressey bcressey@amazon.com - DLopen과 libssl 사용으로 FIPS 검증
* 2014년 4월 7일 월요일 크리스티안 개프턴 gafton@amazon.com - 상위 1.0.1f/g 릴리스 수정 추가(CVE-2014-0160, CVE-2013-0169 수정)[/shell]
업데이트는 이제 완료되었습니다. 하지만 도서관을 이용하는 모든 서비스는
다시 시작해야 해.
[shell]# /etc/init.d/httpd restart[/shell] *참고로, 현재 출시된 아마존 리눅스 AMI는 처음부터 준비된 버전입니다.
이제는 그렇게 되었다고 전해집니다.
(시작 후 매번 다른 공개된 AMI의 버전을 확인하는 것이 더 좋습니다.)/gafton@amazon.com/bcressey@amazon.com/gafton@amazon.com