CLI Tutorial: Install JPS

บทความนี้เราจะแสดงวิธีติดตั้งแพ็คเกจ JPS ผ่าน CLI ขั้นตอนดังกล่าวอาจมีการสร้าง environment ใหม่พร้อมกับการกำหนดค่าไว้ล่วงหน้าแล้ว (เช่น การ deploy และการกำหนดค่าแอปพลิเคชัน) หรือดำเนินการบางอย่างกับอินสแตนซ์ที่มีอยู่

เริ่มต้นโดยการติดตั้งแพ็กเกจที่เหมาะสมโดยการรันแพ็คเกจ JPS และพารามิเตอร์ทั้งหมด:

~/jelastic/marketplace/jps/install --jps {jps} [--envName {envName}] [--settings {settings}] [--nodeGroup {nodeGroup}] [--displayName {displayName}] [--region {region}] [--envGroups {envGroups}] [--ownerUid {ownerUid}] [--logsPath {logsPath}] [--loggerName {loggerName}] [--skipNodeEmails {skipNodeEmails}]

พารามิเตอร์ในวงเล็บเหลี่ยม [ ] เป็นทางเลือก:

  • jps – ลิงก์ไปยังไฟล์ Manifest หรือเนื้อหาของคุณ
  • การตั้งค่าเฉพาะสำหรับ jpsType: ติดตั้ง manifest (environment ใหม่)
    • [displayName] – นามแฝงสำหรับการสร้าง environment
    • [region] – ชื่อเฉพาะของแต่ละภูมิภาค (เช่น รับด้วยเมธอด GetRegions) ที่จะสร้าง environment
    • [envGroups] – รายการของกลุ่ม env environment ที่สร้างขึ้นควรรวมอยู่ด้วย (ระบุเป็นอาร์เรย์ JSON เช่น [“mygroup”, “group/subgroup”])
  • การตั้งค่าเฉพาะสำหรับ jpsType: อัปเดต manifest (add-ons สำหรับ environment ที่มีอยู่)
    • [nodeGroup] – environment layer ที่ควรใช้ add-ons กับ (bl, cp, cache, sqldb, nosqldb, storage, vps, สร้างหรือกำหนดคอนเทนเนอร์ Docker ด้วยตนเอง)
  • envName – ชื่อ env ที่สร้างขึ้นใหม่/เป้าหมายสำหรับการติดตั้งแอปพลิเคชัน/ส่วนเสริมตามลำดับ
  • [settings] – รายการการตั้งค่าที่แพ็คเกจต้องการ (ระบุเป็น JSON object ที่มีคู่ key/value)
  • [ownerUid] – User ID ของบัญชีที่ใช้ร่วมกันซึ่งควรติดตั้งแพ็คเกจ JPS
  • [loggerName] – ชื่อที่แสดงถัดจากการประทับเวลาของการดำเนินการแต่ละครั้งในไฟล์ log การติดตั้ง JPS (เรียนรู้เพิ่มเติมเกี่ยวกับ loggerName)
  • [logsPath] – เส้นทางไปยังไฟล์ log เพื่อบันทึกการติดตั้ง JPS (cs.log โดยค่าเริ่มต้น)
  • [skipNodeEmails] – เปิดใช้งาน (true โดยค่าเริ่มต้น) หรือปิดใช้งาน (false) การแจ้งเตือนทางอีเมลเกี่ยวกับการสร้างโหนดใหม่สำหรับแพ็คเกจนี้ (เรียนรู้เพิ่มเติมเกี่ยวกับ skipNodeEmails)

ตอนนี้คุณสามารถดำเนินการกับตัวอย่างกรณีจริง:

  • การติดตั้งส่วนเสริม TimeZone Change ผ่าน URL
  • การติดตั้ง JPS โดยใช้ไฟล์กำหนดค่าพร้อมกับพารามิเตอร์

การติดตั้งส่วนเสริม TimeZone Change ผ่าน URL

โปรแกรมเสริม TimeZone Change จะช่วยเปลี่ยนเวลาบนคอนเทนเนอร์ให้เป็นโซนที่ต้องการได้อย่างง่ายดาย ข้อมูลต้นทางและไฟล์ manifest ของ add-on สามารถพบได้ที่จัดเก็บ Jelastic JPS Collection ใน GitHub

