เปิดบริการเครื่องคอมพิวเตอร์บน AWS เตรียมไว้สำหรับเล่น Hadoop กัน

Posted on Posted in Big Data

        ตัวบริการหนึ่งของ AWS ที่เยี่ยมมากๆสำหรับการใช้เป็น Environment สำหรับการฝึก Big Data คือ  EC2 บทความนี้เราจะมาเรียนรู้การบริการ EC2  การสร้าง Virtual Server แบบ Linux OS  สำหรับใช้ติดตั้ง Hadoop และ ทบทวนคำสั่งของ Linux ที่จำเป็นสัก 2-3 คำสั่ง    โดยทั้งหมดจากนี้เราจะหาคำตอบและวิธีการเพื่อให้มี Environment สำหรับการฝึกปฏิบัติ Big Data ในประเด็นต่างๆเหล่านี้กัน

  1. EC2 คืออะไร
  2. ฟังก์ชั่นสำคัญของ EC2 สำหรับสร้าง Virtual Server (VS) และ การเชื่อมต่อกับ VS ของ AWS
  3. ขั้นตอนสร้าง VS ของ EC2 ทำอย่างไร
  4. การเชื่อมต่อ Terminal จากเครื่องคอมพิวเตอร์ปฏิบัติงานไปยัง Virtual Server ของ EC2 ทำอย่างไร
  5. ทดสอบการใช้งานคำสั่ง Linux พื้นฐาน

การเริ่มต้นเข้าใช้งาน EC2

      หลังจาก Loin เข้ามาแล้วสิ่งที่เราจะเจอคือหน้า AWS Service Panel ตามรูปที่ 1 ซึ่งจะมีหลาย Service ให้เราเลือกใช้  โดยจะแบ่งหมวดหมู่ต่างๆ แต่ตัวหลักๆที่เราจะเลือกใช้งานสำหรับการฝึกปฏิบัติ Big Data คือ  Computer , Storage & Content Delivery , Analytics และ ถ้าหากหลงทางยังหน้าอื่นๆแล้วต้องการกลับมาที่ Service Panel ให้คลิกทีรูปกล่องสีส้มด้านมุมซ้ายบน

ECM-Welcome-1

รูปที่ 1

EC2 คืออะไร

      EC2 เป็น Cloud Service แบบ Infrastructure as a Service (IaaS) ที่ให้เราเลือกสร้างระบบปฏิบัติการได้ทั้ง Windows Platform หรือ Linux Platform  โดยที่สามารถปรับ เพิ่ม-ลด คุณสมบัติของเครื่องได้ ทั้ง CUP , Memory , Storage  ตามความต้องการใช้งาน   

ฟังก์ชั่นสำคัญของ EC2 สำหรับสร้าง Virtual Server (VS) และ การเชื่อมต่อกับ VS ของ AWS

      หลังที่ไอคอน EC2 ของรูปที่ 1 จะเห็นหน้าจอ EC2 Control Panel  ตามรูปที่ 2  แถบเมนูขวามือคือส่วนกลุ่มฟังก์ชั่นของ EC2 มีส่วนสำคัญๆต่อการสร้างและใช้งาน EC2 ดังนี้

ECM-Dashboard-2

รูปที่ 2

