동시에 둘 이상의 프로세스에서 IP 주소 추가를 호출하는 것이 안전합니까?

동시에 둘 이상의 프로세스에서 IP 주소 추가를 호출하는 것이 안전합니까?

시작 시 많은 NBD 서버를 네트워크 인터페이스에 바인딩하는 서비스가 있는데, 각 서버에는 자체 IPv6 주소가 있습니다. 이를 위해서는 먼저 주소를 올바른 인터페이스에 추가해야 합니다. 현재 이 작업은 다음을 한 번 실행하여 순차적으로 수행됩니다.

ip addr add <foo> dev <bar>

NBD 장치당. 종료 시 일치하는 순서가 있습니다 ip addr del.

이러한 호출을 분기하여 병렬로 실행함으로써 속도를 높이고 싶습니다. 이것이 안전한 것으로 알려져 있습니까, 안전하지 않은 것으로 알려져 있습니까, 아니면 둘 다입니까? 매뉴얼 페이지는 도움이 되지 않으며, 소스가 내 머리 위로 넘어갈 것이라고 고백합니다. 단지 실행하고 작동하는 것을 보는 것만으로는 정말 만족스럽지 않습니다. 단지 운이 좋았는지 알 수 없기 때문입니다.

중요한 경우 커널 버전 2.6.32가 있는 Debian Squeeze에서 이것을 실행하고 있습니다.

답변1

예, IP 주소는 병렬로 수행될 수 있습니다. 심장박동기나 심장박동과 같은 클러스터링 소프트웨어는 항상 이 작업을 수행합니다.

답변2

실제로 IP 주소를 설정하는 데 필요한 시간이 여기서 중요한지 의심됩니다. 오히려 다양한 명령을 분기하는 오버헤드입니다. 커널과 직접 대화하는 전용 프로그램을 사용하면 더 나은 결과를 얻을 수 있습니다.

관련 정보