Grid Resource Management and Sch

Document Sample
Grid Resource Management and Sch Powered By Docstoc
					                              Grid Resource Management and Scheduling
        Grid scheduling เป็ นส่ วนในการจัดการ Resource ต่างๆ เพื่อรองรับการใช้งานที่เข้ามาซึ่ งการ scheduling
ใน Grid รองรับ Algorithm หลายรู ปแบบ เช่น First Come First Serve เป็ นต้น ซึ่ ง Grid scheduling
    ้
มีขอจากัดในการใช้งานหลายอย่างเช่น ถ้ามีการร้องขอการใช้งานมาหลายๆคาร้องขอ ไม่จาเป็ นที่ Grid scheduling
จะจัดสรรทรัพยากรให้ได้ดีที่สุดในทุกๆคาร้องขอ เป็ นต้น ซึ่ งใน Grid System มีการใช้งาน Scheduling 3 รู ปแบบ
คือ

                                                                                        ่
    1. Centralized Scheduling เป็ นรู ปแบบในการจัดการที่มีศูนย์กลางการจัดการอยูที่ Scheduler
                                ้ั
       เพียงตัวเดียวซึ่ งเป็ นผูจดสรรทรัพยากรแต่เพียงผูเ้ ดียว ว่า Job ที่เข้ามาจะถูกจัดสรรไปที่ทรัพยากรไหน
       ข้อดีของการจัดการแบบนี้คือ Scheduler จะรู ้ทุกอย่างทาให้สามารถจัดสรรทรัพยากรให้กบ Job       ั
       ที่ร้องขอเข้ามาได้อย่างดีที่สุด ข้อเสี ย คือถ้ามีการจะต่อเพิ่มระบบจะทาได้ยาก อีกทั้งยังสามารถเกิดกรณี
                          ้
       Bottle neck ได้ถามี Job ร้องขอเข้ามาเยอะๆ และถ้า Scheduler
       หยุดการทางานจะทาให้ระบบนี้หยุดการทางานทั้งหมดทันที เป็ นต้น ซึ่ ง Centralized Scheduling
                                                                                          ่
       รู ปแบบการจัดการนี้ จะเหมาะกับการใช้งานกับ Grid System ขนาดเล็ก และ อยูใน Zone เดียวกัน
    2. Distributed Scheduling เป็ นรู ปแบบการจัดการที่ใช้ Local Schedulers ในการจัดการทรัพยากร
                   ่ ้                          ่
       ซึ่ งจะมีอยูดวยการหลายตัวกระจายอยูแต่ละที่เพื่อรองรับการใช้งานทั้งหมด การจัดการรู ปแบบนี้มีขอดีที่ ้
       สามารถต่อเพิ่มระบบได้ง่าย ไม่เกิดปัญหา Bottle neck เนื่องจากมีตวจัดการหลายตัว
                                                                               ั
                                                                                      ้
       และข้อเสี ยของการจัดการรู ปแบบนี้คือ Local Schedulers แต่ละตัวจะไม่มีขอมูลทั้งหมด
                                                                ั
       ทาให้อาจจะไม่สามารถจัดสรรทรัพยากรที่ดีที่สุดให้กบ Job ที่ร้องขอเข้ามาได้
    3. Hierarchical Scheduling เป็ นการจัดการเป็ นลาดับชั้น คือเมื่อ Job ร้องขอเข้ามาจะส่ งมาที่ Central
       Scheduler ก่อนจากนั้น Central Scheduler จะทาการเลือก Local Scheduler เพื่อส่ ง Job ที่ได้รับมาไปให้
                                                     ้
       Local Scheduler นั้นจัดการให้ โดยมันมีขอเสี ยที่สามารถเกิดปั ญหา Bottle neck ที่ Central Scheduler ได้