A). EC2 Dashboard: แสดง Control Panel ของ EC2 ที่เป็นหน้าจอ Default หลัก ตามรูปที่ 2  รายละเอียดส่วนนี้จะอธิบายส่วนที่จำเป็นต่อการเริ่มใช้งานเท่านั้น ซึ่งแต่ละส่วนจะทำหน้าที่ดังนี้

  • กลุ่ม Resource แสดงข้อมูลว่าเราสร้าง Resource อะไรไว้ใช้งานบ้างและสถานะการทำงานเป็นอย่างไร โดยมีรายละเอียดส่วนย่อยๆดังนี้
    • Running Instances : แสดงจำนวนเครื่องคอมพิวเตอร์ที่ยังเปิดเครื่องให้บริการอยู่ ส่วนนี้เป็นส่วนสำคัญที่แสดงว่าเราเปิดเครื่องให้ทำงานอยู่หรือไม่   หากเราไม่ได้ใช้งานหรือรันอะไรแบบต่อเนื่องเพื่อความประหยัดเงินควรปิดเครื่องคอมพิวเตอร์ทั้งหมดและตัวเลขจะแสดง 0 Running Instance  การปิดเครื่องใช้เมนูคำสั่ง Stop ของ Instance นั้นๆ
    • Key Pairs : แสดงรายการลายเซ็นอิเล็กทรอนิกส์ที่สร้างไว้ สำหรับการสร้างการเชื่อมต่อแบบปลอดภัย ( Secure ) ผลการสร้าง Key Pair จะได้เป็นไฟล์ นามสกุล .pem เพื่อให้เรานำไปสร้าง Private Key สำหรับการสร้างการเชื่อมต่อมาที่ Computer Server ของ AWS แบบ Secure Shell เพื่อรับส่งข้อมูลหรือสั่งให้ Computer Server ทำงาน โดยโปรแกรมที่เรานิยมใช้งานที่ Telnet Client แบบ Window ก็คือ PuTTY
  • กลุ่ม Create Instance ส่วนนี้จะมีปุ่มคำสั่งสำหรับการสร้าง Virtual Serer ของ EC2 คือ Launch Instance แสดงตามรูป 2

 

B). INSTANCES ส่วนนี้จะเป็น Panel สำหรับควบคุมการทำงานของ Virtual Server และ แสดงรายละเอียด Virtual Server Instance ที่ทำงานตามรูปที่ 3  โดยแบ่งออกเป็น 2 กลุ่มหลัก

Step-13-InstanceRunning

รูปที่ 3

  • กลุ่มการควบคุมการทำงานของ Virtual Server EC2
    • Launch Instances สำหรับการสร้าง Virtual Server
    • Connect : สำหรับการบอกวิธีการเชื่อมต่อกับ Virtual Server โดยแสดงว่า Domain Server ของ Virtual Server ที่ต้องการเชื่อมต่อเข้าใช้งาน
    • Action: สำหรับการควบคุมและตั้งค่าระบบของ Virtual Server โดยส่วนสำคัญหลักคือ Instance State สำหรับ การ Start , Stop , Restart , Terminate เครื่อง Virtual Server ที่เราสร้างไว้
  • กลุ่มแสดงสถานะการทำงานของ Virtual Server ที่เราเลือกดูรายละเอียด

ข้อมูลที่แสดงในส่วนนี้ตามรูปที่ 5 จะแสดงข้อมูลหลักๆ 3 อย่างคือ

  • Domain Name ที่อ้างอิงกับ Virtual Server นี้ ( หมายเลข 1 )
  • คุณสมบัติของเครื่อง Virtual Server นี้ ( หมายเลข 2 )

 

เริ่มสร้าง Virtual Server ของ EC2 กัน

            การสร้าง Virtual Server ของ EC2 โดยทั่วไปเราสามารถทำผ่านหน้าจอของ EC2 Dashboard ตามรูปที่ 2  ได้ โดยคลิกที่ Launch Instance   ระบบจะแสดงขั้นตอนการสร้าง Virtual Server ตามรูปที่ 3 ซึ่งจะเป็น Step 1 ของหน้าจอเริ่มต้นการสร้าง Virtual Server เพื่อให้เราเลือก Machine Image หรือ Computer Server สำหรับ OS แบบต่างๆ เช่น Windows Server , Linux เป็นต้น และ เราสามารถเลือกได้ทั้ง Machine Image แบบฟรี หรือ แบบเสียเงิน โดยถ้าหากต้องการทดลองแบบฟรีให้เลือก [ ]Free tier only

            โจทย์ของการสร้าง Virtual Server นี้เราจะสร้าง Virtual Server แบบ Ubuntu Server 14.04 LTS (HVM), SSD Volume Type 8 GB จำนวน 4 เครื่อง และ เป็นแบบฟรีจากเครดิตที่ทาง AWS ให้เรามา  เริ่มกันที่

