วันอาทิตย์ที่ 23 พฤศจิกายน พ.ศ. 2557

WebSphere App Server 8.5 มีอะไรน่าใช้บ้าง

ตามธรรมเนียม กันลืม หลังเล่นหรือ update อะไรมาแล้ว ก็มาเล่าสู่กันฟัง
*** คำเตือน ใครยังไม่รู้จัก Application Server หรือไม่รู้จักพวก JBoss, GlassFish, Web Logic ควรหาข้อมูล เกี่ยวกับการทำงานของ App Server ก่อน อ่านบทความนี้แล้วงง ไม่รู้ด้วยนะ ^_^ ***

ตอนนี้ว่ากันด้วย Application Server ที่ใช้ในงาน Enterprise ของค่าย IBM ครับ ซึ่งหา tutorial online ค่อนข้างยาก แถมใน IBM RED Book ก็ไม่ค่อยมีเนื้อหาเชิงปฏิบัติเท่าไหร่

ถ้าจะเริ่มเล่นต้องสมัคร IBM ID ก่อน (ฟรี)  แล้วจะสามารถเข้าไปดาวน์โหลด trial version มาลองเล่นได้ ซึ่งมีหลายรุ่นหลายขนาด ตามวัตถุประสงค์การใช้งาน ดังนี้:

App Server Edition (รุ่นสำหรับติดตั้ง)

สามารถดาวน์โหลดได้ที่ link นี้ครับ (IBM WebSphere Application Server)
Liberty   - ตัวเล็กสุด เหมาะสำหรับนักพัฒนา ลงและควบคุมผ่าน eclipse ได้ (มีบน Mac ด้วย)
Express  - สำหรับนักพัฒนาและธุรกิจขนาดเล็ก
Base       - สำหรับการลงแบบ Single Server รองรับ Application Service หลายรูปแบบ
Network Deployment (ND)  - เหมาะกับองค์กรขนาดใหญ่ สามารถทำ Cluster ได้ (pack นี้แลจะใหญ่สุดละ)

รายละเอียดเปรียบเทียบแต่ละรุ่นลองดูตาม link นี้ครับ  เปรียบเทียบ Web Sphere Edition


การติดตั้ง ทำได้หลายรูปแบบสรุปๆ ดังนี้

1. ติดตั้งผ่านผ่าน Installation Manager (IM) โดยดาวน์โหลดตรงจาก Internet
     ข้อดี : ได้ของที่ update เวลามี fix หรือ patch จะมีตัวเลือกให้
     ข้อเสีย: ถ้าเน็ตไม่นิ่ง อาจทำให้เสียเวลา และต้องลงซ่อมหลายรอบ
2. ติดตั้งผ่าน Local Repository (ดาวน์โหลดตัวติดตั้งมาเก็บไว้ก่อนแล้วค่อยติดตั้งทีเดียว)
     ข้อดี:  เร็ว ไม่ต้องเสียเวลารอ ดาวน์โหลดจาก Internet (ไม่ต้องลุ้นมาก)
     ข้อเสีย: ต้องการพื้นที่ในการเก็บไฟล์ (ถ้าจะลงให้ครบทุกอย่างก็ประมาณ 12GB เป็นอย่างน้อย)
  ** ปกติตัว IM ที่ดาวน์โหลดมาจะมีปัญหา Error หลัง login IBM ID หรือกด cancel เนื่องจากไม่สามารถต่อ online repository ปลายทางได้ ให้ไปแก้ไขไฟล์ install.xml โดย comment tag <feature> ทั้งหมดทิ้งก่อน (ใช้ <!--   --> ในการ comment) แล้วค่อย add repository ใหม่ของเราเองที่ File-> Preference-> Repository ตามรูป**

การเริ่มสร้าง Server (ใน Web Sphere จะเรียก Profile)
การสร้าง Profile จำเป็นต้องรู้โครงสร้างเบื้องต้นที่ WebSphere เรียกก่อน ประกอบด้วย
Cell   - ถือเป็น Logical view ใหญ่สุดเอาไว้ครอบ Node สำหรับจัด Cluster
Node - จะมองว่าเป็น 1 Hardware Server ก็ได้ แต่ไม่จำเป็นเสมอไป (บางรูปแบบก็มองเป็น Logical ได้เหมือนกัน) โดยใน 1 Node สามารถมีได้หลาย Server และ ในเครื่อง 1 เครื่อง อาจมีได้หลาย Node (แต่ถ้าให้ง่ายจะเป็น 1 เครื่องต่อ 1 Node)
Server - จัดเป็นหน่วยเล็กสุด โดยถ้ามองง่ายๆ 1 Server ก็จะมีบริการได้หลายบริการ หรือลงได้หลาย App นั่นเอง