ขั้นตอนการทางานของ Scheduling

    1. Resource Discovery เป็ นการค้นหา Resource ที่เข้าใช้งานได้ในระบบโดยจะมีการค้นหา 2 รู ปแบบ
       - The Pull Model คือ ทุกๆ Resource จะส่ งสถานะของตนมาเก็บไว้ที่ Scheduler ก่อนเมื่อมี Job เข้ามา
                                         ั
           Scheduler สามารถจัดสรรได้ทนทีจากข้อมูลที่เก็บไว้
       - The Push Model คือ ทุกๆ Resource จะส่ งสถานะของตนมาให้ Scheduler เมื่อถึงเงื่อนไขที่ Scheduler
           กาหนดเช่นให้ส่งสถานะมาทุกๆ 2 ชัวโมง เป็ นต้น
                                               ่
                                                         ้
    2. Resource Selection เป็ นการเลือก Resource ภายใต้ขอจัดกัดของ Job ที่ร้องขอเข้ามา
    3. Schedule generation เป็ นการเลือก Job จาก Queue เพื่อนาไป Job นั้นไปทางาน
                                                            ั
    4. Job execution เป็ นการจัดการนา Job เข้า Resource ที่จดสรรไว้ให้ เพื่อทางาน Job นั้น
                                                ่
ใน Grid System มี การใช้งาน Local Schedulers อยูหลายตัวคือ Condor, Sun Grid Engine, Portable Batch System
เป็ นต้น

                                     Grid Monitoring Architecture (GMA)
          Grid monitoring เป็ นส่ วนที่ให้บริ การในการเฝ้ าดูผลของแต่ละเหตุการณ์ที่เกิดขึ้นในระบบ โดย Grid
monitoring สามารถใช้ในการ ตรวจหาข้อผิดพลาดที่เกิดขึ้น เพื่อจะสามารถเข้าแก้ไขก่อนที่จะส่ งผลเสี ยต่อระบบ,
ใช้ในการเพิ่มประสิ ทธิ ภาพในการทานายผลที่จะเกิดขึ้นในอนาคต และช่วยในการทางานร่ วมกับ scheduling
เป็ นต้น ซึ่ งใน        Grid monitoring Architecture จะประกอบด้วย 3 ส่ วนประกอบดังนี้

    1. Directory Service ช่วยในการค้นหาข้อมูล
    2. Producer ทาหน้าที่ในการส่ ง Data monitoring ให้ Consumer
                                        ้
    3. Consumer ทาหน้าที่ในการเรี ยกดูขอมูล

                                                                 ั
         ในการส่ งข้อมูลระหว่าง Producer กับ Consumer จะมีตวกลางคือ Producer Interface และ Consumer
Interface ทาหน้าที่ในการ forward, broadcast หรื อ filter ข้อมูล เป็ นต้น

        Monitoring data มีความสัมพันธ์ 2 แบบ คือแบบมีเวลาเกี่ยวข้อง จะมีการใช้ Time-stamp
ใช้ในการบอกว่าข้อมูลนั้นมีความใหม่ขนาดไหน กับแบบไม่มีเวลาเกี่ยวข้องจะประกอบด้วยข้อมูลแบบ Static

       การส่ งถ่ายของข้อมูลมี 2 แบบ คือ แบบ Direct จะทาการส่ งข้อมูลกันโดยตรงระหว่าง Producer กับ
                                                                  ั
Consumer กับแบบ Indirect จะทาการส่ งข้อมูลโดยผ่านตัวกลางที่จะใช้พกข้อมูลก่อนส่ งไปให้อีกฝ่ าย

        Monitoring Categories จะมีอยู่ดวยกัน 3 แบบคือ Static Monitoring, Dynamic Monitoring และ Workflow
                                       ้
Monitoring

สิ่ งที่ระบบ Grid Monitoring ควรมี

         -   มันต้อง Scalable คือสามารถขยายได้ และถ้าเกิดล่มส่ วนใดส่ วนหนึ่ง ระบบทั้งระบบต้องไม่ล่มตาม
         -   Cross-API Monitoring สามารถเชื่อมต่อกับ ข้อมูลที่ถูกเก็บไว้จาก Software พิเศษได้
         -                                                  ั
             Homogeneous data presentation ข้อมูลที่ทาให้ชดเจนและแสดงในเส้นทางมาตรฐานสาหรับ Client
         -                                    ้
             การค้นหาข้อมูลสามารถค้นหาได้ดวยเวลาที่รวดเร็ ว
         -   Run-time extensibility สามารถทาการเปลี่ยนได้อย่างรวดเร็ วเมื่อมี Resource เข้าและออกในขณะที่
             Run อยู่
         -   สามารถกรองข้อมูลที่มาจากหลายๆเส้นทางได้
         -   ใช้ Protocols ทีมีมาตรฐาน
         -   สนับสนุนมาตรฐาน Security ที่ระบบต้องการ
         -                  ้
             เครื่ องมือที่ตองการใช้งาน สามารถถูกติดตั้ง แยกจากส่ วนประกอบอื่นๆได้
