여러 대의 PC 로 웹서버를 구축하는 방법이 있나요 ?

naddolki의 이미지

쉬지 않고 돌아가는 웹서버를 꾸리고 싶은데 ..
pc 를 그런 식으로 가동시키는 건 ...
pc 를 너무 혹사시키는 게 아닌가 싶어 ..

집에 있는 3대의 PC 가 ..
1 대당 8시간씩 .. 로테이션으로 웹 서비스를 하고 ..
웹 서비스 중이지 않은 pc 는 ..
power off 상태로 쉬게끔 ... 웹 서버를 꾸려보려 합니다 .

가동 중인 PC 를 제외한 나머지 PC 들은 ... power off 되어 있다가 ..
임무 교대 시간이 되면 .. 어떤 식으로든 깨어나서 ...
가동중인 PC 와 동기화 과정을 마친 후 ...
임무를 교대하는 겁니다 ..
그러고 나서 .. 임무를 넘겨 준 PC 는 power off 가 되고요 .

클라이언트는 .. 웹 서비스를 이용 중에 ..
서버에서 임무 교대가 이루어지는 것과 상관없이 ..
서비스를 끊김없이 이용할 수가 있어야 합니다 .

os 는 Linux 나 Windows 이었으면 좋겠네요 .. ;;

혹시, 어떤 방법을 이용해야 할까요 ?
클러스터링을 이용해야 하는 것인가요 ?

cleansugar의 이미지

번갈아가면서 켜지도록 운영하는 분은 처음 봤습니다.

그냥 하나에 몰아서 혹사시키세요.

의외로 피씨도 며칠간 잘 버팁니다.

하나 운영하다 고장나면 하나만 고쳐도 되지만 3개 운영하다 3개 고장나면 더 손해죠.

켜고 끄는 것은 바이오스에서 설정을 해줘야되거나 wakeonlan을 써야 합니다.

그러므로 아주 복잡하고 부정확합니다.

그래도 하고 싶으시다면 시도해보신 다음 결과를 홈페이지에 올리면 관심있는 분들에게도 도움이 되겠죠.

이와는 별도로 로드밸런싱이라고 서버의 부하를 분산하는 기술은 많이 쓰고 있습니다.

하드디스크는 raid나 네트워크 정기 백업으로 보호하면 됩니다.

서버 여시면 주소 알려주시면 좋겠어요.

재벌 2세가 재벌이 될 확률과
금메달리스트 2세가 금메달을 딸 확률이 비슷해지도록
자유오픈소스 대안화폐를 씁시다.

아이디의 아이디어 무한도전
http://blog.aaidee.com

귀태닷컴
http://www.gwitae.com

Hezekiah의 이미지

저는 PC도 아닌 넷북을 개인서버로 활용하고 있습니다...
얼마 전에 이사해서 껏지만... 끄기전에 uptime이 72일인가였습니다...;;;
물론 사용량에 따라서 다르겠지만...
저의 경우에는 거의 저 혼자서 사용하다보니... 무리없이 사용하고 있습니다.(현재는 11일정도 uptime찍고 있다는..)

* Everything is not accomplished *

snowall의 이미지

1대만 혹사시키고, 고장나면 바꾸는게 비용 절감에 훨씬 도움이 될 것 같지만...

굳이 하고 싶다면...

컴퓨터 메인보드에 보면 지정된 시간에 알람 맞춰놓고 켜지는 기능이 있습니다. 시간을 잘 맞춰놓구요...
(메인보드에서 지원 안하면 못하겠죠)

컴퓨터 프로그램 중에, 지정된 시간이 경과되면 컴퓨터를 꺼지도록 하는 프로그램이 있습니다. 이것도 시간을 잘 맞춰놓구요...

3대가 켜지고 꺼지는 시간을 잘 연동해서 조금씩 겹치도록 하면 되겠죠.

그리고 서로 켜져있는 컴퓨터들 끼리 동기화 되도록 rsync나 뭐 그런 프로그램으로 잘 맞춰놓구요...

이제 http서버를 돌리면 됩니다.

동시에 켜져 있는 2대 중 누가 서비스를 하다가 꺼질 것인지는 잘 정해놔야겠죠. 로드밸런싱 같은걸 잘 해서요.

피할 수 있을때 즐겨라! http://melotopia.net/b

viper9의 이미지

혹사하다가 컴퓨터가 문제가 생기는게 아닌데 '혹사 시키는게 아닌가 싶어'라는 이유로 스스로 고생을;; 하며 굳이 3대를 교대로 돌려야할 필요가 있을까요...;;

분명 그렇게 꺼졌다 켜졌다 하는 시각을 잘 조정해서 문제가 없게 만들려면 고민해야할게 많을 것 같은데요.. 그렇게 설치하는 것 자체가 본인에 대한 혹사가 아닐까요?

기계는 일하는게 불쌍하거나 걱정된다고 사람이 대신 일을 한다는건 너무 안타까운 것 같습니다.

한대로 돌려보고 문제 있으면 하나 더 붙여서 두대로 해보고 안되면 하나 더 붙이고 이러는게 훨~씬 더 나을것 같은데요.

그리고 그렇게 무중단이 중요하다면 동기화가 잘 되었는지, 임무를 제대로 넘겼는지 확인하려면 모니터링 서버가 따로 또 있어야하지 않을까요? 반드시 쉬지 않고 돌아야만 하는 중요한 서비스라면 결국에는 저정도 수준으로 끝날 일이 아닌것 같습니다. (그런데 집에서 돌리신다는거 보면 그정도 중요한 것 같진 않아보이긴 합니다.)

nthroot의 이미지

1. etherner으로 wakeup 서로를 깨우는 형태로 일단 만드시고
2. 모두 동일한 IP를 설정 하시고
3. 깨어는 장비는 자신의 MAC을 arp로 상위 라우터로 알리는 기능을 만드시고 (여기 까지 하면 일단 돌아는 갑니다.)
4. 동적인 데이터가 있다면 동기화 작업을 해야 하고
5. 기타 등등등..

로드밸런싱 관련된 문서를 찾아보시면 필요한 것들이 모두 있습니다.

------식은이 처------
길이 끝나는 저기엔 아무 것도 없어요. 희망이고 나발이고 아무 것도 없어.

익명 사용자의 이미지

꺼졌다 켜졌다 하는 부분이 오히려 더 혹사할 거란 생각이 듭니다.
클럭을 조절하는 등의 방법으로 안정성을 기한 후 3대를 묶어 돌리는 것도 방법이겠네요.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.