안녕하세요 요즘 다른 프로젝트나 다른 업무를 한다고 이야기를 못했네요. 현재는 아래와 같은 기능을 구현했습니다.
아울러 시작하기전 오픈스택 25.5와 Kolla-ensible을 통해 구축을 했고 주요 컨트롤러,네트워크가 있는 서버들은 Timeshift을 이용해서 백업을 하드에 저장합니다.
→ 물리적 아키텍처는 여기서 확인!
- 유저별 한도 설정
저의 서버같은 경우 학과에서 지원해주는 한정적인 서버로 운영하기 때문에 여러 학생들이 이용과 한 학생에게 과하게 가는걸 방지하기 위해 각각 학생들 마다 사용할수 있는 리미트를 걸었습니다.
- 서버 생성
서버 생성은 사용자가 정해진 한도내에서 직접 설정을 해서 서버를 생성 하도록 했습니다. 서버 접속 같은경우 SSH전용 IP을 이용해서 포트포워딩을 통해 SSH을 연결을 하고 처음에는 Key방식으로 접속을 해야 접속이 가능합니다.
서버 생성 같은경우 [서버 생성 요청 → 포트포워딩 할당 → 디스크 생성 → 인스턴스 생성] 이런구조를 채택을 했고 사유는 동시에 하는건 좋지만 제가 해볼때 디스크 생성에서 제일 오래 걸리기 때문에 따로 생성후 바로 인스턴스 생성할수 있게 했습니다.
- 인스턴스 대시보드
인스턴스 대시보드에는 포트포워딩 할수 있는 영역하고 상태정보 그리고 VNC 접속을 하기위한 버튼이 있습니다. VNC같은경우 처음에 로드할때 보여줄까 생각하다가 컴퓨터에 리소스와 네트워크 부하가 조금 올까봐 선택적으로 버튼을 누루면 접속 할수 있게 했습니다.
포트포워딩 같은경우 내부 외부 포트를 입력해서 프로토콜을 고르면 내부에 정해진 규칙하고 제가 정한 IP에 랜덤으로 (빈포트)에 연결하게 됨니다.
마치며..
이 프로젝트는 제가 작년 여름 때 부터 했는데 혼자서 하다 보니 벌써 여기까지 질질 끌다 왔네요.. 이 시스템은 학과 서버 운영에 사용되고 완벽히 개발이 다 되어서 깃허브에 공유를 해서 많은 사람이 알아줬으면 좋겠어요!(아직 개발 중이라서 공개 안 합니다. 개발 다 하면 공개!)