โดยรูปแบบของ Profile หลักๆ สามารถสรุปได้ดังนี้
Application Server - ถือเป็นตัวพื้นฐาน (Single Server) โดยการติดตั้งแบบนี้จะเหมาะกับการใช้งานในลักษณะแยกหน่วยงาน และแยกกันบริหารจัดการ เช่น Server ของแต่ละแผนก หรือ Server ของแต่ละบริการ

Deployment Manager - ใช้ในการจัดการกลุ่มของ Cluster โดยจะเหมาะกับ Application ที่ต้องการความน่าเชื่อถือสูง (High Availability) คือให้บริการได้ตลอด 7x24 โดยจะมีพวก Node Agent คอยช่วยในการ deploy application และมีหน้า console ในการจัดการ stop/start กลุ่มของ server ที่อยู่ใน cluster รวมทั้งการใช้งานร่วมกับ IBM HTTP Server เพื่อทำ load balancing สำหรับจัดการเรื่อง load และช่วยดูแลเรื่อง fail over (กรณีที่มี server ตัวใดตัวหนึ่งตาย ตัวที่เหลือจะมาให้บริการแทน พร้อมทั้งโอนข้อมูลที่อยู่ใน session มาให้ด้วย ทำให้ผู้ใช้ไม่รู้สึกว่า server มีปัญหา สามารถทำงานได้ต่อเนื่อง)

Administrative Agent - ใช้สำหรับจัดการกลุ่มของ Single Server (ที่ไม่ใช่ model ของ cluster) เพื่อให้ง่ายในการเข้าถึงโดย admin สามารถใช้งานและเลือกจัดการ server ที่ลงทะเบียนกับ Administrative Agent ได้ในหน้าเดียว (ไม่ต้องนั่งจำ port ของแต่ละ console) ถ้าจะให้ได้ประโยชน์สูงสุดควรใช้งานคู่กับ Job Manager จะทำให้สามารถทำให้งาน admin server หลายๆตัว กลายเป็นเรื่องง่ายไปเลย


Job Manager - ใช้ประโยชน์ในการตั้งเวลาในการ ทำงานต่างๆ เช่น การรันสคริปต์ การก๊อปปี้ไฟล์ การสั่งติดตั้ง หรือถอนการติดตั้งแอพ โดยใช้ได้ทั้งกับ Deployment Manager และ Administrative Agent

สรุปง่ายๆ : 
ถ้าต้องคุม Single Server หลายตัวใช้ App Server + Admin Agent + Job Manager
ถ้าเป็นงาน Cluster ใช้ Deployment Manager + Job Manger



เครื่องมืออื่นๆ และสิ่งที่น่าใช้ใน Web Sphere Application Server
Liberty Profile - ขนาดเล็ก ติดตั้งง่าย เหมาะกับงาน Dev มากกกกก


Static vs Dynamic Cluster - เราสามารถจัดการให้ server ที่เพิ่มเข้ามาใหม่เข้ามาอยู่ในกลุ่ม cluster ได้แบบ dynamic (อัตโนมัติ) รวมถึงการจัดการพวก dynamic workload ด้วย

Health Management - ช่วยในการ Monitor และตั้งการเก็บ log หรือรัน script สำหรับรายงานปัญหา
IBM Support Assistant (ISA) - ใช้เปิดไฟล์ Log และไฟล์ binary อื่นๆ ทั้งช่วยในการวิเคราะห์ปัญหาที่เกิดขึ้นกับ Server (ดาวน์โหลดโปรแกรม ISA จาก IBM)
Package ที่ควรลงเพิ่ม - IHS (IBM HTTP Server) สำหรับทำ load balancer , WebSphere Plug-in ดูแลเรื่อง workload แลใช้คู่กับ http server ในการทำ balancer , Web Sphere Customize Tools
wsadmin tool - ใช้ในการบริหารจัดการ Server ผ่าน command-line ซึ่งใช้ภาษา Jython (Java + Python) เป็นภาษาหลัก
Apache JMeter - ใช้ช่วยทำสอบและลองยิง Server (คู่มือการใช้งาน JMeter)


*** ใครสนใจเรื่อง IBM WebSphere Administrator ก็ติดต่อสอบถามมาได้ครับ ยินดีให้คำปรึกษา ***
สอบถาม โทร:  ศูนย์แปดหนึ่ง สี่เก้าสี่ สามสองหนึ่งหก
                         vittayasak แอดจีเมล์ดอทคอม


ไม่มีความคิดเห็น:

แสดงความคิดเห็น