Step 1. เลือก Check Box ทางซ้ายมือ Free tier only เพื่อกรองเอาเฉพาะ Machine Image แบบฟรี ซึ่งจะเจอ  Ubuntu Server 14.04 LTS (HVM), SSD Volume Type คลิ๊กที่ Select แล้ว AWS จะแสดงหน้าจอ Step 2 ตามรูปที่ 4 เพื่อให้เลือก ประเภทของเครื่องคอมพิวเตอร์ โดยจะแสดงเป็นคอลัมน์คุณสมบัติเครื่องคอมพิวเตอร์ไว้ เช่น จำนวน vCPU , Memory , Storage และ Network Performance แต่โดยปกติแล้วเราจะเรียกแทนคุณสมบัติเครื่องคอมพิวเตอร์เป็น Type เช่น m4.xlarge สำหรับเครื่องที่มี 8 CPU , 16 GM และ High Performance Network

CreateVS-1

รูปที่ 4

Step 2: เลือก t2.micro แล้วคลิ๊ก Next Configure Instance Details  AWS จะแสดงหน้าจอ Step 3  รูปที่ 5 สำหรับให้เลือก จำนวนเครื่อง Virtual Server ที่จะสร้างตามคุณสมบัติที่เลือกไว้ในครั้งนี้ โดยการระบุจำนวนที่ช่อง Number of Instances และ ระบุตัวเลือกอื่นๆใช้ตามค่า Default ที่กำหนดไว้ก่อน

Step-2

รูปที่ 5

Step 3: ระบุจำนวน 4 ช่อง Number of Instance ของรูปที่ 5 แล้วคลิ๊ก Next Add Storage  AWS จะแสดงหน้าจอ Step 4 สำหรับการระบุจำนวน Memory ที่ต้องการ แสดงตามรูปที่ 6

Step-3

รูปที่ 6

Step 4: กำหนดจำนวน Memory เป็น 8 GB ตามที่กำหนดไว้ แล้วคลิ๊ก Next: Tag Instance เพื่อกำหนดป้ายชื่อเครื่องที่กำลังสร้าง แสดงตามรูปที่ 7

Step-5

รูปที่ 7

Step 5: กำหนดชื่อที่ช่อง Value เป็น Master แล้ว คลิ๊ก Next: Configure Security Group  แล้ว AWS จะแสดงหน้าจอให้กำหนด Security Group ตามที่แสดงตามรูปที่ 8  โดยการเริ่มต้นใช้งานให้เลือก Create a new security group ( Security Group จะเป็นการกำหนดค่าด้าน Firewall สำหรับควบคุมการเข้าถึงเครื่องคอมพิวเตอร์ที่เราสร้างขึ้นว่าเราจะอ้างอิงใช้ Firewall Setting Group ไหนที่เราสร้างไว้ )

Step-6

รูปที่ 8

Step 7: คลิ๊ก Review and Launch แล้ว AWS จะแสดงหน้าจอ Review คุณสมบัติเครื่องที่เรากำหนดแล้วทั้งหมด แสดงตามรูปที่ 9

            ขั้นตอนนี้จะเป็นจุดที่สำคัญอีกหนึ่งจุดคือการสร้าง Key Pair หรือ กำหนด Key Pair ให้กับ Virtual Server นี้ของเรา ทบทวนสั้นๆ Key Pair คือ ลายเซ็นดิจิตอลที่จะเอาไปสร้าง Private Key file สำหรับใช้สร้างท่อการเชื่อมต่อจากเครื่องคอมพิวเตอร์ใช้งานของเรามายัง Virtual Server ของ AWS ( ดูวิธีสร้าง Private Key และ การเชื่อมต่อไป ที่นี่ครับ )

Step-7

รูปที่ 9

      การผูก Key Pair ให้กับ Virtual Server ของเรา  ให้คลิ๊กที่ Launch แล้วกำหนด Key Pair  AWS จะแสดงหน้าจอตามรูปที่ 10

Step-9-KeyPair

