Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Мазмұны
Кіріспе
Қолданыстан шыққан Linux үшін кластерлеу жүйесі
бағдарламалық жасақтама туралы ақпарат
| атауы = OpenSSI
| логотипі = OpenSSI логотипі.png
| әзірлеуші = OpenSSI тобы
| соңғы нұсқасы = 1.9.3
Defunct clustering system for Linux
infobox software
| name = OpenSSI
| logo = OpenSSI logo. png
| developer = OpenSSI Team
| latest release version = 1.9.3
OpenSSI Linux операциялық жүйесіне негізделген және 2001 жылы Compaq компаниясы ашық кодты жоба ретінде жариялаған. Бұл 1980-ші жылдардың басында жасалған LOCUS-қа дейін созылатын ұзақ даму процесінің соңғы кезеңі.
OpenSSI is based on the Linux operating system and was released as an open source project by Compaq in 2001. It is the final stage of a long process of development, stretching back to LOCUS, developed in the early 1980s.
Сипаттама
OpenSSI жеке компьютерлердің кластерін (нодтарды) бір үлкен жүйе ретінде қарауға мүмкіндік береді. Кез келген нодта іске қосылған процестер барлық нодтардың ресурстарын толыққанды пайдалана алады. Жүйелік жүктемені теңестіру үшін процестер автоматты түрде бір нодтан екінші нодқа көшіріледі. Келіп түсетін желілік қосылымдар ең аз жүктемелі нодқа бағытталады. OpenSSI жоғары өнімділік пен жоғары сенімділік кластерлері үшін жасалған. OpenSSI кластерін бірде-бір қателік нүктесіз құруға болады, мысалы, файлдық жүйе екі нод арасында көшірмеленеді, сондықтан егер бір нод істен шықса, файлға қол жеткізуге тырысатын процесс екінші нодқа көшеді. Балама ретінде кластерді әр нодтың файлдық жүйеге тікелей қол жеткізе алатындай етіп құруға болады.
OpenSSI allows a cluster of individual computers (nodes) to be treated as one large system. Processes run on any node have full access to the resources of all nodes. Processes can be migrated from node to node automatically to balance system utilization. Inbound network connections can be directed to the least loaded node available. OpenSSI is designed to be used for both high performance and high availability clusters. It is possible to create an OpenSSI cluster with no single point of failure, for example the file system can be mirrored between two nodes, so if one node crashes the process accessing the file will fail over to the other node. Alternatively the cluster can be designed in such a manner that every node has direct access to the file system.
Бір процестік кеңістік
OpenSSI бір процестік кеңістік ұсынады – әрбір процесс кез келген түйінден көрінеді және оны кез келген түйінден Linux-тың стандартты командаларын (ps, kill, renice және т.б.) қолдана отырып басқаруға болады. Linux /proc виртуалды файлдық жүйесі барлық түйіндердегі барлық жұмыс істеп тұрған процестерді көрсетеді. Бір процестік кеңістіктің іске асырылуы OSF/1 AD операциялық жүйесі үшін Locus ұсынған VPROC абстракциясы арқылы жүзеге асырылады.
OpenSSI provides a single process space – every process is visible from every node, and can be managed from any node using the normal Linux commands (ps, kill, renice and so on). The Linux /proc virtual filesystem shows all running processes on all nodes. The implementation of the single process space is accomplished using the VPROC abstraction invented by Locus for the OSF/1 AD operating system.
Көші-қон
OpenSSI процестерді жұмыс істеп тұрған күйінде тораптар арасында көшіруге мүмкіндік береді. Көшірілген процестер ашық файлдарға, IPC нысандарына немесе желілік қосылымдарға қол жеткізуді тоқтатпайды. Процестерді қолмен, арнайы OpenSSI migrate(2) жүйелік шақыру арқылы немесе процестің /proc каталогындағы арнайы файлға торап нөмірін жазу арқылы көшіруге болады. Егер пайдаланушы қаласа, процестер кластердегі жүктемені теңестіру мақсатында автоматты түрде де көшірілуі мүмкін. OpenSSI әр тораптың жүктемесін анықтау үшін MOSIX жобасымен әзірленген алгоритмді пайдаланады.
OpenSSI allows migration of running processes between nodes. When running processes are migrated they continue to have access to any open files, IPC objects or network connections. Processes can be manually migrated, either by the process calling the special OpenSSI migrate(2) system call, or by writing a node number to a special file in the processes /proc directory. Processes may also, if the user wants, be automatically migrated in order to balance load across the cluster. OpenSSI uses an algorithm developed by the MOSIX project for determining the load on each node.
Бір тамыр
OpenSSI кластер үшін кез келген түйінден бірдей файлдар мен каталогтарға қол жеткізуді қамтамасыз ететін жалғыз тамыр ұсынады. OpenSSI жалғыз тамырды қамтамасыз ету үшін бірнеше механизмдерді қолданады – CFS (OpenSSI кластерлік файл жүйесі), SAN кластерлік файл жүйелері және желілік файл жүйелерінің параллельді орнатулары. OpenSSI HP TruCluster жүйесінен шабыттанған, кластерге хабарсыз қолданбалар үшін түйінге тән файлдарға қол жеткізуді ашық түрде жүзеге асыруға мүмкіндік беретін контекстке тәуелді символдық сілтеме (CDSL) мүмкіндігін пайдаланады. CDSL кластердегі әр түйіндегі әртүрлі файлдарға сілтеме бере алады.
OpenSSI provides a single root for the cluster from any node the same files and directories are available. OpenSSI uses several mechanisms to provide the single root – CFS (the OpenSSI Cluster File System), SAN cluster filesystems and parallel mounts of network file systems. OpenSSI uses the context dependent symbolic link (CDSL) feature, inspired by HP's TruCluster system, to allow access to node specific files in a manner transparent to non cluster aware applications. A CDSL may point to different files on each node in the cluster.
ҚТЖ
CFS, OpenSSI кластерлік файлдық жүйесі бір түйіндегі нақты файлдық жүйеге түйінаралық ашық қолжеткізуді қамтамасыз етеді. CFS нақты файлдық жүйенің үстіне орналасады және токендік механизмді пайдаланып, әртүрлі түйіндерден кіруді үйлестіреді. Бір түйіннің негізгі файлдық жүйеге физикалық қолжеткізімі бар және ол барлық оқу және жазу операцияларын орындайды. Кез келген уақытта бір түйін негізгі файлдың бір бөлігін көрсететін токенге ие болады, бұл файлдың сол бөлігі иеленуші түйіннің кэшінде сақталғанын білдіреді. Егер басқа түйін сол файл бөлігіне қол жеткізуге тырысса, токен тартылып алынады және кэш мазмұны тартып алушы түйінге көшіріледі. OpenSSI CFS жүзеге асырылуы HP TruCluster қолданған нұсқаға өте ұқсас. CFS сондай-ақ ортақ жад сегменттеріне қолжеткізуді үйлестіру үшін де қолданылады. CFS қатеге төзімді жүйеде ортақ дискілік подсистемаларды (қос портты SCSI немесе SAN) немесе DRBD пайдалану арқылы қолданылуы мүмкін. Егер файлдық жүйеге тікелей қолжеткізуді жүзеге асыратын түйін істен шықса, CFS орнатылымы дискіге тікелей қосылған басқа түйінге көшеді және кластер енді осы түйін арқылы файлдық жүйеге қол жеткізеді.
CFS, the OpenSSI Cluster File System provides transparent inter node access to an underlying real file system on one node. CFS is stacked on top of the real file system and co ordinates access from different nodes using a token mechanism. One node has physical access to the underlying file system and performs all read and write operations. At any one time one node owns a token, representing a part of the underlying file, this implies that that part of the file is in the cache of the owning node. If another node tries to access that part of the file the token is stolen and the cache contents are copied to the stealing node. The OpenSSI CFS implementation is remarkably similar to that used by HP TruCluster. CFS is also used to co ordinate access to shared memory segments. CFS can be used in a fault tolerant system by using shared disk subsystems (dual ported SCSI or SAN), or by using DRBD. If the node that is currently directly accessing the file system crashes then the CFS mount fails over to the other node that is directly connected to the disk and the cluster now accesses the file system via that node.
SAN кластерлі файл жүйелері
OpenSSI өзінің түбірлік бөлімі үшін SAN негізіндегі кластерленген файлдық жүйелерді пайдалана алады, егер олар POSIX-қа үйлесімді файлдық жүйе интерфейсін ұсынса. Lustre және Global File System да сынақтан өтті. Кластерленген файлдық жүйеде әрбір түйін файлдық жүйені параллель түрде орнатады және файлдарға қол жеткізу түйінден тікелей файлдық жүйеге жүзеге асырылады.
OpenSSI can use SAN based clustered file systems for its root provided they provide a POSIX compatible file system interface. Lustre and Global File System have been tested, too. With a clustered file system, each node mounts the file system in parallel and access to the files goes directly from the node to the file system.
NFS
OpenSSI әрбір түйінде NFS файлдық жүйелерді параллельді түрде орнатады. Әрбір түйін NFS серверіне тікелей қол жеткізеді.
OpenSSI mounts NFS files systems in parallel on each node. Every node accesses the NFS server directly.
Бір I/O кеңістігі
OpenSSI жүйедегі барлық I/O құрылғыларына кластерлік деңгейде қол жеткізуді қамтамасыз етеді, бірақ кейбір шектеулер бар – түйін басқа түйінден блок құрылғысын орната алмайды. /dev каталогын басқару үшін udev құрылғы менеджері қолданылады. Әрбір түйін /dev каталогының ішіндегі тиісті құрылғы түйіндерін жасайды, мысалы, 1-түйін үшін /dev/1, 2-түйін үшін /dev/2 және т.с.с. үшін udev-тің жеке данасын іске қосады.
OpenSSI provides cluster wide access to all I/O devices on the system, with some limitations it is not possible for a node to mount a block device from another node. The udev device manager is used to manage the /dev directory. Each node runs its own copy of udev to create the appropriate device nodes in a subdirectory of /dev, /dev/1 for node 1, /dev/2 for node 2 and so on.
Бірыңғай IPC кеңістігі
OpenSSI барлық стандартты Linux процестер арасындағы байланыс механизмдеріне, ортақ жадыға, семафорларға, SYSV хабарлама кезектеріне, құбырларға және Unix домендік сокеттеріне түйінаралық қолжетімділікті қамтамасыз етеді. Кластерлік ортақ жадыны – үлестірілген ортақ жадыны – іске асыру үшін OpenSSI CFS токен жүйесін пайдаланады. Кез келген сәтте жад сегменті бір немесе бірнеше түйінмен оқылуы мүмкін, немесе бір түйінмен жазылуы мүмкін. Егер жазу құқығы жоқ түйін жазуға тырысса, онда бұл сегмент басқа барлық түйіндер үшін оқылмайтын, ал ағымдағы түйін үшін жазылатын болып белгіленеді. Егер оқу құқығы жоқ түйін сегментті оқуға тырысса, онда ағымдағы мән жарамды болған түйінден көшіріледі және егер ол жазылатын болса, оқуға жарамды деп белгіленеді.
OpenSSI provides internode access to all the standard Linux inter process communication mechanisms, shared memory, semaphores, SYSV message queues, pipes and Unix domain sockets. In order to implement cluster wide shared memory – distributed shared memory – OpenSSI uses the CFS token system. At any one time a memory segment may be readable by one or more nodes, or writable by one node. If a node without write access to a segment tries to write then the segment is marked unreadable on all other nodes and writable on the current node. If a node without read access tries to read a segment then the current value is copied from a node where it was valid and if it was writable it is marked readable.
Кластердің IP-адресі
OpenSSI қатеге төзімді, жүктеме теңгерілген IP қызметтерін ұсыну үшін LVS-ті пайдаланады. Келіп түсетін желілік қосылымдар директорлық түйін арқылы қабылданады, ол оларды ең аз жүктелген серверлік түйінге қайта бағыттайды. (Түйін директорлық және серверлік рөлдерді бірдей атқара алады). Директорлық түйін істен шыққан жағдайда, басқа директорлық түйін оның орнына өтеді және жүйе келіп түсетін қосылымдарды қабылдауды жалғастырады.
OpenSSI uses LVS to provide fault tolerant load balanced IP services. Inbound network connections are received by a director node which redirects them to the least loaded server node. (A node may be both a director and server). In the event of director node failure another director node takes over and the system continues to accept inbound connections.
Тарих
OpenSSI-нің тарихы 1980 жылдардың басына дейін жетеді, осы кезде UCLA-да LOCUS үлестірілген операциялық жүйесі әзірленді. ″LOCUS″ жасаған топ 1982 жылы Locus Computing Corporation құрды және одан туындаған технологияның бірнеше нұсқаларын әртүрлі атаулармен шығарды. 1990 жылдардың ортасында бұл жұмыс Tandem Computers компаниясында UnixWare NonStop Clusters өнімімен аяқталды, ол 1995 жылға қарай бұрынғы Locus CC командасын және технологияға құқықтарды иеленді. Compaq 1997 жылы Tandem Computers компаниясын сатып алды. NonStop кластерлері Santa Cruz Operation компаниясымен UnixWare-ге қосымша ретінде коммерцияландырылды. SCO Group өнімді сатуды тоқтатқаннан кейін, әзірлеушілер (Tandem сатып алу арқылы келген және қазір Compaq-та жұмыс істейтін) ″NonStop Clusters″ кодын Linux-қа көшірді және 2001 жылы, енді OpenSSI деп аталған, оны ашық код ретінде жариялады. Compaq Hewlett Packard компаниясымен сатып алынғаннан кейін (2002 жылы болған) қызметкерлер дамуды тағы біршама уақыт жалғастырды. Келесі он жылда OpenSSI тәуелсіз үлескерлердің күшімен жақсартылды.
The origins of OpenSSI date back to the early 1980s, when the LOCUS distributed operating system was developed at UCLA. The group that created ″LOCUS″ went on to form the Locus Computing Corporation in 1982, and produced versions of the technology derived from it under several names. In the mid 1990s, this work culminated in the UnixWare NonStop Clusters product at Tandem Computers, which by 1995 took over the team of the former Locus CC and rights to the technology. Compaq would purchase Tandem Computers in 1997. The NonStop Clusters were commercialized by Santa Cruz Operation as an add on for UnixWare. When SCO Group stopped selling the product, the developers (brought in by the Tandem acquisition and now working at Compaq) ported the ″NonStop Clusters″ code to Linux and in 2001, now called OpenSSI, released it as open source. Employees continued development for some time after Compaq being acquired by Hewlett Packard (which happened in 2002). Over the next decade OpenSSI was enhanced by independent contributors.