ใน Grid System มี การใช้งาน Grid monitoring Protocol ดังนี้ MDS4 ซึ่ งถูกใช้ใน Globus Toolkits4 และ Ganglia
เป็ นต้น

                                        Grid Programming Model

        Programming Model เป็ นเส้นทางในการแสดงออก Applications หรื อ Algorithms สาหรับ Computer
System โดยมันสามารถ Implement ได้หลายแบบ เช่น Programming language, Library API, Tool or application
with extensible functionality, Problem solving environment, Portal เป็ นต้น Programming Model จะรวมถึง
Programming language, Programming environment, Compilers, Libraries, Runtime system, User interface,
                                                          ่ ้
Communication system และ I/O ซึ่ ง Programming Model มีอยูดวยกันหลายแบบ เนื่องจาก ในแต่ละ Programming
Model จะไม่เหมือนกัน มีความยากง่ายต่างกัน และมีประสิ ทธิ ภาพต่างกัน
                         ่                                                                       ้
โดยมีเป้ าเหมายสูงสุ ดอยูที่การเพิ่มประสิ ทธิ ภาพหรื อความสามารถของ Programming ชนิดของ Model มีดวยกัน 2
                                                         ้ ั
แบบ 1) Abstract high level ง่ายต่อการสร้างโปรแกรมสาหรับผูพฒนา แต่ยากต่อการ Compile Code
                                                                                  ้ ั
ที่มีประสิ ทธิ ภาพ และ 2) Low level models ซึ่ งจะง่ายต่อการเขียน Code แต่ยากต่อผูพฒนาโปรแกรม

        Grid Programming Model มีการขยายของ Parallel และ Distributed Programming
โดยมันมีความยืดหยุ่นและสามารถประกอบด้วยหลาย Resource ได้ และมันจะต้องมีการติดต่อกันระหว่าง Remote
service, Data sources และ Hardware resources อีกทั้งมันยังซ่ อนความซับซ้อนและความแตกต่างกันด้วย

        การสร้าง Service ใหม่ จะใช้ Middleware ช่วยสนับสนุน การพัฒนาของส่ วนประกอบที่เลือกใช้ Web
service interfaces โดย Middleware จัดหา Web service container สาหรับ ใช้งานและ จัดการ Services
                                                              ู
ซึ่ งเขียนด้วยภาษา JAVA ถูกใช้มากที่สุดเนื่ องจากมี Class ที่ถกเขียนมาแล้วพร้อมใช้บริ การมากมาย, C
เป็ นภาษาที่มีประสิ ทธิ ภาพมากที่สุด, Python เป็ นภาษาที่สวยงามที่สุด Programmer สามารถเขียน Services
       ่                                                       ้
ตั้งอยูบน WS โดย เฉพาะกับ WSDL, SOAP, WS-security เป็ นต้นโดยผูใช้อาจจะต้องเขียน Code
                                                          ั        ู้
ใหม่ข้ ึนมาเองบ้างเนื่องจาก Services และ libraries ไม่ได้จดหามาให้ผใช้ได้ใช้งาน

                      ั
        ซึ่ งในปั จจุบนมีการใช้งาน Grid Programming Models หลายแบบ ดังนี้ Share State Model, Message
Passing Model, RPC and RMI Model, Hybrid Models , Peer-to-peer, Grid APIs, Application Frameworks,
                                                                                          ่
Component Models, Portals, Web Services Models และ Coordination Models โดยไม่สามารถบอกได้วา Model
                                            ้                       ่ ั
ไหนเป็ น Model ที่ดีที่สุด แต่ละ Model จะมีขอดีของมัน ซึ่ งจะขึ้นอยูกบสถานการณ์ที่จะนามันไปใช้
                                        Grid Security Infrastructure

         หลักความปลอดภัยมี 3 หลักสาคัญดังนี้ 1) Privacy ข้อมูลต้องเป็ นความลับ 2) Integrity