รูปที่ 10

            โดย Drop Down list จะให้เลือกสร้างใหม่ ( Create a new key pair ) หรือ ใช้ของที่เคยสร้างไว้แล้ว ( Choose an existing key pair ) กรณีเราจะเลือก Create a new key pair และ ระบุ Key pair name  กำหนดชื่อเป็น BigData แล้วคลิ๊ก Download Key Pair  AWS จะแสดงหน้าจอให้เราทำการบันทึก Key pair ( file .pem ) ตามรูปที่ 11 ให้บันทึก ไว้ที่เครื่องปฏิบัติงานของเรา

Step-10-KeyPair-download

รูปที่ 11

Step 8: ทดสอบเปิดเครื่อง

            หลังจากบันทึก Key Pair แล้ว AWS จะพาเรากลับมายังหน้าจอตามรูปที่ 10 เพื่อให้เราเลือกเปิดเครื่อง ให้คลิ๊ก Launch Instance  AWS จะแสดงหน้าจอ Launch Status ตามรูปที่ 12 ซึ่งแสดงให้เห็นว่า Instance หรือ เครื่อง Virtual Server ทั้ง 4 เครื่องของเราทำงานอยู่ Your instances are now launching  ( จากนี้เราจะเรียก Virtual Server ที่สร้างขึ้นมาแล้วว่า Instance )

Step-11-AfterLaunchStatus

รูปที่ 12

            เราสามารถกลับไปดูรายละเอียดและสถานการณ์ทำงานของ Instance ทั้ง 4 ได้จากหน้าจอ EC2 Dashboard แสดงตามรูปที่ 13

Step-12-AfterLaunchInstance-EC2Dashboard

รูปที่ 13

หรือ เข้าไปหน้าจอเพื่อเตรียมสร้างการเขื่อมต่อจากเครื่องปฏิบัติงานของเราไปยัง EC2 ด้วยการคลิ๊กที่  Running Instance เมนูฟังก์ชั่นการควบคุมการทำงานจะย้ายไปอยู่ที่ INSTANCES  ตามรูปที่ 14 และ คอลัมน์ Instance State จะแสดงเป็น running ( สีเขียว )

Step-13-InstanceRunning

รูปที่ 14

            การสร้าง Virtual Sever ของ EC2 ณ.จุดนี้แสดงว่าเรามีเครื่อง Computer Server ไว้พร้อมใช้งานแล้ว จาก Instance Type ที่เราเลือกจำนวน 4 เครื่อง  ซึ่งโดยรวมทั้งหมดในครั้งถัดไปของการสร้างเราก็สามารถคลิ๊ก Next.. ได้แล้วล่ะครับ

การ Connect เข้าไปใช้งานงาน Virtual Server ที่สร้างไว้

            การจะเข้าใช้งาน Virtual Server ที่เราสร้างไว้แล้วเราจะ Connect ไปหา Server แบบ Secure Shell โดย Secure Shell Telnet client    สำหรับเครื่องปฏิบัติงานที่เป็น Windows จะใช้ PuTTY  แต่ก่อนที่จะสามารถ Connect ไปหา Virtual Server เราจะต้องสร้าง Private Key จาก BigData.pem ก่อน

  • วิธีการสร้าง Private key จาก pem ดูได้จากบทความวิธีสร้าง Private Key และ การเชื่อมต่อไป ที่นี่ครับ

ขั้นตอนการ Connect ไปยัง Virtual Server ทำได้ดังนี้

Step 1: ขอรับ Connection Name จาก Virtual Computer หรือ Instance ที่เราจะ Connect ไปใช้งาน

               a). เปิดเข้าไปที่ Instance Console ( เมนู Instance ) เลือก Instance แล้วคลิ๊กปุ่ม Connect  ระบบ AWS จะแสดงหน้าจอวิธีการ Connect  ตามรูปที่ 15 ให้ เลือก ubuntu@ec2-54-149-184-86.us-west-2.compute.amazonaws.com  ที่ Example เพื่อจะนำไประบุ host ที่จะ Connect ไปหาที่โปรแกรม PuTTY ( Host Name ส่วนนี้อ้างอิงชื่อตามที่แต่ละคนได้รับมา )

