สิ่งแรกคือการดึงอิมเมจ ESPHome Docker จาก Docker Hub (ออนไลน์)
docker pull esphome/esphome
จากนั้นเริ่มตัวช่วยสร้าง ESPHome วิซาร์ดนี้จะถามคุณเกี่ยวกับประเภทอุปกรณ์ของคุณ ชื่ออุปกรณ์ ข้อมูลประจำตัว WiFi ของคุณ และสุดท้ายจะสร้างไฟล์ yaml ที่มีการกำหนดค่าทั้งหมดสำหรับคุณ
docker run --rm -v "${PWD}":/config -it esphome/esphome wizard stl.yaml
dmesg | grep ttyUSB
docker run --rm -v "${PWD}":/config --device=/dev/ttyUSB1 -it esphome/esphome run stl.yaml
python3 --version
pip3 install wheel esphome
pip3 install --user esphome
esphome wizard stl-python.yaml
esphome run stl-python.yaml
กลับไปด้านบน
OpenWrt Project เป็นระบบปฏิบัติการ Linux ที่กำหนดเป้าหมายไปที่อุปกรณ์ฝังตัว แทนที่จะพยายามสร้างเฟิร์มแวร์แบบคงที่เพียงตัวเดียว OpenWrt มอบระบบไฟล์ที่สามารถเขียนได้อย่างสมบูรณ์พร้อมการจัดการแพ็คเกจ โดยส่วนใหญ่จะใช้กับอุปกรณ์ฝังตัวเพื่อกำหนดเส้นทางการรับส่งข้อมูลเครือข่าย
ดาวน์โหลดภาพ OpenWrt ที่เหมาะสมสำหรับ Raspberry PI ของคุณโดยไปที่ลิงก์ด้านบน
Raspberry Pi Imager เป็นวิธีที่ง่ายและรวดเร็วในการติดตั้ง Raspberry Pi OS และระบบปฏิบัติการอื่นๆ ลงในการ์ด microSD ซึ่งพร้อมใช้งานกับ Raspberry Pi ของคุณ
บอร์ดเราเตอร์ Raspberry Pi สำหรับโมดูล CM4 (ราคา: 55 ดอลลาร์สหรัฐ) คือบอร์ดขยายที่ใช้ Raspberry Pi Compute Module 4 โดยนำพอร์ตเครือข่ายกิกะบิตความเร็วเต็มจำนวน 2 พอร์ตของ Raspberry Pi CM4 มาให้ประสิทธิภาพที่ดีขึ้น ลดการใช้งาน CPU และความเสถียรที่สูงขึ้น ใช้งานได้ยาวนานเมื่อเทียบกับการ์ดเครือข่าย USB มันเข้ากันได้กับระบบปฏิบัติการ Raspberry Pi, เซิร์ฟเวอร์ Ubuntu และระบบ Raspberry Pi อื่น ๆ
บอร์ดเราเตอร์ Raspberry Pi สำหรับโมดูล CM4
ข้อมูลจำเพาะทางเทคนิค:
กลับไปด้านบน
Watchdog Timer (WDT) เป็นตัวจับเวลาที่ตรวจสอบโปรแกรมไมโครคอนโทรลเลอร์ (MCU) เพื่อดูว่าโปรแกรมเหล่านั้นอยู่นอกเหนือการควบคุมหรือหยุดทำงานแล้วหรือไม่
หากต้องการเปิดใช้งาน Watchdog คุณต้องเปลี่ยนพารามิเตอร์การบูตโดยเพิ่ม dtparam=watchdog=on ใน /boot/config.txt โดยใช้โปรแกรมแก้ไขข้อความ เช่น nano, vim, gedit ฯลฯ นอกจากนี้ ให้ติดตั้งแพ็คเกจ watchdog และเปิดใช้งานให้เริ่มต้นที่ การเริ่มต้น นอกจากนี้อย่าลืมรีสตาร์ท Raspberry Pi ของคุณเพื่อให้การตั้งค่าเหล่านี้มีผล
pi@raspberrypi:~ $ sudo apt install watchdog
pi@raspberrypi:~ $sudo systemctl enable watchdog
ไฟล์การกำหนดค่าสำหรับ Watchdog สามารถพบได้ใน /etc/watchdog.conf
max-load-1 = 24
watchdog-device = /dev/watchdog
realtime = yes
priority = 1
ในการเริ่มบริการ WTD:
pi@raspberrypi:~ $ sudo systemctl start watchdog
ตรวจสอบสถานะสุนัขเฝ้าบ้าน:
pi@raspberrypi:~ $ sudo systemctl status watchdog
หากต้องการหยุดบริการ:
pi@raspberrypi:~ $ sudo systemctl stop watchdog
กลับไปด้านบน
เคส Raspberry Pi จาก Pi-Shop US
เคส Raspberry Pi จาก The Pi Hut
บอร์ดขยาย X825 มอบโซลูชันการจัดเก็บข้อมูลที่สมบูรณ์แบบสำหรับ Raspberry Pi 4 Model B รุ่นใหม่ล่าสุด โดยรองรับฮาร์ดดิสก์ไดรฟ์ (HDD) / โซลิดสเตต (SSD) ขนาด 2.5 นิ้ว SATA ได้สูงสุด 4TB
Sabrent M.2 SSD [NGFF] เป็น USB 3.0 / SATA III 2.5 นิ้วอะแดปเตอร์ตู้อะลูมิเนียม
ซัมซุง 970 EVO 250GB - NVMe PCIe M.2 2280 SSD
Western Digital 1TB WD Blue SN550 NVMe SSD ภายใน
SAMSUNG T5 SSD แบบพกพา
Samsung SSD 860 EVO 250GB mSATA SSD ภายใน
ซัมซุง 850 EVO 120GB SSD mSATA
กลับไปด้านบน
Grafana เป็นแพลตฟอร์มการวิเคราะห์ที่ช่วยให้คุณสามารถค้นหาและแสดงข้อมูลเป็นภาพ จากนั้นสร้างและแชร์แดชบอร์ดตามการแสดงภาพของคุณ แสดงภาพตัวชี้วัด บันทึก และการติดตามจากหลายแหล่งได้อย่างง่ายดาย เช่น Prometheus, Loki, Elasticsearch, InfluxDB, Postgres, Fluentd, Fluentbit, Logstash และอื่นๆ อีกมากมาย
เริ่มต้นใช้งานกราฟาน่า
ชุมชนกราฟาน่า
การฝึกอบรมบริการระดับมืออาชีพของ Grafana | กราฟาน่า แล็บส์
การฝึกอบรม Grafana Pro AWS | กราฟาน่า แล็บส์
บทช่วยสอน Grafana
หลักสูตร Grafana ยอดนิยมบน Udemy
หลักสูตรการฝึกอบรมออนไลน์ของ Grafana | การเรียนรู้ LinkedIn
หลักสูตรการฝึกอบรม Grafana - NobleProg
การตั้งค่า Grafana เพื่อให้เห็นภาพหลักสูตรเมตริกของเราบน Coursera
Grafana Cloud เป็นแพลตฟอร์มการสังเกตแบบเรียบเรียงได้ ซึ่งผสานรวมตัววัด การติดตาม และบันทึกเข้ากับ Grafana ใช้ประโยชน์จากซอฟต์แวร์สังเกตการณ์แบบโอเพ่นซอร์สที่ดีที่สุด รวมถึง Prometheus, Loki และ Tempo โดยไม่มีค่าใช้จ่ายในการติดตั้ง บำรุงรักษา และปรับขนาดสแต็กความสามารถในการสังเกตของคุณ
การรวมระบบคลาวด์ Grafana ที่มา: Grafana
Grafana Enterprise เป็นบริการที่มีฟีเจอร์ที่ให้ความสามารถในการปรับขนาด การทำงานร่วมกัน การดำเนินงาน และการกำกับดูแลที่ดีขึ้นในสภาพแวดล้อมที่มีการจัดการด้วยตนเอง
สแต็คองค์กร Grafana ที่มา: Grafana
Grafana Tempo เป็นแบ็กเอนด์ Tarcing แบบโอเพ่นซอร์สระดับสูง Tempo มีความคุ้มค่า โดยต้องใช้เพียงพื้นที่จัดเก็บอ็อบเจ็กต์ในการทำงาน และผสานรวมกับ Grafana, Loki และ Prometheus อย่างลึกซึ้ง
Grafana MetricTank เป็นแพลตฟอร์มอนุกรมเวลาที่มีผู้เช่าหลายรายสำหรับ Graphite ที่พัฒนาโดย Grafana Labs MetricTank ให้ความพร้อมใช้งานสูง (HA) และการจัดเก็บ การเรียกค้น และการประมวลผลระยะยาวที่มีประสิทธิภาพสำหรับสภาพแวดล้อมขนาดใหญ่
Grafana Tanka เป็นยูทิลิตีการกำหนดค่าที่มีประสิทธิภาพสำหรับคลัสเตอร์ Kubernetes ของคุณ ซึ่งขับเคลื่อนโดยภาษา Jsonnet
Grafana Loki เป็นระบบรวบรวมบันทึกของผู้เช่าหลายรายที่ปรับขนาดแนวนอนและพร้อมใช้งานสูง (HA) ซึ่งได้รับแรงบันดาลใจจาก Prometheus
Cortex เป็นโปรเจ็กต์ที่ช่วยให้ผู้ใช้สืบค้นตัววัดจากเซิร์ฟเวอร์ Prometheus จำนวนมากได้ในที่เดียว โดยไม่มีช่องว่างใน grpah เนื่องจากเซิร์ฟเวอร์ทำงานล้มเหลว นอกจากนี้ Cortex ยังช่วยให้คุณจัดเก็บตัววัด Prometheus สำหรับการวางแผนความจุและการวิเคราะห์ประสิทธิภาพในระยะยาว
กราไฟท์เป็นระบบตรวจสอบโอเพ่นซอร์ส
กลับไปด้านบน
cURL เป็นโครงการซอฟต์แวร์คอมพิวเตอร์ที่ให้ไลบรารีและเครื่องมือบรรทัดคำสั่งสำหรับการถ่ายโอนข้อมูลโดยใช้โปรโตคอลเครือข่ายต่างๆ (HTTP, HTTPS, FTP, FTPS, SCP, SFTP, TFTP, DICT, TELNET, LDAP LDAPS, MQTT, POP3, POP3S, RTMP , RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP หรือ SMTPS) นอกจากนี้ cURL ยังใช้ในรถยนต์ โทรทัศน์ เราเตอร์ เครื่องพิมพ์ อุปกรณ์เครื่องเสียง โทรศัพท์มือถือ แท็บเล็ต กล่องรับสัญญาณ เครื่องเล่นมีเดีย และเป็นเครื่องมือถ่ายโอนอินเทอร์เน็ตสำหรับแอปพลิเคชันซอฟต์แวร์หลายพันรายการในการติดตั้งมากกว่าหมื่นล้านครั้ง
cURL Fuzzer คือการทดสอบการประกันคุณภาพสำหรับโครงการ curl
DoH เป็นแอปพลิเคชันแบบสแตนด์อโลนสำหรับการแก้ไขและค้นหาชื่อ DoH (DNS-over-HTTPS)
Authelia เป็นเซิร์ฟเวอร์การตรวจสอบความถูกต้องแบบโอเพ่นซอร์สที่มีความพร้อมใช้งานสูง โดยให้ความสามารถในการลงชื่อเพียงครั้งเดียวและการตรวจสอบสิทธิ์แบบสองปัจจัยสำหรับแอปพลิเคชันที่ทำงานอยู่เบื้องหลัง NGINX
nginx(engine x) เป็นพร็อกซีเซิร์ฟเวอร์ HTTP และพร็อกซีย้อนกลับ พร็อกซีเซิร์ฟเวอร์เมล และพร็อกซีเซิร์ฟเวอร์ TCP/UDP ทั่วไป ซึ่งเขียนโดย Igor Sysoev
Proxmox Virtual Environment(VE) เป็นแพลตฟอร์มโอเพ่นซอร์สที่สมบูรณ์แบบสำหรับการจำลองเสมือนระดับองค์กร ประกอบด้วยเว็บอินเทอร์เฟซในตัวที่คุณสามารถจัดการ VM และคอนเทนเนอร์ พื้นที่เก็บข้อมูลและเครือข่ายที่กำหนดโดยซอฟต์แวร์ การทำคลัสเตอร์ที่มีความพร้อมใช้งานสูง และเครื่องมือที่พร้อมใช้งานทันทีหลายรายการในโซลูชันเดียว
Wireshark เป็นตัววิเคราะห์โปรโตคอลเครือข่ายที่ได้รับความนิยมอย่างมาก ซึ่งมักใช้สำหรับการแก้ไขปัญหาเครือข่าย การวิเคราะห์ และการพัฒนาโปรโตคอลการสื่อสาร เรียนรู้เพิ่มเติมเกี่ยวกับเครื่องมือ Wireshark ที่มีประโยชน์อื่นๆ ที่มีจำหน่าย
HTTPie เป็นไคลเอ็นต์ HTTP แบบบรรทัดคำสั่ง เป้าหมายคือการทำให้การโต้ตอบของ CLI กับบริการบนเว็บเป็นมิตรกับมนุษย์มากที่สุดเท่าที่จะเป็นไปได้ HTTPie ออกแบบมาเพื่อการทดสอบ การแก้ไขข้อบกพร่อง และการโต้ตอบกับ API และเซิร์ฟเวอร์ HTTP โดยทั่วไป
HTTPStat เป็นเครื่องมือที่แสดงภาพสถิติขดในรูปแบบที่เรียบง่าย
Wuzz เป็นเครื่องมือ cli แบบโต้ตอบสำหรับการตรวจสอบ HTTP สามารถใช้เพื่อตรวจสอบ/แก้ไขคำขอที่คัดลอกมาจากตัวตรวจสอบเครือข่ายของเบราว์เซอร์ด้วยคุณสมบัติ "คัดลอกเป็น cURL"
Websocat เป็นไคลเอ็นต์บรรทัด ommand สำหรับ WebSockets เช่น netcat (หรือ curl) สำหรับ ws:// พร้อมด้วยฟังก์ชันคล้าย socat ขั้นสูง
• Connection: In networking, a connection refers to pieces of related information that are transferred through a network. This generally infers that a connection is built before the data transfer (by following the procedures laid out in a protocol) and then is deconstructed at the at the end of the data transfer.
• Packet: A packet is, generally speaking, the most basic unit that is transferred over a network. When communicating over a network, packets are the envelopes that carry your data (in pieces) from one end point to the other.
แพ็กเก็ตมีส่วนส่วนหัวที่มีข้อมูลเกี่ยวกับแพ็กเก็ตรวมถึงต้นทางและปลายทาง การประทับเวลา การกระโดดเครือข่าย ส่วนหลักของแพ็กเก็ตประกอบด้วยข้อมูลจริงที่กำลังถ่ายโอน บางครั้งเรียกว่าร่างกายหรือน้ำหนักบรรทุก
• Network Interface: A network interface can refer to any kind of software interface to networking hardware. For instance, if you have two network cards in your computer, you can control and configure each network interface associated with them individually.
อินเทอร์เฟซเครือข่ายอาจเชื่อมโยงกับอุปกรณ์ทางกายภาพ หรืออาจเป็นตัวแทนของอินเทอร์เฟซเสมือน อุปกรณ์ "loop-back" ซึ่งเป็นอินเทอร์เฟซเสมือนกับเครื่องท้องถิ่นคือตัวอย่างของสิ่งนี้
• LAN: LAN stands for "local area network". It refers to a network or a portion of a network that is not publicly accessible to the greater internet. A home or office network is an example of a LAN.
• WAN: WAN stands for "wide area network". It means a network that is much more extensive than a LAN. While WAN is the relevant term to use to describe large, dispersed networks in general, it is usually meant to mean the internet, as a whole.
หากอินเทอร์เฟซเชื่อมต่อกับ WAN โดยทั่วไปจะถือว่าสามารถเข้าถึงได้ผ่านทางอินเทอร์เน็ต
• Protocol: A protocol is a set of rules and standards that basically define a language that devices can use to communicate. There are a great number of protocols in use extensively in networking, and they are often implemented in different layers.
โปรโตคอลระดับต่ำบางตัว ได้แก่ TCP, UDP, IP และ ICMP ตัวอย่างโปรโตคอลเลเยอร์แอปพลิเคชันที่คุ้นเคยซึ่งสร้างขึ้นบนโปรโตคอลระดับต่ำกว่าเหล่านี้ ได้แก่ HTTP (สำหรับการเข้าถึงเนื้อหาเว็บ), SSH, TLS/SSL และ FTP
• Port: A port is an address on a single machine that can be tied to a specific piece of software. It is not a physical interface or location, but it allows your server to be able to communicate using more than one application.
• Firewall: A firewall is a program that decides whether traffic coming into a server or going out should be allowed. A firewall usually works by creating rules for which type of traffic is acceptable on which ports. Generally, firewalls block ports that are not used by a specific application on a server.
• NAT: Network address translation is a way to translate requests that are incoming into a routing server to the relevant devices or servers that it knows about in the LAN. This is usually implemented in physical LANs as a way to route requests through one IP address to the necessary backend servers.
• VPN: Virtual private network is a means of connecting separate LANs through the internet, while maintaining privacy. This is used as a means of connecting remote systems as if they were on a local network, often for security reasons.
While networking is often discussed in terms of topology in a horizontal way, between hosts, its implementation is layered in a vertical fashion throughout a computer or network. This means is that there are multiple technologies and protocols that are built on top of each other in order for communication to function more easily. Each successive, higher layer abstracts the raw data a little bit more, and makes it simpler to use for applications and users. It also allows you to leverage lower layers in new ways without having to invest the time and energy to develop the protocols and applications that handle those types of traffic.
As data is sent out of one machine, it begins at the top of the stack and filters downwards. At the lowest level, actual transmission to another machine takes place. At this point, the data travels back up through the layers of the other computer. Each layer has the ability to add its own "wrapper" around the data that it receives from the adjacent layer, which will help the layers that come after decide what to do with the data when it is passed off.
One method of talking about the different layers of network communication is the OSI model. OSI stands for Open Systems Interconnect.This model defines seven separate layers. The layers in this model are:
• Application: The application layer is the layer that the users and user-applications most often interact with. Network communication is discussed in terms of availability of resources, partners to communicate with, and data synchronization.
• Presentation: The presentation layer is responsible for mapping resources and creating context. It is used to translate lower level networking data into data that applications expect to see.
• Session: The session layer is a connection handler. It creates, maintains, and destroys connections between nodes in a persistent way.
• Transport: The transport layer is responsible for handing the layers above it a reliable connection. In this context, reliable refers to the ability to verify that a piece of data was received intact at the other end of the connection. This layer can resend information that has been dropped or corrupted and can acknowledge the receipt of data to remote computers.
• Network: The network layer is used to route data between different nodes on the network. It uses addresses to be able to tell which computer to send information to. This layer can also break apart larger messages into smaller chunks to be reassembled on the opposite end.
• Data Link: This layer is implemented as a method of establishing and maintaining reliable links between different nodes or devices on a network using existing physical connections.
• Physical: The physical layer is responsible for handling the actual physical devices that are used to make a connection. This layer involves the bare software that manages physical connections as well as the hardware itself (like Ethernet).
โมเดล TCP/IP หรือที่รู้จักกันทั่วไปในชื่อชุดอินเทอร์เน็ตโปรโตคอล เป็นอีกหนึ่งโมเดลการแบ่งชั้นที่เรียบง่ายกว่าและได้รับการยอมรับอย่างกว้างขวาง โดยกำหนดเลเยอร์ที่แยกจากกันสี่เลเยอร์ ซึ่งบางเลเยอร์ทับซ้อนกับโมเดล OSI:
• Application: In this model, the application layer is responsible for creating and transmitting user data between applications. The applications can be on remote systems, and should appear to operate as if locally to the end user.
การสื่อสารเกิดขึ้นระหว่างเครือข่ายเพียร์
• Transport: The transport layer is responsible for communication between processes. This level of networking utilizes ports to address different services. It can build up unreliable or reliable connections depending on the type of protocol used.
• Internet: The internet layer is used to transport data from node to node in a network. This layer is aware of the endpoints of the connections, but does not worry about the actual connection needed to get from one place to another. IP addresses are defined in this layer as a way of reaching remote systems in an addressable manner.
• Link: The link layer implements the actual topology of the local network that allows the internet layer to present an addressable interface. It establishes connections between neighboring nodes to send data.
อินเทอร์เฟซ เป็นจุดสื่อสารเครือข่ายสำหรับคอมพิวเตอร์ของคุณ แต่ละอินเทอร์เฟซเชื่อมโยงกับอุปกรณ์เครือข่ายทางกายภาพหรือเสมือน โดยทั่วไป เซิร์ฟเวอร์ของคุณจะมีอินเทอร์เฟซเครือข่ายที่กำหนดค่าได้หนึ่งอินเทอร์เฟซสำหรับอีเธอร์เน็ตหรือการ์ดอินเทอร์เน็ตไร้สายแต่ละอันที่คุณมี นอกจากนี้ จะกำหนดอินเทอร์เฟซเครือข่ายเสมือนที่เรียกว่า "loopback" หรืออินเทอร์เฟซ localhost สิ่งนี้ใช้เป็นอินเทอร์เฟซในการเชื่อมต่อแอปพลิเคชันและกระบวนการบนคอมพิวเตอร์เครื่องเดียวกับแอปพลิเคชันและกระบวนการอื่น คุณสามารถเห็นสิ่งนี้เรียกว่าอินเทอร์เฟซ "lo" ในเครื่องมือหลายอย่าง
ระบบเครือข่ายทำงานโดยอาศัย piggybacks บนโปรโตคอลที่แตกต่างกันจำนวนหนึ่งซ้อนทับกัน ด้วยวิธีนี้ ข้อมูลชิ้นหนึ่งสามารถส่งข้อมูลได้โดยใช้หลายโปรโตคอลที่ห่อหุ้มไว้ภายในกันและกัน
Media Access Control (MAC) เป็นโปรโตคอลการสื่อสารที่ใช้ในการแยกแยะอุปกรณ์เฉพาะ อุปกรณ์แต่ละชิ้นควรได้รับที่อยู่ MAC ที่ไม่ซ้ำกันในระหว่างกระบวนการผลิตซึ่งจะทำให้อุปกรณ์แตกต่างจากอุปกรณ์อื่นๆ บนอินเทอร์เน็ต การกำหนดที่อยู่ฮาร์ดแวร์ด้วยที่อยู่ MAC ช่วยให้คุณสามารถอ้างอิงอุปกรณ์ด้วยค่าที่ไม่ซ้ำกัน แม้ว่าซอฟต์แวร์ที่อยู่ด้านบนอาจเปลี่ยนชื่อสำหรับอุปกรณ์เฉพาะนั้นระหว่างการทำงานก็ตาม การควบคุมการเข้าถึงสื่อเป็นหนึ่งในโปรโตคอลเดียวจากเลเยอร์ลิงก์ที่คุณมีแนวโน้มที่จะโต้ตอบด้วยเป็นประจำ
โปรโตคอล IP เป็นหนึ่งในโปรโตคอลพื้นฐานที่ช่วยให้อินเทอร์เน็ตทำงานได้ ที่อยู่ IP จะไม่ซ้ำกันในแต่ละเครือข่าย และช่วยให้เครื่องสามารถระบุที่อยู่อื่นๆ ทั่วทั้งเครือข่ายได้ มันถูกนำไปใช้บนเลเยอร์อินเทอร์เน็ตในรูปแบบ IP/TCP เครือข่ายสามารถเชื่อมโยงเข้าด้วยกันได้ แต่การรับส่งข้อมูลจะต้องถูกกำหนดเส้นทางเมื่อข้ามขอบเขตเครือข่าย โปรโตคอลนี้ถือว่าเครือข่ายที่ไม่น่าเชื่อถือและหลายเส้นทางไปยังปลายทางเดียวกันซึ่งสามารถเปลี่ยนระหว่างกันได้แบบไดนามิก มีการใช้งานโปรโตคอลที่แตกต่างกันจำนวนหนึ่ง การใช้งานที่พบบ่อยที่สุดในปัจจุบันคือ IPv4 แม้ว่า IPv6 จะได้รับความนิยมเพิ่มขึ้นเป็นทางเลือกเนื่องจากขาดแคลนที่อยู่ IPv4 และการปรับปรุงความสามารถของโปรโตคอล
ICMP: โปรโตคอลข้อความควบคุมอินเทอร์เน็ต ใช้เพื่อส่งข้อความระหว่างอุปกรณ์เพื่อระบุความพร้อมใช้งานหรือเงื่อนไขข้อผิดพลาด แพ็กเก็ตเหล่านี้ใช้ในเครื่องมือวินิจฉัยเครือข่ายที่หลากหลาย เช่น ping และ Traceroute โดยปกติแพ็กเก็ต ICMP จะถูกส่งเมื่อแพ็กเก็ตประเภทอื่นประสบปัญหาบางอย่าง โดยพื้นฐานแล้วจะใช้เป็นกลไกตอบรับสำหรับการสื่อสารเครือข่าย
TCP: โปรโตคอลควบคุมการส่งข้อมูล ถูกนำมาใช้ในเลเยอร์การขนส่งของโมเดล IP/TCP และใช้เพื่อสร้างการเชื่อมต่อที่เชื่อถือได้ TCP เป็นหนึ่งในโปรโตคอลที่ห่อหุ้มข้อมูลลงในแพ็กเก็ต จากนั้นจะถ่ายโอนสิ่งเหล่านี้ไปยังจุดสิ้นสุดการเชื่อมต่อระยะไกลโดยใช้วิธีการที่มีอยู่ในชั้นล่าง ในอีกด้านหนึ่ง สามารถตรวจสอบข้อผิดพลาด ขอให้ส่งชิ้นส่วนบางชิ้นอีกครั้ง และประกอบข้อมูลกลับเป็นชิ้นเดียวเพื่อส่งไปยังเลเยอร์แอปพลิเคชัน โปรโตคอลจะสร้างการเชื่อมต่อก่อนการถ่ายโอนข้อมูลโดยใช้ระบบที่เรียกว่าการจับมือสามทาง นี่เป็นวิธีที่ปลายทั้งสองด้านของการสื่อสารรับทราบคำขอและตกลงวิธีการรับรองความน่าเชื่อถือของข้อมูล หลังจากส่งข้อมูลแล้ว การเชื่อมต่อจะถูกตัดลงโดยใช้การจับมือสี่ทิศทางที่คล้ายกัน TCP เป็นโปรโตคอลที่ถูกเลือกใช้สำหรับการใช้งานอินเทอร์เน็ตที่ได้รับความนิยมสูงสุด รวมถึง WWW, FTP, SSH และอีเมล พูดได้อย่างปลอดภัยว่าอินเทอร์เน็ตที่เรารู้จักในปัจจุบันคงอยู่ไม่ได้หากไม่มี TCP
UDP: โปรโตคอลเดตาแกรมผู้ใช้ เป็นโปรโตคอลคู่หูยอดนิยมสำหรับ TCP และยังนำไปใช้ในเลเยอร์การขนส่งด้วย ความแตกต่างพื้นฐานระหว่าง UDP และ TCP คือ UDP มีการถ่ายโอนข้อมูลที่ไม่น่าเชื่อถือ ไม่ได้ตรวจสอบว่าได้รับข้อมูลที่ปลายอีกด้านหนึ่งของการเชื่อมต่อ นี่อาจฟังดูเหมือนเป็นสิ่งที่ไม่ดี และสำหรับหลายๆ จุดประสงค์ มันเป็นอย่างนั้น อย่างไรก็ตาม มันก็มีความสำคัญอย่างยิ่งสำหรับบางฟังก์ชันเช่นกัน ไม่จำเป็นต้องรอการยืนยันว่าได้รับข้อมูลและบังคับให้ส่งข้อมูลอีกครั้ง UDP เร็วกว่า TCP มาก มันไม่ได้สร้างการเชื่อมต่อกับโฮสต์ระยะไกล เพียงแต่ส่งข้อมูลไปยังโฮสต์นั้นและไม่สนใจว่าจะยอมรับหรือไม่ เนื่องจาก UDP เป็นธุรกรรมธรรมดา จึงมีประโยชน์สำหรับการสื่อสารทั่วไป เช่น การสืบค้นทรัพยากรเครือข่าย นอกจากนี้ยังไม่รักษาสถานะ ซึ่งทำให้เหมาะสำหรับการส่งข้อมูลจากเครื่องหนึ่งไปยังไคลเอนต์แบบเรียลไทม์จำนวนมาก ทำให้เหมาะสำหรับ VOIP เกม และแอปพลิเคชันอื่นๆ ที่ไม่สามารถเกิดความล่าช้าได้
HTTP: โปรโตคอลการถ่ายโอนไฮเปอร์เท็กซ์ เป็นโปรโตคอลที่กำหนดไว้ในเลเยอร์แอปพลิเคชันซึ่งเป็นพื้นฐานสำหรับการสื่อสารบนเว็บ HTTP กำหนดฟังก์ชันจำนวนหนึ่งที่บอกระบบระยะไกลว่าคุณกำลังร้องขออะไร ตัวอย่างเช่น GET, POST และ DELETE ล้วนโต้ตอบกับข้อมูลที่ร้องขอในลักษณะที่แตกต่างออกไป
FTP: โปรโตคอลการถ่ายโอนไฟล์ อยู่ในเลเยอร์แอปพลิเคชันและมีวิธีการถ่ายโอนไฟล์ที่สมบูรณ์จากโฮสต์หนึ่งไปยังอีกโฮสต์หนึ่ง มันไม่ปลอดภัยโดยเนื้อแท้ ดังนั้นจึงไม่แนะนำสำหรับเครือข่ายภายนอกใดๆ เว้นแต่จะมีการปรับใช้เป็นทรัพยากรสาธารณะที่ดาวน์โหลดเท่านั้น
DNS: ระบบชื่อโดเมน เป็นโปรโตคอลชั้นแอปพลิเคชันที่ใช้เพื่อสร้างกลไกการตั้งชื่อที่เป็นมิตรต่อมนุษย์สำหรับทรัพยากรอินเทอร์เน็ต เป็นสิ่งที่เชื่อมโยงชื่อโดเมนกับที่อยู่ IP และช่วยให้คุณเข้าถึงเว็บไซต์ตามชื่อในเบราว์เซอร์ของคุณ
SSH: Secure Shell เป็นโปรโตคอลที่เข้ารหัสที่ใช้งานในเลเยอร์แอปพลิเคชันที่สามารถใช้เพื่อสื่อสารกับเซิร์ฟเวอร์ระยะไกลได้อย่างปลอดภัย เทคโนโลยีเพิ่มเติมมากมายถูกสร้างขึ้นรอบๆ โปรโตคอลนี้ เนื่องจากมีการเข้ารหัสแบบ end-to-end และความแพร่หลาย มีโปรโตคอลอื่นๆ อีกมากมายที่เราไม่ได้กล่าวถึงซึ่งมีความสำคัญเท่าเทียมกัน อย่างไรก็ตาม สิ่งนี้จะทำให้คุณเห็นภาพรวมที่ดีของเทคโนโลยีพื้นฐานบางอย่างที่ทำให้อินเทอร์เน็ตและเครือข่ายเป็นไปได้
REST(REpresentational State Transfer) เป็นรูปแบบสถาปัตยกรรมสำหรับจัดทำมาตรฐานระหว่างระบบคอมพิวเตอร์บนเว็บ ทำให้ระบบสามารถสื่อสารระหว่างกันได้ง่ายขึ้น
JSON Web Token (JWT) เป็นวิธีการที่ปลอดภัยต่อ URL ขนาดกะทัดรัดในการแสดงการอ้างสิทธิ์ที่จะถ่ายโอนระหว่างสองฝ่าย การอ้างสิทธิ์ใน JWT จะถูกเข้ารหัสเป็นออบเจ็กต์ JSON ที่ลงนามแบบดิจิทัลโดยใช้ JSON Web Signature (JWS)
OAuth 2.0 เป็นเฟรมเวิร์กการอนุญาตโอเพ่นซอร์สที่ช่วยให้แอปพลิเคชันได้รับการเข้าถึงบัญชีผู้ใช้แบบจำกัดบนบริการ HTTP เช่น Amazon, Google, Facebook, Microsoft, Twitter GitHub และ DigitalOcean ทำงานโดยการมอบหมายการตรวจสอบสิทธิ์ผู้ใช้ให้กับบริการที่โฮสต์บัญชีผู้ใช้ และอนุญาตให้แอปพลิเคชันบุคคลที่สามเข้าถึงบัญชีผู้ใช้
กลับไปด้านบน
สถาปัตยกรรมคอนเทนเนอร์ ที่มา: Containerd.io
โปรแกรมการฝึกอบรมนักเทียบท่า
ใบรับรอง Docker Certified Associate (DCA)
เอกสารนักเทียบท่า | เอกสารนักเทียบท่า
การประชุมเชิงปฏิบัติการนักเทียบท่า
หลักสูตรนักเทียบท่าบน Udemy
หลักสูตรนักเทียบท่าบน Coursera
หลักสูตรนักเทียบท่าบน edX
หลักสูตรนักเทียบท่าเกี่ยวกับการเรียนรู้ Linkedin
Docker เป็นแพลตฟอร์มแบบเปิดสำหรับการพัฒนา จัดส่ง และใช้งานแอปพลิเคชัน Docker ช่วยให้คุณสามารถแยกแอปพลิเคชันของคุณออกจากโครงสร้างพื้นฐาน เพื่อให้คุณสามารถส่งมอบซอฟต์แวร์ที่ทำงานร่วมกับผู้จำหน่ายระบบคลาวด์, Linux และ Windows รวมถึง Microsoft ได้อย่างรวดเร็ว
Docker Enterprise คือการสมัครสมาชิกซึ่งรวมถึงซอฟต์แวร์ แพลตฟอร์มคอนเทนเนอร์ที่รองรับและได้รับการรับรองสำหรับ CentOS, Red Hat Enterprise Linux (RHEL), Ubuntu, SUSE Linux Enterprise Server (SLES), Oracle Linux และ Windows Server 2016 รวมถึงผู้ให้บริการคลาวด์ AWS และ สีฟ้า ในเดือนพฤศจิกายน 2019 ธุรกิจแพลตฟอร์ม Enterprise ของ Docker ถูกซื้อกิจการโดย Mirantis
Docker Desktop เป็นแอปพลิเคชันสำหรับเครื่อง MacOS และ Windows สำหรับการสร้างและการแชร์แอปพลิเคชันคอนเทนเนอร์และไมโครเซอร์วิส Docker Desktop มอบความเร็ว ตัวเลือก และความปลอดภัยที่คุณต้องการสำหรับการออกแบบและส่งมอบแอปพลิเคชันแบบคอนเทนเนอร์บนเดสก์ท็อปของคุณ Docker Desktop ประกอบด้วย Docker App, เครื่องมือสำหรับนักพัฒนา, Kubernetes และการซิงโครไนซ์เวอร์ชันกับ Docker Engines ที่ใช้งานจริง
Docker Hub เป็นห้องสมุดและชุมชนที่ใหญ่ที่สุดในโลกสำหรับคอนเทนเนอร์อิมเมจ เรียกดูคอนเทนเนอร์อิมเมจกว่า 100,000 รายการจากผู้จำหน่ายซอฟต์แวร์ โครงการโอเพ่นซอร์ส และชุมชน
Docker Compose เป็นเครื่องมือที่พัฒนาขึ้นเพื่อช่วยกำหนดและแบ่งปันแอปพลิเคชันหลายคอนเทนเนอร์ ด้วย Docker Compose คุณสามารถสร้างไฟล์ YAML เพื่อกำหนดบริการได้ และด้วยคำสั่งเดียว ก็สามารถหมุนทุกอย่างขึ้นหรือรื้อทั้งหมดออกได้
Docker Swarm คือกลุ่มระบบการทำคลัสเตอร์ Docker-native เป็นเครื่องมือง่ายๆ ที่ควบคุมคลัสเตอร์ของโฮสต์ Docker และเปิดเผยเป็นโฮสต์ "เสมือน" เดียว
Dockerfile เป็นเอกสารข้อความที่มีคำสั่งทั้งหมดที่ผู้ใช้สามารถเรียกใช้บนบรรทัดคำสั่งเพื่อประกอบรูปภาพ การใช้นักเทียบท่าผู้ใช้บิลด์สามารถสร้างบิลด์อัตโนมัติที่ดำเนินการคำสั่งบรรทัดคำสั่งหลายคำสั่งติดต่อกัน
Docker Containers เป็นหน่วยมาตรฐานของซอฟต์แวร์ที่รวบรวมโค้ดและการขึ้นต่อกันทั้งหมด ดังนั้นแอปพลิเคชันจึงทำงานได้อย่างรวดเร็วและเชื่อถือได้จากสภาพแวดล้อมการประมวลผลหนึ่งไปยังอีกสภาพแวดล้อมหนึ่ง
Docker Engine คือรันไทม์คอนเทนเนอร์ที่ทำงานบนระบบปฏิบัติการ Linux (CentOS, Debian, Fedora, Oracle Linux, RHEL, SUSE และ Ubuntu) และระบบปฏิบัติการ Windows Server ต่างๆ Docker สร้างเครื่องมือที่เรียบง่ายและวิธีการบรรจุภัณฑ์สากลที่รวมการพึ่งพาแอปพลิเคชันทั้งหมดไว้ภายในคอนเทนเนอร์ จากนั้นจึงทำงานบน Docker Engine
Docker Images เป็นแพ็คเกจซอฟต์แวร์แบบสแตนด์อโลนน้ำหนักเบาที่ปฏิบัติการได้ ซึ่งมีทุกสิ่งที่จำเป็นในการรันแอปพลิเคชัน: โค้ด รันไทม์ เครื่องมือระบบ ไลบรารีระบบ และการตั้งค่า รูปภาพมีเลเยอร์กลางที่เพิ่มการนำกลับมาใช้ใหม่ ลดการใช้ดิสก์ และเพิ่มความเร็วในการสร้างนักเทียบท่าโดยอนุญาตให้แต่ละขั้นตอนถูกแคช เลเยอร์กลางเหล่านี้จะไม่แสดงตามค่าเริ่มต้น SIZE คือพื้นที่สะสมที่รูปภาพและรูปภาพหลักทั้งหมดนำไปใช้
Docker Network คือการแสดงข้อมูลโดยละเอียดเกี่ยวกับเครือข่ายตั้งแต่หนึ่งเครือข่ายขึ้นไป
Docker Daemon เป็นบริการที่เริ่มต้นโดยยูทิลิตี้ระบบ ไม่ใช่โดยผู้ใช้ด้วยตนเอง ทำให้ง่ายต่อการเริ่ม Docker โดยอัตโนมัติเมื่อเครื่องรีบูต คำสั่งในการเริ่ม Docker ขึ้นอยู่กับระบบปฏิบัติการของคุณ ปัจจุบันทำงานบน Linux เท่านั้นเนื่องจากขึ้นอยู่กับคุณสมบัติเคอร์เนล Linux หลายประการ แต่มีหลายวิธีในการรัน Docker บน MacOS และ Windows เช่นกันโดยการกำหนดค่ายูทิลิตี้ระบบปฏิบัติการ
Docker Storage คือไดรเวอร์ที่ควบคุมวิธีจัดเก็บและจัดการรูปภาพและคอนเทนเนอร์บนโฮสต์ Docker ของคุณ
Kitematic เป็นแอปพลิเคชันง่ายๆ สำหรับจัดการคอนเทนเนอร์ Docker บน Mac, Linux และ Windows ช่วยให้คุณสามารถควบคุมคอนเทนเนอร์แอปของคุณจากอินเทอร์เฟซผู้ใช้แบบกราฟิก (GUI)
Open Container Initiative เป็นโครงสร้างการกำกับดูแลแบบเปิดโดยมีวัตถุประสงค์เพื่อสร้างมาตรฐานอุตสาหกรรมแบบเปิดเกี่ยวกับรูปแบบคอนเทนเนอร์และรันไทม์
Buildah เป็นเครื่องมือบรรทัดคำสั่งเพื่อสร้างอิมเมจ Open Container Initiative (OCI) สามารถใช้ได้กับ Docker, Podman, Kubernetes
Podman คือเครื่องมือเนทิฟ Linux แบบโอเพ่นซอร์สที่ไร้ daemon ซึ่งได้รับการออกแบบมาเพื่อให้ง่ายต่อการค้นหา รัน สร้าง แชร์ และปรับใช้แอปพลิเคชันโดยใช้คอนเทนเนอร์ Open Containers Initiative (OCI) และคอนเทนเนอร์อิมเมจ Podman มีอินเทอร์เฟซบรรทัดคำสั่ง (CLI) ที่คุ้นเคยสำหรับทุกคนที่เคยใช้ Docker Container Engine
Containerd เป็น daemon ที่จัดการวงจรการใช้งานคอนเทนเนอร์ทั้งหมดของระบบโฮสต์ ตั้งแต่การถ่ายโอนรูปภาพและการจัดเก็บ ไปจนถึงการดำเนินการและควบคุมคอนเทนเนอร์ ไปจนถึงพื้นที่จัดเก็บระดับต่ำไปจนถึงไฟล์แนบเครือข่ายและอื่นๆ มันสามารถใช้ได้สำหรับ Linux และ Windows
กลับไปด้านบน
Kubernetes (K8s) คือระบบโอเพ่นซอร์สสำหรับการปรับใช้ การปรับขนาด และการจัดการแอปพลิเคชันในคอนเทนเนอร์โดยอัตโนมัติ
รับการรับรอง Kubernetes
เริ่มต้นใช้งาน Kubernetes บน AWS
Kubernetes บน Microsoft Azure
ข้อมูลเบื้องต้นเกี่ยวกับบริการ Azure Kubernetes
Azure Red Hat OpenShift
เริ่มต้นใช้งาน Google Cloud
เริ่มต้นใช้งาน Kubernetes บน Red Hat
เริ่มต้นใช้งาน Kubernetes บน IBM
Red Hat OpenShift บน IBM Cloud
เปิดใช้งาน OpenShift Virtualization บน Red Hat OpenShift
พื้นฐาน YAML ใน Kubernetes
คลาวด์ยืดหยุ่นบน Kubernetes
นักเทียบท่าและ Kubernetes
ใช้งาน Apache Spark บน Kubernetes
Kubernetes ข้าม VMware vRealize Automation
VMware Tanzu Kubernetes กริด
ทุกวิถีทางที่ VMware Tanzu ทำงานร่วมกับ AWS
VMware Tanzu การศึกษา
การใช้ Ansible ในสภาพแวดล้อม Cloud-Native Kubernetes
การจัดการวัตถุ Kubernetes (K8s) ด้วย Ansible
การตั้งค่าคลัสเตอร์ Kubernetes โดยใช้ Vagrant และ Ansible
การรัน MongoDB ด้วย Kubernetes
Kubernetes Fluentd
ทำความเข้าใจกับ GitLab Kubernetes Agent ใหม่
แนะนำกระบวนการท้องถิ่นด้วย Kubernetes สำหรับ Visual Studio 2019
ผู้ร่วมให้ข้อมูล Kubernetes
KubeAcademy จาก VMware
บทช่วยสอน Kubernetes จาก Pulumi
สนามเด็กเล่น Kubernetes โดย Katacoda
หลักสูตรไมโครเซอร์วิสที่ปรับขนาดได้ด้วย Kubernetes จาก Udacity
Open Container Initiative เป็นโครงสร้างการกำกับดูแลแบบเปิดโดยมีวัตถุประสงค์เพื่อสร้างมาตรฐานอุตสาหกรรมแบบเปิดเกี่ยวกับรูปแบบคอนเทนเนอร์และรันไทม์
Buildah เป็นเครื่องมือบรรทัดคำสั่งเพื่อสร้างอิมเมจ Open Container Initiative (OCI) สามารถใช้ได้กับ Docker, Podman, Kubernetes
Podman คือเครื่องมือเนทิฟ Linux แบบโอเพ่นซอร์สที่ไร้ daemon ซึ่งได้รับการออกแบบมาเพื่อให้ง่ายต่อการค้นหา รัน สร้าง แชร์ และปรับใช้แอปพลิเคชันโดยใช้คอนเทนเนอร์ Open Containers Initiative (OCI) และคอนเทนเนอร์อิมเมจ Podman มีอินเทอร์เฟซบรรทัดคำสั่ง (CLI) ที่คุ้นเคยสำหรับทุกคนที่เคยใช้ Docker Container Engine
Containerd เป็น daemon ที่จัดการวงจรการใช้งานคอนเทนเนอร์ทั้งหมดของระบบโฮสต์ ตั้งแต่การถ่ายโอนรูปภาพและการจัดเก็บ ไปจนถึงการดำเนินการและควบคุมคอนเทนเนอร์ ไปจนถึงพื้นที่จัดเก็บระดับต่ำไปจนถึงไฟล์แนบเครือข่ายและอื่นๆ มันสามารถใช้ได้สำหรับ Linux และ Windows
Google Kubernetes Engine (GKE) คือสภาพแวดล้อมที่มีการจัดการและพร้อมใช้งานจริงสำหรับการเรียกใช้แอปพลิเคชันแบบคอนเทนเนอร์
Azure Kubernetes Service (AKS) คือ Kubernetes แบบไร้เซิร์ฟเวอร์ พร้อมด้วยประสบการณ์การบูรณาการอย่างต่อเนื่องและการส่งมอบอย่างต่อเนื่อง (CI/CD) และการรักษาความปลอดภัยและการกำกับดูแลระดับองค์กร รวมทีมพัฒนาและปฏิบัติการของคุณไว้บนแพลตฟอร์มเดียวเพื่อสร้าง ส่งมอบ และปรับขนาดแอปพลิเคชันอย่างรวดเร็วด้วยความมั่นใจ
Amazon EKS เป็นเครื่องมือที่เรียกใช้อินสแตนซ์เครื่องบินควบคุม Kubernetes ทั่วทั้ง Availability Zone หลายแห่งเพื่อให้แน่ใจว่ามีความพร้อมใช้งานสูง
AWS Controllers for Kubernetes (ACK) เป็นเครื่องมือใหม่ที่ช่วยให้คุณจัดการบริการ AWS จาก Kubernetes ได้โดยตรง ACK ทำให้การสร้างแอปพลิเคชัน Kubernetes ที่ปรับขนาดได้และมีความพร้อมใช้งานสูงที่ใช้บริการของ AWS เป็นเรื่องง่าย
Container Engine for Kubernetes (OKE) คือบริการประสานคอนเทนเนอร์ที่จัดการโดย Oracle ซึ่งสามารถลดเวลาและต้นทุนในการสร้างแอปพลิเคชันเนทิฟบนคลาวด์สมัยใหม่ได้ ไม่เหมือนกับผู้จำหน่ายอื่นๆ ส่วนใหญ่ Oracle Cloud Infrastructure นำเสนอ Container Engine สำหรับ Kubernetes เป็นบริการฟรีที่ทำงานบนการประมวลผลที่มีประสิทธิภาพสูงกว่าและมีค่าใช้จ่ายต่ำกว่า
Anthos เป็นแพลตฟอร์มการจัดการแอปพลิเคชันสมัยใหม่ที่มอบประสบการณ์การพัฒนาและการดำเนินงานที่สอดคล้องกันสำหรับสภาพแวดล้อมระบบคลาวด์และในองค์กร
Red Hat Openshift เป็นแพลตฟอร์ม Kubernetes ที่มีการจัดการเต็มรูปแบบ ซึ่งเป็นรากฐานสำหรับการปรับใช้ภายในองค์กร ไฮบริด และมัลติคลาวด์
OKD คือการเผยแพร่ Kubernetes ในชุมชนที่ได้รับการปรับให้เหมาะสมสำหรับการพัฒนาแอปพลิเคชันอย่างต่อเนื่องและการปรับใช้หลายผู้เช่า OKD เพิ่มเครื่องมือสำหรับนักพัฒนาและการดำเนินงานที่เน้นการดำเนินงานนอกเหนือจาก Kubernetes เพื่อให้เกิดการพัฒนาแอปพลิเคชันอย่างรวดเร็ว การปรับใช้และการปรับขนาดที่ง่ายดาย และการบำรุงรักษาวงจรชีวิตระยะยาวสำหรับทีมขนาดเล็กและขนาดใหญ่
Odo เป็นเครื่องมือ CLI ที่รวดเร็ว ทำซ้ำ และตรงไปตรงมาสำหรับนักพัฒนาที่เขียน สร้าง และปรับใช้แอปพลิเคชันบน Kubernetes และ OpenShift
Kata Operator เป็นผู้ดำเนินการในการจัดการวงจรชีวิต (ติดตั้ง/อัปเกรด/ถอนการติดตั้ง) ของ Kata Runtime บน Openshift รวมถึงคลัสเตอร์ Kubernetes
ธานอสคือชุดส่วนประกอบที่สามารถประกอบเป็นระบบเมตริกที่มีความพร้อมใช้งานสูงพร้อมความจุพื้นที่เก็บข้อมูลไม่จำกัด ซึ่งสามารถเพิ่มได้อย่างราบรื่นนอกเหนือจากการใช้งาน Prometheus ที่มีอยู่
OpenShift Hive เป็นตัวดำเนินการที่ทำงานเป็นบริการบน Kubernetes/OpenShift สามารถใช้บริการ Hive เพื่อจัดเตรียมและดำเนินการกำหนดค่าเริ่มต้นของคลัสเตอร์ OpenShift 4 ได้
Rook เป็นเครื่องมือที่เปลี่ยนระบบจัดเก็บข้อมูลแบบกระจายให้เป็นบริการจัดเก็บข้อมูลแบบจัดการด้วยตนเอง ปรับขนาดได้เอง และซ่อมแซมตัวเองได้ โดยทำให้งานของผู้ดูแลระบบพื้นที่จัดเก็บข้อมูลเป็นแบบอัตโนมัติ: การปรับใช้ การบูตสแตรป การกำหนดค่า การจัดเตรียม การปรับขนาด การอัปเกรด การโยกย้าย การกู้คืนความเสียหาย การตรวจสอบ และการจัดการทรัพยากร
VMware Tanzu เป็นแพลตฟอร์มการจัดการแบบรวมศูนย์สำหรับการดำเนินงานและการรักษาความปลอดภัยโครงสร้างพื้นฐาน Kubernetes ของคุณและแอปพลิเคชันสมัยใหม่ในหลายๆ ทีมและระบบคลาวด์ส่วนตัว/สาธารณะอย่างต่อเนื่อง
Kubespray เป็นเครื่องมือที่รวม Kubernetes และ Ansible เพื่อติดตั้งคลัสเตอร์ Kubernetes ที่สามารถปรับใช้บน AWS, GCE, Azure, OpenStack, vSphere, Packet (bare metal), Oracle Cloud Infrastructure (Experimental) หรือ Baremetal ได้อย่างง่ายดาย
KubeInit มี Playbooks และบทบาท Ansible สำหรับการปรับใช้และการกำหนดค่าของการกระจาย Kubernetes หลายรายการ
Rancher เป็นชุดซอฟต์แวร์ที่สมบูรณ์แบบสำหรับทีมที่ใช้คอนเทนเนอร์ โดยจะจัดการกับความท้าทายด้านการปฏิบัติงานและความปลอดภัยของการจัดการคลัสเตอร์ Kubernetes หลายคลัสเตอร์ ในขณะเดียวกันก็มอบเครื่องมือแบบผสานรวมให้กับทีม DevOps สำหรับการรันเวิร์กโหลดแบบคอนเทนเนอร์
K3s เป็นการกระจาย Kubernetes ที่ได้รับการรับรองและมีความพร้อมใช้งานสูง ซึ่งออกแบบมาสำหรับปริมาณงานการผลิตในสถานที่ห่างไกลซึ่งมีทรัพยากรจำกัด หรือภายในอุปกรณ์ IoT โดยไม่มีใครดูแล
Helm เป็นเครื่องมือ Kubernetes Package Manager ที่ช่วยให้ติดตั้งและจัดการแอปพลิเคชัน Kubernetes ได้ง่ายขึ้น
Knative เป็นแพลตฟอร์มบน Kubernetes เพื่อสร้าง ปรับใช้ และจัดการปริมาณงานแบบไร้เซิร์ฟเวอร์สมัยใหม่ Knative ดูแลรายละเอียดค่าใช้จ่ายในการดำเนินงานของเครือข่าย การปรับสเกลอัตโนมัติ (แม้จะเป็นศูนย์) และการติดตามการแก้ไข
KubeFlow เป็นเครื่องมือที่ออกแบบมาโดยเฉพาะเพื่อทำให้เวิร์กโฟลว์การเรียนรู้ของเครื่อง (ML) ใช้งานบน Kubernetes ได้ง่าย พกพาสะดวก และปรับขนาดได้
Etcd คือพื้นที่จัดเก็บคีย์-ค่าแบบกระจายที่ให้วิธีที่เชื่อถือได้ในการจัดเก็บข้อมูลที่จำเป็นต้องเข้าถึงโดยระบบแบบกระจายหรือคลัสเตอร์ของเครื่องจักร Etcd ใช้เป็นแบ็กเอนด์สำหรับการค้นหาบริการและจัดเก็บสถานะคลัสเตอร์และการกำหนดค่าสำหรับ Kubernetes
OpenEBS เป็นเครื่องมือที่ใช้ Kubernetes เพื่อสร้างแอปพลิเคชันเก็บสถานะโดยใช้ Container Attached Storage
Container Storage Interface (CSI) คือ API ที่ช่วยให้แพลตฟอร์มการจัดการคอนเทนเนอร์ เช่น Kubernetes สื่อสารกับข้อมูลที่จัดเก็บได้อย่างราบรื่นผ่านปลั๊กอิน
MicroK8s เป็นเครื่องมือที่มอบประสบการณ์ Kubernetes เต็มรูปแบบ ในการปรับใช้แบบคอนเทนเนอร์เต็มรูปแบบพร้อมการอัปเดตแบบ over-the-air แบบบีบอัดเพื่อการดำเนินงานที่เชื่อถือได้เป็นพิเศษ รองรับบน Linux, Windows และ MacOS
Charmed Kubernetes เป็นแพลตฟอร์ม Kubernetes ที่บูรณาการอย่างดี เทิร์นคีย์ และสอดคล้องกัน ซึ่งได้รับการปรับให้เหมาะกับสภาพแวดล้อมมัลติคลาวด์ของคุณที่พัฒนาโดย Canonical
Grafana Kubernetes App คือค่าผ่านทางที่ช่วยให้คุณสามารถตรวจสอบประสิทธิภาพของคลัสเตอร์ Kubernetes ได้ ประกอบด้วย 4 แดชบอร์ด ได้แก่ คลัสเตอร์ โหนด พ็อด/คอนเทนเนอร์ และการปรับใช้ ช่วยให้สามารถปรับใช้ Prometheus Exporter ที่จำเป็นได้โดยอัตโนมัติ และการกำหนดค่า Scrape เริ่มต้นเพื่อใช้กับการใช้งาน Prometheus ในคลัสเตอร์ของคุณ
KubeEdge คือระบบโอเพ่นซอร์สสำหรับขยายความสามารถในการประสานแอปพลิเคชันแบบคอนเทนเนอร์ดั้งเดิมไปยังโฮสต์ที่ Edge โดยสร้างขึ้นบน kubernetes และให้การสนับสนุนโครงสร้างพื้นฐานพื้นฐานสำหรับเครือข่าย แอป การปรับใช้และการซิงโครไนซ์ข้อมูลเมตาระหว่างคลาวด์และ Edge
Lens เป็น IDE ที่ทรงพลังที่สุดสำหรับผู้ที่ต้องการจัดการกับคลัสเตอร์ Kubernetes ในแต่ละวัน มีการรองรับระบบปฏิบัติการ MacOS, Windows และ Linux
Flux CD เป็นเครื่องมือที่ช่วยรับรองโดยอัตโนมัติว่าสถานะของคลัสเตอร์ Kubernetes ตรงกับการกำหนดค่าที่คุณระบุใน Git โดยจะใช้โอเปอเรเตอร์ในคลัสเตอร์เพื่อทริกเกอร์การปรับใช้ภายใน Kubernetes ซึ่งหมายความว่าคุณไม่จำเป็นต้องมีเครื่องมือจัดส่งต่อเนื่องแยกต่างหาก
Platform9 Managed Kubernetes (PMK) คือบริการ Kubernetes ที่รับประกันการดำเนินงานวันที่ 2 โดยอัตโนมัติอย่างเต็มรูปแบบด้วย SLA 99.9% ในทุกสภาพแวดล้อม ไม่ว่าจะในศูนย์ข้อมูล ระบบคลาวด์สาธารณะ หรือที่ Edge
กลับไปด้านบน
Playbook Ansible สำหรับการพัฒนา Mac โดย Jeff Geerling
Ansible เป็นเครื่องมืออัตโนมัติด้านไอทีแบบง่ายๆ ที่ทำให้การจัดเตรียมระบบคลาวด์ การจัดการการกำหนดค่า การปรับใช้แอปพลิเคชัน การจัดระบบภายในบริการ และความต้องการด้านไอทีอื่นๆ เป็นแบบอัตโนมัติ ใช้ภาษาที่ง่ายมาก (YAML ในรูปแบบของ Ansible Playbooks) ที่ช่วยให้คุณสามารถอธิบายงานอัตโนมัติของคุณในลักษณะที่ใช้ภาษาอังกฤษธรรมดา Anisble ทำงานบน Linux (Red Hat EnterPrise Linux (RHEL) และ Ubuntu) และ Microsoft Windows
การฝึกอบรม Red Hat สำหรับ Ansible
หลักสูตร Ansible ออนไลน์ยอดนิยมจาก Udemy
รู้เบื้องต้นเกี่ยวกับ Ansible: ความรู้พื้นฐานเกี่ยวกับ Coursera
การเรียนรู้พื้นฐานที่สามารถเข้าใจได้บนพหูพจน์
ขอแนะนำแพลตฟอร์ม Red Hat Ansible Automation 2.1
เอกสารที่สามารถเข้าใจได้
คู่มือผู้ใช้ Galaxy แบบ Ansible
กรณีการใช้งานที่เข้าใจได้
บูรณาการที่เข้าใจได้
ภาพรวมคอลเลกชัน Ansible
การทำงานกับหนังสือเล่น
Ansible สำหรับตัวอย่าง DevOps โดย Jeff Geerling
เริ่มต้นใช้งาน: การเขียน Playbook เล่มแรกของคุณ - อ่านได้
การทำงานกับโมดูลใน Ansible
แนวทางปฏิบัติที่ดีที่สุดที่สามารถเข้าใจได้: บทบาทและโมดูล
การทำงานกับเครื่องมือบรรทัดคำสั่งสำหรับ Ansible
การเข้ารหัสเนื้อหาด้วย Ansible Vault
การใช้ห้องนิรภัยใน Playbooks ด้วย Ansible
การใช้ Ansible กับ Azure
การกำหนดค่า Ansible บน Azure VM
วิธีใช้ Ansible: คู่มือสูตรโกง Ansible จาก DigitalOcean
ข้อมูลเบื้องต้นเกี่ยวกับ Ansible บน Linode | ห้องทดลองเชิงพื้นที่
Ansible Automation Hub เป็นสถานที่อย่างเป็นทางการในการค้นหาและดาวน์โหลดคอลเลกชันที่รองรับซึ่งรวมอยู่ในส่วนหนึ่งของการสมัครสมาชิกแพลตฟอร์ม ANSIBLE Automation คอลเลกชันเนื้อหาเหล่านี้มีโมดูลปลั๊กอินบทบาทและ playbooks ในแพ็คเกจที่ดาวน์โหลดได้
คอลเลกชันเป็นรูปแบบการแจกจ่ายสำหรับเนื้อหา Ansible ซึ่งอาจรวมถึง playbooks บทบาทโมดูลและปลั๊กอิน เมื่อโมดูลย้ายจากที่เก็บหลัก Ansible ไปยังคอลเลกชันเอกสารโมดูลจะย้ายไปยังหน้าคอลเลกชัน
ANSIBLE LINT เป็นเครื่องมือบรรทัดคำสั่งสำหรับ Playbooks ผ้าสำลีบทบาทและคอลเลกชันที่มุ่งเน้นไปที่ผู้ใช้ Ansible ใด ๆ เป้าหมายหลักของมันคือการส่งเสริมการปฏิบัติรูปแบบและพฤติกรรมที่พิสูจน์แล้วในขณะที่หลีกเลี่ยงข้อผิดพลาดทั่วไปที่สามารถนำไปสู่ข้อบกพร่องหรือทำให้รหัสยากขึ้นเพื่อรักษา
ANSIBLE CMDB เป็นเครื่องมือที่ใช้ผลลัพธ์ของการรวบรวมข้อเท็จจริงของ Ansible และแปลงเป็นหน้าภาพรวม HTML แบบคงที่ที่มีข้อมูลการกำหนดค่าระบบ
กราฟเกอร์สินค้าคงคลัง ANSIBLE จะแสดงลำดับชั้นการสืบทอดสินค้าคงคลังและในระดับใดที่ตัวแปรถูกกำหนดไว้ในสินค้าคงคลัง
Ansible Playbook Grapher เป็นเครื่องมือบรรทัดคำสั่งเพื่อสร้างกราฟที่แสดงถึงงานและบทบาทของ Ansible Playbook ของคุณ
ANSIBLE Shell เป็นเปลือกแบบโต้ตอบสำหรับ Ansible พร้อมแท็บในตัวให้เสร็จสมบูรณ์สำหรับโมดูลทั้งหมด
Ansible Silo เป็นสภาพแวดล้อมที่มีอยู่ในตัวเองโดย Docker
ANSIGENOME เป็นเครื่องมือบรรทัดคำสั่งที่ออกแบบมาเพื่อช่วยให้คุณจัดการบทบาท Ansible ของคุณ
ARA เป็นบันทึกการทำงานของ Ansible Playbook และทำให้ข้อมูลที่บันทึกไว้พร้อมใช้งานและใช้งานง่ายสำหรับผู้ใช้และระบบโดยการรวมเข้ากับ Ansible เป็นปลั๊กอินโทรกลับ
Capistrano เป็นเครื่องมืออัตโนมัติเซิร์ฟเวอร์ระยะไกล รองรับการเขียนสคริปต์และการดำเนินงานโดยพลการและรวมถึงชุดเวิร์กโฟลว์การปรับใช้ที่มีสติ
Fabric เป็นไลบรารี Python ระดับสูง (2.7, 3.4+) ที่ออกแบบมาเพื่อเรียกใช้งานคำสั่งเชลล์จากระยะไกลเหนือ SSH ซึ่งให้วัตถุงูหลามที่เป็นประโยชน์ในทางกลับกัน มันสร้างขึ้นที่ด้านบนของการเรียกใช้คำสั่ง subprocess และคุณสมบัติบรรทัดคำสั่ง) และ Paramiko (การใช้งานโปรโตคอล SSH) ขยาย API ของพวกเขาเพื่อเติมเต็มซึ่งกันและกันและให้ฟังก์ชั่นเพิ่มเติม
Ansible-Role-Wireguard เป็นบทบาทที่สามารถติดตั้ง Wireguard VPN ได้ รองรับ Ubuntu, Debian, Archlinx, Fedora และ Centos Stream
Wireguard_cloud_gateway เป็นบทบาทที่สามารถตั้งค่าได้สำหรับการตั้งค่า Wireguard เป็นเซิร์ฟเวอร์เกตเวย์ VPN สำหรับเครือข่ายคลาวด์
Red Hat OpenShift มุ่งเน้นไปที่ความปลอดภัยในทุกระดับของสแต็กคอนเทนเนอร์และตลอดวงจรชีวิตแอปพลิเคชัน มันรวมถึงการสนับสนุนระดับองค์กรในระยะยาวจากหนึ่งในผู้มีส่วนร่วม Kubernetes ชั้นนำและ บริษัท ซอฟต์แวร์โอเพนซอร์ส
OpenShift Hive เป็นผู้ให้บริการที่ทำงานเป็นบริการด้านบนของ Kubernetes/OpenShift บริการ Hive สามารถใช้ในการจัดหาและดำเนินการกำหนดค่าเริ่มต้นของกลุ่ม OpenShift 4
กลับไปด้านบน
SQL เป็นภาษามาตรฐานสำหรับการจัดเก็บจัดการและดึงข้อมูลในฐานข้อมูลเชิงสัมพันธ์
NOSQL เป็นฐานข้อมูลที่เรียกว่า "nonrelational หรือ" non-SQL "แทนกันได้ .
Transact-SQL (T-SQL) เป็นส่วนขยายของ Microsoft ของ SQL ด้วยเครื่องมือและแอปพลิเคชันทั้งหมดที่สื่อสารกับฐานข้อมูล SQL โดยการส่งคำสั่ง T-SQL
บทนำสู่ Transact-SQL
การสอน SQL โดย W3Schools
เรียนรู้ทักษะ SQL ออนไลน์จาก Coursera
หลักสูตร SQL ออนไลน์จาก Udemy
หลักสูตรการฝึกอบรม SQL ออนไลน์จาก LinkedIn Learning
เรียนรู้ SQL ฟรีจาก codecademy
คู่มือสไตล์ SQL ของ Gitlab
OracledB SQL Vuide Basics Basics
Tableau CRM: ซอฟต์แวร์และเครื่องมือ BI
ฐานข้อมูลบน AWS
แนวทางปฏิบัติที่ดีที่สุดและคำแนะนำสำหรับการจัดกลุ่ม SQL Server ใน AWS EC2
การเชื่อมต่อจากเอ็นจิ้น Google Kubernetes ไปยังอินสแตนซ์ SQL ของคลาวด์
ทรัพยากรการศึกษา Microsoft Azure SQL
การรับรอง MySQL
ฐานข้อมูล SQL กับ NOSQL: ความแตกต่างคืออะไร?
NOSQL คืออะไร?
NetData เป็นการตรวจสอบโครงสร้างพื้นฐานที่มีความเที่ยงตรงสูงและการแก้ไขปัญหาตัวแทนการตรวจสอบแบบเรียลไทม์รวบรวมตัวชี้วัดหลายพันตัวจากระบบฮาร์ดแวร์คอนเทนเนอร์และแอปพลิเคชันที่มีการกำหนดค่าเป็นศูนย์ มันทำงานอย่างถาวรบนเซิร์ฟเวอร์จริง/เสมือนจริงของคุณคอนเทนเนอร์การปรับใช้คลาวด์และอุปกรณ์ Edge/IoT และปลอดภัยอย่างสมบูรณ์แบบในการติดตั้งระบบของคุณในช่วงกลางเหตุการณ์โดยไม่มีการเตรียมการใด ๆ
Azure Data Studio เป็นเครื่องมือการจัดการข้อมูลโอเพ่นซอร์สที่ช่วยให้การทำงานกับ SQL Server, Azure SQL DB และ SQL DW จาก Windows, MacOS และ Linux
RSTUDIO เป็นสภาพแวดล้อมการพัฒนาแบบบูรณาการสำหรับ R และ Python ด้วยคอนโซลตัวแก้ไขการให้แสงสว่างไวยากรณ์ที่รองรับการดำเนินการรหัสโดยตรงและเครื่องมือสำหรับการพล็อตประวัติศาสตร์การดีบักและการจัดการพื้นที่ทำงาน
MySQL เป็นบริการฐานข้อมูลที่ได้รับการจัดการอย่างสมบูรณ์เพื่อปรับใช้แอพพลิเคชั่นคลาวด์-พื้นเมืองโดยใช้ฐานข้อมูลโอเพนซอร์สที่ได้รับความนิยมมากที่สุดในโลก
PostgreSQL เป็นระบบฐานข้อมูลความสัมพันธ์เชิงวัตถุโอเพ่นซอร์สที่มีประสิทธิภาพและมีการพัฒนาที่ใช้งานมานานกว่า 30 ปีซึ่งทำให้ได้รับชื่อเสียงที่แข็งแกร่งสำหรับความน่าเชื่อถือความแข็งแกร่งของคุณสมบัติและประสิทธิภาพ
Amazon DynamoDB เป็นฐานข้อมูลคีย์และเอกสารที่ให้ประสิทธิภาพมิลลิวินาทีเดียวในระดับใด ๆ มันเป็นฐานข้อมูลที่มีการจัดการอย่างเต็มที่หลายมัลติมาสเตอร์ฐานข้อมูลที่ทนทานพร้อมความปลอดภัยในตัวการสำรองข้อมูลและการกู้คืนและการแคชในหน่วยความจำสำหรับแอปพลิเคชันระดับอินเทอร์เน็ต
Apache Cassandra ™เป็นฐานข้อมูลแบบกระจายของ NOSQL แบบโอเพนซอร์สที่ได้รับความไว้วางใจจาก บริษัท หลายพันแห่งเพื่อความสามารถในการปรับขนาดและความพร้อมใช้งานสูงโดยไม่ลดทอนประสิทธิภาพ คาสซานดราให้ความสามารถในการปรับขนาดเชิงเส้นและพิสูจน์ความผิดพลาดที่พิสูจน์ได้เกี่ยวกับฮาร์ดแวร์สินค้าโภคภัณฑ์หรือโครงสร้างพื้นฐานคลาวด์ทำให้เป็นแพลตฟอร์มที่สมบูรณ์แบบสำหรับข้อมูลที่สำคัญของภารกิจ
Apache HBASE ™เป็น Open-Source, NOSQL, กระจาย Big Data Store มันช่วยให้การเข้าถึงข้อมูลแบบสุ่มสอดคล้องกันอย่างเคร่งครัดและตรงตามเวลาจริงของ petabytes HBase มีประสิทธิภาพมากสำหรับการจัดการชุดข้อมูลขนาดใหญ่กระจัดกระจาย HBase ทำหน้าที่เป็นอินพุตโดยตรงและเอาต์พุตไปยังเฟรมเวิร์ก Apache MapReduce สำหรับ Hadoop และทำงานร่วมกับ Apache Phoenix เพื่อเปิดใช้งานการสืบค้น SQL-like บนตาราง HBase
Hadoop Distributed File System (HDFS) เป็นระบบไฟล์แบบกระจายที่จัดการชุดข้อมูลขนาดใหญ่ที่ทำงานบนฮาร์ดแวร์สินค้าโภคภัณฑ์ มันถูกใช้เพื่อปรับขนาดคลัสเตอร์ Apache Hadoop เดียวเป็นหลายร้อย (และแม้แต่พัน) ของโหนด HDFS เป็นหนึ่งในองค์ประกอบสำคัญของ Apache Hadoop คนอื่น ๆ คือ Mapreduce และเส้นด้าย
Apache Mesos เป็นตัวจัดการคลัสเตอร์ที่ให้การแยกทรัพยากรที่มีประสิทธิภาพและการแบ่งปันในแอปพลิเคชันแบบกระจายหรือเฟรมเวิร์ก มันสามารถเรียกใช้ Hadoop, Jenkins, Spark, Aurora และเฟรมเวิร์กอื่น ๆ บนสระว่ายน้ำที่ใช้ร่วมกันแบบไดนามิกของโหนด
Apache Spark เป็นเอ็นจิ้นการวิเคราะห์แบบครบวงจรสำหรับการประมวลผลข้อมูลขนาดใหญ่พร้อมโมดูลในตัวสำหรับการสตรีมมิ่ง SQL การเรียนรู้ของเครื่องและการประมวลผลกราฟ
Elasticsearch เป็นเครื่องมือค้นหาที่ใช้ห้องสมุด Lucene มันมีเครื่องมือค้นหาข้อความแบบเต็มรูปแบบแบบกระจายแบบกระจายที่มีความสามารถหลายอย่างพร้อมกับเว็บอินเตอร์เฟส HTTP และเอกสาร JSON ที่ปราศจากสคีมา Elasticsearch ได้รับการพัฒนาใน Java
LogStash เป็นเครื่องมือสำหรับการจัดการกิจกรรมและบันทึก เมื่อใช้โดยทั่วไปคำนั้นจะครอบคลุมระบบการรวบรวมบันทึกการประมวลผลการจัดเก็บและการค้นหากิจกรรมที่ใหญ่ขึ้น
Kibana เป็นปลั๊กอินการสร้างภาพข้อมูลโอเพ่นซอร์สสำหรับ Elasticsearch ให้ความสามารถในการสร้างภาพข้อมูลด้านบนของเนื้อหาที่จัดทำดัชนีบนคลัสเตอร์ Elasticsearch ผู้ใช้สามารถสร้างบาร์