1. ติดตั้ง Jelastic CLI และลงชื่อเข้าใช้บัญชีของคุณ สามารถดูวิธีการได้ที่คู่มือนี้

2. เรียกวิธีการติดตั้งด้วยพารามิเตอร์ที่จำเป็น:

~/jelastic/marketplace/jps/install --jps {jps} --envName {envName} --settings {settings} --nodeGroup {nodeGroup}
cli install timezone addon

โดยที่:

  • {jps} – ลิงก์ไปยังไฟล์โปรแกรมเสริม TimeZone Change manifest เช่น https://raw.githubusercontent.com/jelastic-jps/time-zone-change/master/manifest.jps
  • {envName} – ชื่อของ environment ที่มีอยู่ เช่น my-app
  • {settings} – ตามรายการที่แสดงโปรแกรมเสริมนี้จำเป็นต้องระบุพารามิเตอร์เพิ่มเติมหนึ่งตัว – timezone ที่ต้องการ เช่น {“dashoard_url”:”America/New_York“}
  • {nodeGroup} – เลเยอร์เป้าหมายของ environment
  • หากไม่มีปัญหาใดๆ สคริปต์จะตอบกลับด้วย “result”: 0 (การดำเนินการสำเร็จ)

3. สำหรับโปรแกรมเสริมนี้ คุณสามารถตรวจสอบรายละเอียดผลลัพธ์ที่ไฟล์ /var/log/jpsaddon.log โดยพิมพ์คำสั่ง:

~/jelastic/environment/file/read --envName {envName} --path "/var/log/jpsaddon.log" --nodeGroup {nodeGroup}
cli read file on application server

คุณจะเห็น timezone ถูกตั้งค่าเรียบร้อยแล้วตามที่ระบุไว้ในขั้นตอนก่อนหน้า America/New_York เวลาท้องถิ่นบนคอนเทนเนอร์ที่เกี่ยวข้องจะได้รับการปรับตามเขตเวลาใหม่นี้

การติดตั้ง JPS โดยใช้ไฟล์กำหนดค่าพร้อมกับพารามิเตอร์

คุณสามารถระบุพารามิเตอร์ทั้งหมดภายในไฟล์เดียวและอ้างอิงเมื่อเรียกใช้เมธอด CLI

โดยการสร้างไฟล์ JSON (ใช้ editor ที่ต้องการ) ด้วยพารามิเตอร์ที่จำเป็น ในกรณีของเรา เราจะเรียกใช้ JPS แบบง่าย ซึ่งจะบันทึกค่าของพารามิเตอร์ที่ให้มา

{
  "jps": {
    "type": "update",
    "name": "JPS Example",
    "onInstall": {
      "log": "${settings.param1}"
    }
  },
  "envName": "my-app",
  "settings": {
    "param1": "value1"
  },
  "nodeGroup": "cp"
}
create config with example jps

เคล็ดลับ: คุณสามารถระบุ URL ไปยังไฟล์รายการของคุณแทนที่จะระบุให้ชัดเจนในพารามิเตอร์ jps (คล้ายกับตัวอย่าง TimeZone)

2. ขั้นตอนถัดไปเรียกวิธีการติดตั้งโดยใช้ไฟล์การกำหนดค่าที่สร้างขึ้น

~/jelastic/marketplace/jps/install --myparams {myparams.json}
cli install jps with configuration file

เคล็ดลับ: คุณสามารถระบุพารามิเตอร์ให้ชัดเจนเพื่อกำหนดค่าภายในไฟล์ใหม่ได้ ตัวอย่างเช่น การเปลี่ยนชื่อ environment โดยไม่ต้องปรับไฟล์การกำหนดค่าเอง:

~/jelastic/marketplace/jps/install –myparams {myparams.json} –envName {envName}

3. คุณสามารถตรวจสอบค่าของพารามิเตอร์ที่ระบุได้ถูกบันทึกผ่านคอนโซลของแพลตฟอร์มเรียบร้อยแล้วโดยคลิกที่ลิงก์ https://app.manage.ruk-com.cloud/console เพื่อดู log

การใช้ไฟล์ configuration พร้อมรายการพารามิเตอร์ที่กำหนดไว้ล่วงหน้าเป็นวิธีที่ดีในการลดความยุ่งยากและทำให้การเรียกบ่อยโดยอัตโนมัติ