ข้อมูลต้องถูกต้องไม่ถูกแก้ไข 3) Authentication ไม่สามารถปฏิเสธความรับผิดชอบได้

           Cryptography เป็ นส่ วนสาคัญในการจัดหาหลักความปลอดภัยทั้ง 3 โดยรู ปแบบหลักของการ
                   ้                                     ุ
Cryptography มีดวยกัน 2 แบบ คือแบบ Symmetric key (ใช้กญแจเดียวกันทั้งตอนรับและตอนส่ ง) มี Algorithm
                                                                     ุ
ที่ใช้คือ Data Encryption Standard (DES) และ แบบ Asymmetric key (ใช้กญแจคนละตัวกันในการรับและการส่ ง)
มี Algorithm ที่ใช้คือ Rivest Shamir and Adlemen (RSA)

        การ Authentication ใน Public Key Cryptography จะใช้การทา Digital Signature ทาโดยผูส่งทาการ
                                                                                          ้
                                                       ้
เซ็นลายเซ็นด้วย Private Key ของตนลง ข้อมูลที่จะส่ ง ผูรับสามารถถอดลายเซ็นด้วย Public Key
ของผูส่งถ้าลายเซ็นถูกก็จะถือว่าข้อมูลถูกส่ งมาจากผูส่งจริ งๆ
     ้                                             ้

                             ่ ้
           Certificates มีอยูดวยกัน 3 รู ปแบบ 1) Public Key Certificates ใช้เป็ นใบรับรองว่า Public Key
อันนี้เป็ นของเจ้าของมันจริ งๆ 2) Certificate Authority (CA)
                                    ้
ทาหน้าที่ในการรับรองสิ ทธิ หรื อผูใช้หรื อความเป็ นเจ้าของ Public Key 3) Proxy Certificate
                         ่ ้                      ้                          ั ่         ั
ใช้เป็ นใบรับรองสิ ทธิ วาผูได้รับมีสิทธิ เท่ากับผูให้ โดย Certificate ที่ใช้กนอยูในปัจจุบนจะใช้มาตรฐาน X.509
Certificate

                                                                                     ้
          ใน Grid System จะใช้ระบบ GSI เป็ นมาตรฐานโดยเน้นเรื่ องการให้สิทธิ ดวยการ Authentication ด้วย
Public Key Infrastructure (PKI) โดยใช้มาตรฐาน X.509 ในการให้บริ การ โดยมีการใช้การเข้ารหัส อยู่ 2 รู ปแบบ
คือ Transport level คือจะทาการเข้ารหัสทั้งช่องทางการสื่ อสารและ Message level
ที่จะทาการเข้ารหัสเฉพาะข้อมูลที่ส่งหากัน ซึ่ งในระบบ Grid จะต้องมีการ Delegation
                   ั ้
เพื่อมอบสิ ทธิ ให้กบผูใช้ที่เราต้องการให้มีสิทธิ เหมือนเรา โดยจะทาการมอบ เป็ น Certificate โดยกากับด้วย
Signature ของเราเพื่อเป็ นการรับรองว่า เป็ น Certificate ของเราจริ งๆ ซึ่ งมันจะมีการจากัดระยะเวลาการใช้งาน
                                                                ้             ้ ้
(หมดอายุ) และสิ ทธิ ของการใช้งานว่าสามารถทางานอะไรได้บาง โดยเมื่อผูใช้ตองการเข้าใช้งานระบบ
ต้องทาการร้องขอ Proxy Certificate เพื่อทา Single Sign-on คือ
                                               ้              ั
การเข้าถึงการใช้บริ การของระบบทั้งหมดได้ดวยการพิสูจน์ตวตนเพียงครั้งเดียว โดยเป็ นหนึ่ งในส่ วนประกอบของ
                    ั                                                                       ั
"ระบบการพิสูจน์ตวตน" โดยมีการร้องขอ Proxy Certificate ซึ่ งเป็ นการขอใบรับรองการมีตวตนของ Proxy
                       ั                                           ้        ้
เพื่อใช้ในการพิสูจน์ตวตนกับทางระบบทุกครั้งโดยอัตโนมัติโดยผูใช้ไม่ตองทาการยืนยันตัวตนกับทางระบบด้วยต
นเอง

       Grid System จะมีการใช้งานการยืนยันตัวตนทั้งสองฝ่ ายด้วย Secure Sockets Layer (SSL)
                                                                                             ่ ้
