我有幾個應用程序一起工作,需要溝通。如何生成主機唯一ID?
這些應用程序可以安裝在不同的主機上,這些主機可以位於不同的本地網絡中,但都通過全球網絡連接在一起。
主機可以是Linux(CenOS,Debian,Ubuntu)或Windows(7/10)。
現在,我需要確定哪個主機正在運行一個應用程序。
的要求是: - 在同一臺主機上運行的所有應用程序具有相同的「主機ID」 - 每一個「主機ID」是所有主機
中獨一無二的,因爲主機可以是物理機,虛擬機甚至碼頭實例,我不認爲我可以使用主機名作爲「全球唯一ID」。
由於主機可以位於不同的本地網絡,因此我認爲我不能將本地IP地址用作「全局唯一ID」。
那麼,我可以使用哪些數據?也許網絡適配器的MAC地址?它是否保證是唯一的,即使在同一個碼頭的多個實例之間?
謝謝。
碼頭集裝箱ID是uuids。聽起來就像你需要一種方法來將uuid分配爲VM主機名和硬件節點主機名? –
每個有網絡接口的主機必須是唯一的mac地址。包括docker實例。如果對於任何rason,兩個docker主機,您可以使用'docker run --lxc-conf =「lxc.network修改mac地址。hwaddr = 92:20:de:b0:6b:61「my_image ifconfig」 – abkrim