재부팅하지 않고 서버의 커널을 어떻게 업그레이드 할 수 있습니까?


29

이것은 이미 알고 있고 ksplice에 매우 관심이 있기 때문에로드 된 질문 입니다. 문제는 Oracle이 Oracle을 구입 한 이후 오퍼링에서 수많은 서버 배포판을 가져와야한다는 것입니다. 그 답은 예전처럼 간단하지 않습니다.

나는 눈치 Unix.SE에 질문을 주 것을 :

고유 한 ksplice 패치를 빌드하여 고유 한 커널에 동적으로로드 할 수 있습니다

큰! 그러나 어떻게?!

무료 ksplice패키지 ksplice-uptrack가 아닌 데스크톱의 저장소에 무료 패키지를 설치했으며 이제 업데이트를 생성하고 적용하려고합니다. 과정은 무엇입니까? 프로세스를 자동화하는 스크립트가 있습니까?

또한 재부팅이 필요없는 업그레이드에 필요한 모든 기계가 커널 (및 ksplice패키지)에있는 경우 왜 기본적으로이를 활용하지 않습니까?


최근에 kGraft가 발표되었습니다 . 그것은 거의 동일한 결과 인 것 같습니다. 따라서 당신이 그것에 대한 답변을 가지고 있다면, 나는 그것에 만족할 것입니다. 현재 출시 된 지 몇 달이 지났습니다.


참고 1 : ksplice 옆의 솔루션에 만족하지만 서버를 재부팅하지 않고 적용 할 수있는 커널에 롤링 업데이트를 제공해야합니다.

참고 2 : 다시 말씀 드리겠습니다. 기본 ksplice "서비스"는 Ubuntu 서버를 지원하지 않습니다. 예전에는 없었지만 더 이상은 아닙니다. ksplice 사용에 대해 이야기 할 때 ksplice패키지 의 오픈 소스 도구에 대해 이야기하고 있습니다 . 이 답변은 ksplice-uptrack앞서 언급 한 "서비스"와 직접 통합되는 부분이기 때문에 내가 대답 한 내용 이 아닐 수도 있습니다.

답변:



6

ksplice에 대해서는 잘 모르지만 언급 할 것이라고 생각했습니다 kexec. 이것이 필요할 수도 있습니다.

질문에 관해 왜 우리는 이것을 기본 메커니즘으로 채택하지 않았습니까? 현재 커널이 아직 실행 중일 때 메모리를 덮어 쓰면 잠재적 인 문제가 발생할 수 있습니다. 또한 하드웨어 장치가 항상 가능한 것은 아니지만 잘 정의 된 상태에있을 것으로 예상합니다.

당신은 한 번 봐 걸릴 수 는 IBM 개발자 작품 은 필요에 맞는 경우는 결정에 대한 기사를.


5
에 +1 kexec하지만 본질적으로 핫 재부팅입니다-IE 커널이 처음부터 다시로드되므로 init 스크립트 등이 여전히 호출됩니다. 이것은 기술적 으로 재부팅이 아니지만 실행중인 서비스가 중지됩니다.
jackweirdy

그래, 나는 그것을 알고 있지만 그것이 어떻게 다른지 알아 내기 위해 ksplice에서 아무것도 읽지 않았다.
Marcin Kaminski

1
에 따르면 en.wikipedia.org/wiki/Ksplice , ksplice이 메모리에 여전히 동안 실행중인 커널에 대한 이진은 diff 패치를 적용
jackweirdy

2
흥미 롭기 때문에 이것에 대해 조금 더 읽어야 할 것입니다. 재설정 시간을 절약하려는 가동 시간은 얼마나됩니까? : D
Marcin Kaminski 1

3

ksplice는 재부팅 할 필요없이 커널 스왑을 허용합니다. Uptrack은 ksplice에서 작동하며 /etc/uptrack/uptrack.conf에 편집 가능한 설정 파일이 있습니다


2

Ksplice에 대한 완전한 오픈 소스 대안이 몇 가지 있는데, 둘 다 메인 라인 Linux 커널에 포함되도록 제출되었습니다. 커널에서 어느 쪽이 끝날지 말하기는 너무 이르지만, 용감하다면 여전히 시도해 볼 수 있습니다.

현재 둘 다에 대한 자세한 내용을보실 수 있습니다 : SUSE 게시물 kGraft, 레드햇 게시물 Kpatch 패치


1

아치 리눅스 위키에는 https://wiki.archlinux.org/index.php/ksplice가 있습니다.

배포판 고유의 유일한 부분은 ksplice 자체를 설치하는 방법입니다. 당신은 이미 그것을 알아 낸 것으로 알고 있기 때문에, 나는 이것이 당신을 당신의 길로 인도해야한다고 생각합니다.


1
이것이 이론적으로 질문에 대답 할 수 있지만 여기에 답의 핵심 부분을 포함시키고 참조 할 수있는 링크를 제공하는 것이 바람직 합니다.
Eric Carvalho

0

2015 년 7 월 16 일부터 공식적으로 "Oracle Ksplice는 Fedora 및 Ubuntu Desktop Edition에서 무료로 제공됩니다."

다운로드 한 .deb 파일 설치 하면됩니다 .

시도 sudo dpkg -i ksplice-uptrack.deb하면로 종속성을 수정해야 할 수도 있습니다 sudo apt-get install -f.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.