โดยจะใช้การตรวจเช็คลายเซ็นของ CA ของทั้ง 2 ว่าตรงกันหรื อไม่ ใน Grid Authorization System อยูดวยกัน 2
แบบ คือ Simple authorization ซึ่ งมีการใช้งานด้วย GridMap และ VO authorization ซึ่ งมีการใช้งานด้วย
Community Authorization Service (CAS) และ Virtual Organization Membership Service (VOM)



                                                  Data Management

                                                                                             ้
         Data Management ใน Grid System ใช้ในการขนส่ ง File หรื อ Directory ระหว่างผูใช้ และ Resource ซึ่ ง
Data Management ควรจะมี Security, Transfer protocol, Class and object hierarchies to support convenient
programming, Integration with component technologies, Visualization และ Quality of Service
ซึ่ งในระบบนี้มีเครื่ องมือที่ใช้ในการ Data access, Transfer และ Integrate ดังนี้ GridFTP, RFT และ OGSA-DAI

      GridFTP เป็ น Protocol ที่ให้บริ การ FTP (File Transfer Protocol) ซึ่ งมันจะทาการจัดหา
ความปลอดภัยและความถูกต้องของการขนส่ งข้อมูล โดยที่ GridFTP ควรมีคุณสมบัติดงนี้      ั

         - Security จะใช้งานในระบบ GSI, Single Sign On และ Delegation
         - Performance มีหลาย Mechanism คือ ต้องสามารถใช้ Channel ซ้ าได้ สามารถส่ ง ข้อมูลแบบ Parallel
           ได้ใช้การควบคุมด้วย Pipelining
         - Usability สนับสนุนการขนส่ งทั้งแบบ ระหว่าง Client - Server และแบบ Server – Server

 GridFTP มีการส่ งข้อมูลหลายแบบ ดังนี้ Second-party transfer, Third-party transfer, Parallel transfer และ Striped
transfer

         Reliable File Transfer (RFT) มีการใช้งานใน Globus Toolkit เป็ นบริ การ WSRF ใช้สาหรับขนส่ ง File
          ้
ระหว่าง ผูใช้ กับ Resource RFT มีการใช้ GridFTP Server เป็ น Third-party transfer โดย RFT
                                                                        ่ ้
ใช้เก็บสถานะของการขนส่ งไว้ในฐานข้อมูล โดยที่ RFT มีการให้บริ การอยูดวยกัน 2 แบบ คือ RFT Factory
Service (RFT-FS) ใช้ในการสร้าง Instance ของ RFT Service (RFT-S) และ RFT Service (RFT-S)
ใช้ในการจัดการกับ Resource

          OGSA-DAI ใช้แก้ปัญหาการกระจายการจัดการข้อมูล ซึ่ งมันเป็ น Middleware technology ใช้สาหรับ
ผสมผสาน ข้อมูลจากหลายๆที่ เช่น DB, XML DB และ file system บนระบบ Grid คุณลักษณะที่มีใน OGSA-DAI
   ั                                                                                           ้ ั
มีดงนี้ Data access, Data transformation, Data integration และ Data delivery OGSA-DAI มีขอดีดงนี้
หลีกเลี่ยงการสื่ อสารที่ไม่จาเป็ นระหว่าง Client และ Server หลีกเลี่ยงการเคลื่อนย้ายข้อมูลที่ไม่จาเป็ น
หลีกเลี่ยงการขยาย Framework ที่การทางานใหม่ๆสามารถถูกทาให้มีผลขึ้นมาได้
สนับสนุนการใช้งานได้จากหลายๆภาษา และสนับสนุนหลายๆ Model OGSA-DAI มีการเชื่อมต่อดังนี้
GDSPortType สนับสนุนการผสมผสานข้อมูล, GridDataPerform จัดหาวิธีสาหรับ Access
ข้อมูลและเรี ยกข้อมูลคืนมา และ GridDataTransport สนับสนุนการขนส่ งข้อมูลระหว่าง OGSA-DAI service และ
ระหว่าง OGSA-DAI client และ service ข้อมูลสามารถ Push หรื อ Pull ก็ได้

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:31
posted:2/25/2012
language:Thai
pages:6