🔍 Assets Discovery — คู่มือการ Setup CMDB
Cloud Data Center บทความนี้ใช้ได้ทั้ง Cloud และ Data Center
Assets Discovery ถูกตั้งค่าให้ สแกน network เป็นรอบ (periodically) เก็บข้อมูลที่สแกนได้ในรูปแบบ XML file จากนั้น transfer ไฟล์ไปที่ Import Folder ซึ่ง Assets จะใช้ import ข้อมูล หรือ upload ขึ้น Assets Cloud โดยตรง
จุดเด่นของ Assets Discovery
- 🔧 เป็น network discovery solution ที่ ผูกกับ Jira platform อย่างแน่น
- 🗃️ เป็น solution เดียวที่มี CMDB จริง (Configuration Management Database) บน Jira platform
- 🔗 ทำ Dependency Mapping และ Impact Analysis ได้บน Jira
- 🤖 มี Automation Framework สำหรับ asset management
- 💰 ราคาคุ้มค่า — เปรียบเทียบกับ solution อื่นในตลาดได้เลย
สถาปัตยกรรม — 3 เครื่องมือในแพ็กเกจเดียว
Assets Discovery ดาวน์โหลดจาก Atlassian Marketplace รันได้บน Windows และ Linux มี 3 เครื่องมือ:
1. Assets Discovery (ตัวหลัก — Agent-less)
Scanner แบบ ไม่ต้องติดตั้ง agent บนเครื่อง target ใช้ค้นหา devices และ configuration items ใน local network ของคุณ
2. Assets Discovery Agents (Agent-ful)
ตัว agent อิสระที่ติดตั้งบนเครื่อง target ใช้สำหรับ:
- เครื่องที่ ไม่ได้เปิดตลอด (offline ตอน scan)
- Windows ที่ไม่อยากเปิด inbound WMI Port และ Dynamic DCOM Ports
3. Assets Discovery Collector
เครื่องมือที่ช่วยให้:
- รัน หลาย instance ของ Discovery พร้อมกัน แล้วรวมผลเป็น data set เดียว
- สแกน network ระยะไกล แล้ว transfer ข้อมูลกลับมา
กระบวนการทำงาน (How Discovery Works)
เมื่อ scan เริ่มต้น Discovery จะทำตามขั้นตอนเหล่านี้:
- โหลด Scan Settings — อ่าน scan settings ที่ต้อง execute และ allocate memory ให้แต่ละ IP address ในช่วง IP ที่กำหนด
- ICMP Ping — ส่ง ICMP ping ไปทุก IP address เพื่อดูว่า host ตอบหรือ timeout (เช่น unreachable hosts)
- Scan Reachable IPs — สแกน IP ที่ reachable พร้อมกับ forced IPs (ใช้
~modifier ใน Scan Setting) ถ้า ICMP ถูกปิด ทุก IP จะพยายาม login, reject login, หรือ timeout - Login ด้วย Credentials — พยายาม login ด้วย saved credentials ที่เข้ารหัส AES-256 (เก็บใน
credentialstoreเข้ารหัสด้วย password + salt จาก system info) - Execute Pattern Files — ถ้า login สำเร็จ pattern files จะถูก execute บน host/device ที่ login ได้
- Map Data — ข้อมูลที่ค้นพบจะถูก map ไปยัง Memory Object แล้วแปลงเป็น Scan Results XML file
- Export — XML file จะถูก zip และ transport ตาม Export configuration ไปให้ Assets Discovery Import app, Collector, หรือ upload ขึ้น Assets Cloud
📋 System Requirements
Supported Platforms
| OS | Distribution | Requirements |
|---|---|---|
| Windows | Windows 10, 11, Server 2016, 2019 (ต้องติดตั้ง FOD), 2022 | Microsoft .NET Framework 4.7.2 ขึ้นไป |
| Linux | Ubuntu Desktop 18.04, 20.04, 22.04; Debian 11-12 (GNOME & KDE); CentOS Stream 9 (GNOME) | GUI Enabled OS, .NET Core Runtime, Mono 5.2.0+, system utilities |
📦 Download & Install
• ต้องมี Jira Admin permissions
• ต้องมี administrator permissions บน Windows/Linux
• ตรวจสอบ System Requirements
ขั้นตอนการติดตั้ง
- 1 ดาวน์โหลด Assets Discovery เวอร์ชันล่าสุดจาก Atlassian Marketplace
- 2 สร้าง directory สำหรับเก็บเครื่องมือ — ต้องมีทั้ง read และ write permissions
- 3 แตกไฟล์ ทั้งหมดจาก Assets Discovery package ไปที่ directory ที่สร้างไว้
# ตัวอย่างบน Windows (run as Admin)
cd "C:\Program Files"
mkdir AssetsDiscovery
# แตกไฟล์ zip ไปที่ C:\Program Files\AssetsDiscovery
# ตัวอย่างบน Linux
sudo mkdir -p /opt/assets-discovery
sudo unzip AssetsDiscovery.zip -d /opt/assets-discovery
⚙️ Common Settings
เปิด command line (admin) แล้วไปที่ folder Assets Discovery เปิด GUI:
# Windows
cd "C:\Program Files\AssetsDiscovery"
Discovery.exe
# Linux
cd /opt/assets-discovery
./Discovery
Common Settings ครอบคลุม:
- Language — ภาษาที่ใช้ใน GUI
- Log level — ระดับความละเอียดของ log
- Memory allocation — กำหนด memory ที่ใช้
🔍 Scan Settings
Scan Settings กำหนดว่าจะสแกนอะไรบ้าง:
สิ่งที่ต้องกำหนด
- IP Ranges — ช่วง IP ที่ต้องการสแกน (เช่น
192.168.1.0/24) - Scan Name — ชื่อ scan job
- Scan Type — Full scan หรือ Incremental
- Schedule — ตั้งเวลา scan เป็นรอบ (daily, weekly, etc.)
- Force IP — เพิ่ม IP ที่บังคับสแกนแม้ ICMP ไม่ตอบ (ใช้
~prefix)
<!-- ตัวอย่าง IP Range format -->
192.168.1.0/24 ← สแกน 254 hosts
10.0.0.0/16 ← สแกน ~65,000 hosts (ใช้ memory มาก!)
172.16.1.1-172.16.1.50 ← สแกนช่วง 50 IPs
/16 = ~65K hosts, /24 = 254 hosts แนะนำให้เริ่มจาก range เล็กๆ ก่อน
🔐 Credential Settings
Credentials ใช้สำหรับ login เข้าเครื่อง target เพื่อเก็บข้อมูล
ประเภท Credentials ที่รองรับ
- Windows — Username/Password (Domain หรือ Local)
- SSH — Username/Password หรือ SSH Key
- SNMP v1/v2c — Community String
- SNMP v3 — Username/Authentication/Privacy
- VMware — vCenter/ESXi credentials
credentialstore เข้ารหัสด้วย password + salt จาก system info — ไม่สามารถย้าย credentialstore ไปเครื่องอื่นได้
📄 Pattern Settings
Pattern files กำหนดว่า Discovery จะเก็บข้อมูลอะไรจากเครื่อง target
- Pattern เป็นไฟล์ XML ที่กำหนด commands ที่จะ run บน target
- มี patterns ในตัวสำหรับ Windows, Linux, Network devices, VMware
- สามารถ สร้าง custom patterns ได้ตามต้องการ
📤 Export Settings
Export Settings กำหนดว่าผล scan จะส่งไปไหน:
- File Copy — copy XML ไป folder ที่กำหนด (สำหรับ import ด้วย JSM Assets app)
- Direct to Cloud — upload ขึ้น Assets Cloud โดยตรง
- Collector — ส่งไปให้ Collector จัดการ
<!-- Export XML file location -->
Default: C:\Program Files\AssetsDiscovery\scans\
🔄 ตั้งค่าเป็น Scheduled Service
บน Windows สามารถตั้งค่า Discovery เป็น service ที่รันอัตโนมัติตาม schedule:
# ติดตั้ง Discovery เป็น Windows Service (run as Admin)
cd "C:\Program Files\AssetsDiscovery"
Discovery.exe --install
# ถอนการติดตั้ง
Discovery.exe --uninstall
# รัน manual scan ครั้งเดียว
Discovery.exe --scan
📊 Collector Setup
Collector ใช้เมื่อต้องการ:
- รัน multiple Discovery instances พร้อมกัน
- สแกน network จากหลาย location แล้วรวมผล
- Transfer ข้อมูลจาก remote site กลับมาที่ central server
วิธี Setup
- ติดตั้ง Assets Discovery บน server ที่ต้องการ
- เปิด Collector GUI จาก folder Discovery
- ตั้งค่า Collector Settings — ระบุ Discovery instances ที่จะดึงข้อมูล
- ตั้งค่า Import Folder — ที่รวมผล scan ทั้งหมด
- ตั้ง schedule ให้ Collector ทำงาน
🤖 Agent Setup
Agent ใช้เมื่อต้องการ scan เครื่องที่:
- ไม่ได้เปิดตลอด — Agent จะ cache ข้อมูลไว้ส่งเมื่อ online
- ไม่อยากเปิด WMI/DCOM ports — Agent ใช้ port อื่นในการสื่อสาร
วิธี Setup
- ติดตั้ง Agent บนเครื่อง target
- ตั้งค่า Agent Settings — ระบุ Discovery server ที่จะส่งข้อมูล
- ตั้ง schedule ให้ Agent scan ข้อมูล
- Agent จะส่งข้อมูลกลับมาที่ Discovery server อัตโนมัติ
📥 Import Data เข้า JSM
หลัง scan เสร็จ ข้อมูลต้องถูก import เข้า Assets ใน Jira Service Management:
วิธี Import
- ไปที่ JSM → Assets → Import
- สร้าง Import Configuration ใหม่
- เลือก Assets Discovery Import
- กำหนด Object Type Mapping — map ข้อมูลที่ scan ได้กับ Object Types ใน CMDB
- ตั้ง schedule ให้ import อัตโนมัติ
- ทดสอบ import แล้วตรวจสอบข้อมูล
💡 เคล็ดลับ: เริ่มจาก Object Types พื้นฐานก่อน (Computer, Server, Network Device) แล้วค่อยเพิ่มความซับซ้อน
📄 Patterns คืออะไร?
Patterns เป็นไฟล์ XML ที่กำหนดว่า Discovery จะ เก็บข้อมูลอะไร จากเครื่อง target:
- Built-in Patterns — มีมาให้แล้วสำหรับ Windows, Linux, Network devices, VMware, AWS
- Custom Patterns — สร้างเองได้ตามต้องการ
- Pattern จะ execute commands บน target แล้ว map ผลลัพธ์ไปยัง Object Attributes
ตัวอย่าง Pattern Structure
<PatternPattern version="1.0" name="My Custom Pattern">
<Description>Collect custom data</Description>
<Object name="Computer">
<Attribute name="Hostname" source="command" />
<Attribute name="OS Version" source="command" />
<Attribute name="Serial Number" source="command" />
</Object>
</PatternPattern>
📊 ข้อมูลที่เก็บรวบรวม
Discovery เก็บข้อมูลหลายประเภท:
Category ตัวอย่างข้อมูล
Hardware CPU, RAM, Disk, Motherboard, Serial Number, MAC Address
Software Installed applications, Versions, License keys
OS OS name, Version, Architecture, Patches
Network IP Address, Subnet, Gateway, DNS, VLAN
Services Running services, Ports, Processes
Virtual VMware VMs, Hyper-V, AWS EC2 instances
Dependencies Network connections, Service dependencies
🧠 การจัดการ Memory
⚠️ สำคัญมาก: IP range ขนาดใหญ่จะใช้ memory มาก ต้องวางแผนให้ดี
IP Range จำนวน Hosts (approx) Memory Impact
/24254 🟢 ต่ำ
/204,094 🟡 ปานกลาง
/16~65,000 🔴 สูงมาก
คำแนะนำ
- เริ่มจาก 1 Discovery Instance ต่อ network
- ใช้ IP ranges เล็กๆ กระจาย scan ตลอดทั้งวัน
- ค่อยๆ เพิ่ม range จนถึงขีดจำกัด (เวลา/วัน, memory)
- ต้องทดสอบเอง — ขีดจำกัดจริงขึ้นกับ resources, จำนวน hosts, ปริมาณข้อมูล
Max Threads
จำนวน threads สูงสุดที่ตั้งได้: 2 × CPU cores - 1
ใช้ SSL protocol สำหรับ transfer ระหว่าง Discovery/Collector และ Assets Cloud
🔐 หมายเหตุเรื่อง Credentials
- Credentials ถูกเข้ารหัส AES-256 เก็บใน
credentialstore
- เข้ารหัสด้วย password + salt จาก system info
- ไม่สามารถย้าย credentialstore ไปเครื่องอื่นได้ — ต้องสร้างใหม่
- สามารถย้าย configuration file ระหว่าง Discovery instances ได้ แต่ ไม่ใช่ credentials
- ถ้า credentials ไม่ถูกต้อง Discovery จะพยายามเก็บ Basic information จาก ARC Cache
🔧 Troubleshooting
Scan Stuck / ค้าง
สาเหตุ: AssetHistory.dat เสียหาย
# แก้ไข: ลบไฟล์ AssetHistory.dat แล้ว scan ใหม่
# Windows
del "C:\Program Files\AssetsDiscovery\AssetHistory.dat"
# Linux
rm /opt/assets-discovery/AssetHistory.dat
Error loading AssetHistory
สาเหตุ: Deserialization error จากไฟล์ history เสียหาย
- ลบ
AssetHistory.dat แล้ว scan ใหม่
- ข้อมูล history จะหาย แต่ scan ใหม่จะสร้างขึ้นมาใหม่
Scan ช้า / Timeout
- ตรวจสอบว่า ICMP เปิดอยู่ — ถ้าปิด scan จะช้ามาก
- ลด IP range ลง
- เพิ่ม Max Threads (ถ้า CPU รองรับ)
- ตรวจสอบ Credentials ว่าถูกต้อง
Memory ไม่พอ (Out of Memory)
- ลด IP range ลง
- แยก scan ออกเป็นหลาย scan jobs
- เพิ่ม RAM บน Discovery server
✅ Best Practices
- เริ่มเล็ก ค่อยขยาย — เริ่มจาก /24 range ก่อน แล้วค่อยเพิ่ม
- กระจาย scan ตลอดวัน — ไม่ scan พร้อมกันทั้งหมด
- ใช้ Collector สำหรับ multi-site
- ใช้ Agent สำหรับเครื่องที่ offline บ่อย
- ตรวจสอบ credentials สม่ำเสมอ
- เริ่มจาก Object Types พื้นฐาน — Computer, Server, Network Device
- ใช้ Patterns สำเร็จรูป ก่อนสร้าง custom
- Monitor memory usage ของ Discovery server
- Backup configuration สม่ำเสมอ (แต่ credentialstore ย้ายไม่ได้!)
- ใช้ SSL สำหรับ transfer ข้อมูล
📎 ลิงค์ที่เกี่ยวข้อง
หัวข้อ ลิงค์
ดาวน์โหลด Assets Discovery Atlassian Marketplace
Assets Discovery Overview (Official) support.atlassian.com
Download & Extract support.atlassian.com
Confluence Docs (Legacy) confluence.atlassian.com
Non-GUI Linux Setup support.atlassian.com
Troubleshooting: Scan Stuck support.atlassian.com
Troubleshooting: AssetHistory Error support.atlassian.com
Assets Integrations (DC) confluence.atlassian.com
📋 สรุป Workflow:
1. Download → 2. Install → 3. Configure (Common → Scan → Credentials → Patterns → Export) → 4. Run/Schedule → 5. Import เข้า JSM Assets
Assets Discovery Manual — สร้างจาก Atlassian Official Documentation
Last updated: สิงหาคม 2026 | Source: Atlassian Docs