Step-14-ConnectEC2Instance

รูปที่ 15

      Step 2: PuTTY Connect to EC2 Instance

            เปิดโปรแกรม PTTTY ( สามารถ download ได้ที่ http://www.putty.org/ )  แล้วทำตามขั้นตอนดังนี้

                        a).  อ้างอิงใช้ Private Key file สำหรับ SSH Connection ตามรูปที่ 16  ที่ Tree Menu Connection>SSH>Auth  แล้ว Browse ไปเลือกไฟล์ BigData.ppk

Step-15-SSH-PuTTY

รูปที่ 16

b). เลื่อน Tree Menu ขึ้นไปที่ Session ที่ช่อง Host Name ให้ระบุเป็น ubuntu@ec2-54-149-184-86.us-west-2.compute.amazonaws.com  ตามที่ Copy ไว้ของ Step 1  ( Host Name ส่วนนี้อ้างอิงชื่อตามที่แต่ละคนได้รับมา ) แสดงตัวอย่างรูปที่ 17  แล้วคลิ๊ก Open.

 Step-16-SSH-PuTTY-SessionConnect

รูปที่ 17

หลังจากคลิ๊ก Open หน้าจอ Telnet client ของ PuTTY จะ Popup หน้าต่าง PuTTY Security Alert ตามรูปที่ 18 ให้ คลิ๊ก Yes  

Step-17-PuTTYAcceptKey

รูปที่ 18

Step 3: Welcome to EC2 Instance

      ท้ายสุดในขั้นนี้..เราจะได้หน้าจอแสดงการเชื่อมต่อที่สำเร็จและพร้อมเริ่มใช้งาน Virtual Server ของ AWS EC2 แล้วตามรูปที่ 19 จากนี้ต่อไปเราจะมี Environment สำหรับการเล่น Big Data กันแล้วล่ะ

Step-18-PuTTYWelcome

รูปที่ 19

สวัสดี Linux

          ณ.จุดนี้ เราพร้อมแล้วสำหรับ Virtual Server Linux OS ลองใช้คำสั่งสำหรับ Linux กันได้เลย สำหรับแต่ละกลุ่มคำสั่งตามลิงค์ต่อไปนี้ได้เลย

  • การท่องเข้าไปในจุดต่างๆของโครงสร้างไดเรคทอรี : http://linuxcommand.org/lc3_lts0020.php
  • การดูข้อมูลรายการไฟล์และไดเรคทอรี : http://linuxcommand.org/lc3_lts0030.php
  • การจัดการกับไฟล์ : http://linuxcommand.org/lc3_lts0050.php
  • การจัดการสิทธิและการใช้งานไฟล์ : http://linuxcommand.org/lc3_lts0090.php
  • การจัดการกับ I/O และ การเปลี่ยนทิศทางการแสดงผลข้อมูล : http://linuxcommand.org/lc3_lts0070.php

จบภาระกิจการแนะนำการสร้างและเข้าใช้งาน Environment สำหรับฝึกปฏิบัติ Big Data ล่ะครับ ครั้งหน้าเราจะเริ่มเข้าเรื่อง Big Data กันแล้วล่ะครับ

ทำงานมาแล้วในทุกตำแหน่งของทีมพัฒนาซอฟต์แวร์ มีประสบการณ์การวิเคราะห์และออกแบบระบบ Accounting&Warehouse , e-Payment , Freight forwarder , Logistic และ เคยดูงานด้านเทคนิคของระบบ Fraud Banking ที่ทำงานกับข้อมูลกว่า 7 ล้านรายการด้วยเข้าใจ Operation ของทุกระบบงานของธนาคารอย่างดี และ ถนัดเรื่องการบริหารจัดการโครงการพัฒนาระบบสารสนเทศ

| ปัจจุบันทำงานด้าน Big Data Solution Engineer โดยเอา Big Data Technology มาเพิ่มประสิทธิภาพการปฏิบัติงานของ Business and IT Operation

[  e-mail: p.auoychai@gmail.com , Tel. 086-813-5354 ]

Leave a Reply

Your email address will not be published. Required fields are marked *