News:

Brought to you NINE-T Co.,ltd.

Main Menu
Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - New User

#1
หากเป็น Windows สามารถใช้ PowerShell script ได้เลยครับตามนี้
$sw = [System.Diagnostics.Stopwatch]::StartNew()

$fs = [System.IO.File]::Create("C:\test1.img")
$buffer = New-Object byte[] (1MB)

1..1024 | ForEach-Object {
    $fs.Write($buffer, 0, $buffer.Length)
}

$fs.Flush($true)
$fs.Close()

$sw.Stop()
$speed = 1024 / $sw.Elapsed.TotalSeconds

"Elapsed: $($sw.Elapsed.TotalSeconds) sec"
"Write Speed: $([math]::Round($speed,2)) MB/s"

หลังจากนั้น save ในชื่ออะไรก็ได้เช่น testdiskspeed.ps1

ส่วนบน Linux ใช้คำสั่งนี้ได้เลย
dd if=/dev/zero of=/tmp/test1.img bs=1G count=1 oflag=dsync

ระบบจะทดสอบการเขียนไฟล์ /tmp/test1.img มีขนาด 1G และแสดงความเร็ว
แต่ถ้าอยากทดสอบการอ่านให้ใช้คำสั่ง

dd if=/tmp/test1.img of=/dev/null bs=1G iflag=direct


หากต้องการเพิ่มขนาดไฟล์ก็ปรับตรง count ซึ่งมีคุณสมบัติเป็นตัวคูณนั่นเอง
#2
ปกติ nakivo ผ่าน UI มันจะให้อพัเดทได้เฉพาะภายใน sub version เท่านั้น
เช่นภายใน 11.1.1 ไป 11.1.2-x
แต่ถ้ากระโดดไป 11.2 11.3 ไม่ได้

ถ้าทันจะอัพเดทข้ามดังกล่าว สามารถทำได้โดยการใช้ Updater script ซึ่ง วิธีการทำก็ง่ายมาก
เข้าไปดาวน์โหลดได้ที่ https://www.nakivo.com/resources/download/update/

หลังจากนั้น ถ้าบน Linux ก็ใช้คำสั่ง
wget -o Updater.sh https://d111xps0uy3x00.cloudfront.net/res/product/NAKIVO%20Backup_Replication%20v11.2.1.104556%20Updater.exe
chmod +w ./Updater.sh
sudo Updater.sh

หรือถ้าใครใช้ Linux แบบ graphic ก็ดาวน์โหลดได้โดยตรง
#3
สำหรับ Chipset LSI ที่อยู่ใน ThinkSystem RAID 530 นั้น จะไม่สนับสนุนใน Debian 13 อีกต่อไป เมื่อท่านติดตั้งระบบที่มี OS ที่มีพื้นฐานมาจาก Debian Trixie หรือ Kernel 7 ก็จะไม่สามารถใช้งานได้อีกต่อไป หรือพูดง่ายๆ RAID5/6/10 ที่สร้างขึ้นบน chipset ดังกล่าวไม่สามารถติดตั้งได้ และ อาจจะเกิด error ดังกล่าวข้างบน

วิธีการแก้ : เปลี่ยนเป็น JBOD หรือใช้ hypervisor รุ่นเก่า (ซึ่งไม่แนะนำ)
#4
1. เช็คดูสถานะของ Cilium ก่อนด้วยคำสั่ง
cilium status

ผลลัพธ์ก็จะได้ประมาณนี้
Cilium:             OK
Operator:           OK
Envoy DaemonSet:    OK

เช็คว่ามีการใช้ Proxy Replacement หรือไม่ด้วยคำสั่ง

kubectl -n kube-system get cm cilium-config -o yaml | grep kube-proxy

ผลลัพธ์ควรจะเป็น
kube-proxy-replacement: "true"

เช็คดูว่า Envoy เปิดใช้งานไปหรือยังด้วยคำสั่ง
kubectl -n kube-system get cm cilium-config -o yaml | grep envoy

สิ่งที่ควรได้รับคือ
envoy.enabled: "true"

เช็คว่า Gateway API เปิดใช้หรือยัง
kubectl -n kube-system get cm cilium-config -o yaml | grep gateway

สิ่งที่ควรจะได้รับคือ
gatewayAPI.enable: "true"

2. เปิดการใช้งาน L2 Annoucement ด้วยคำสั่ง
helm upgrade cilium cilium/cilium --namespace kube-system --reuse-values --set l2announcements.enabled=true

เช็คว่ามันได้เปิดไปหรือยัง ด้วยคำสั่ง
kubectl -n kube-system get cm cilium-config -o yaml | grep l2

ผลลัพธ์ที่ได้ควรจะเป็น
enable-l2-announcements: "true"


3. สร้าง LoadBalancer IP Pool
สร้างไฟล์ อาจจะตั้งชื่อว่า cilium-lb-pool.yaml และภายในไฟล์มีเนื้อหาดังนี้
apiVersion: cilium.io/v2alpha1
kind: CiliumLoadBalancerIPPool
metadata:
  name: lan-pool
spec:
  blocks:
  - start: XX.XX.XX.200
    stop: XX.XX.XX.220
โดยที่ XX.XX.XX = subnet class ของท่านใช่ 192.168.10
หลังจากนั้น ทำการ apply เข้าไปด้วยคำสั่ง
kubectl apply -f cilium-lb-pool.yaml

และทดสอบว่ามันได้เปลี่ยนแปลงหรือยัง โดยการพิมพ์
kubectl get ciliumloadbalancerippools

4. สร้าง L2 Announcement Policy
สร้างไฟล์ที่ชื่อว่า cilium-l2-policy.yaml
โดยมีเนื้อหา
apiVersion: cilium.io/v2alpha1
kind: CiliumL2AnnouncementPolicy
metadata:
  name: lan-policy
spec:
  nodeSelector:
    matchLabels: {}

  serviceSelector:
    matchLabels: {}

  interfaces:
  - ens18

  loadBalancerIPs: true

แล้วทำการ apply ด้วยคำสั่ง
kubectl apply -f cilium-l2-policy.yaml

ตรวจสอบด้วยคำสั่ง

kubectl get ciliuml2announcementpolicies

5. ทำการทดสอบด้วย application
kubectl create deployment nginx --image=nginx

6. สร้างบริการ LoadBalancer
kubectl expose deployment nginx --name nginx --type LoadBalancer --port 80 --target-port 80

ทดสอบด้วยคำสั่ง
kubectl describe svc nginx

ผลลัพธ์จะได้ประมาณนี้คือ
Type:           LoadBalancer
Port:           80/TCP
TargetPort:     80/TCP
LoadBalancer Ingress:
                xx.xx.xx.x

7. ตรวจสอบการทำงาน
kubectl get svc nginx
#5
หากท่านได้รับ Error ประมาณนี้
here was an error while executing `VBoxManage`, a CLI used by Vagrant
for controlling VirtualBox. The command and stderr is shown below.

Command: ["startvm", "", "--type", "headless"]

Stderr: VBoxManage: error: VirtualBox can't enable the AMD-V extension. Please disable the KVM kernel extension, recompile your kernel and reboot (VERR_SVM_IN_USE)
VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component ConsoleWrap, interface IConsole
ให้ท่านแก้ไขโดยการลบ module kvm ดังนี้
sudo rmmod kvm_amd



#6
วันนี้เราไปดูกันว่า คำว่า Versioning และ Object Lock นั้นหมายถึงอะไร และ มันทำอะไรได้บ้าง
https://s3-storage.avesta.co.th/articles/versioning-vs-object-lock-immutability/
#7
วันนี้เราไปหาคำตอบกันว่า ทำไมเราควรใช้ S3 Storage ที่อยู่ในไทย
https://s3-storage.avesta.co.th/articles/benefits-of-offsite-backup-using-s3-storage-in-thailand/
#8
หลายคนสงสัยว่าทำไม S3 ถึงได้รับความนิยมมาก วันนี้เราจะพาไปหาข้อดี ของมันและสาเหตุที่ทำให้มันได้รับความนิยมสูง
https://s3-storage.avesta.co.th/what-is-s3-storage/
#9
ทำไม feature ที่เรียกว่า Immutability นั้นคือพระเอกที่จะมาช่วยเรื่องการป้องกัน ransomware ไปอ่านกัน

https://s3-storage.avesta.co.th/s3-object-immutability/


ไปอ่านกันเลย
#10
wget -O - https://apt.releases.hashicorp.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(grep -oP '(?<=UBUNTU_CODENAME=).*' /etc/os-release || lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
sudo apt update && sudo apt install vagrant

ทำการเช็คว่าเครื่องของท่าน ได้เปิด SecureBoot ไว้หรือไม่
mokutil --sb-state
หากผลลัพธ์ของการพิมพ์คำสั่งคือ Enabled ท่านจะต้องทำการปิด Secure Boot ก่อน

หลังจากนั้นติดตั้ง virtualbox
sudo apt install virtualbox
ต่อไปเราต้องการลง metasploitable3 ซึ่งเป็น vm ที่มีช่องโหว่เอาไว้ทดสอบเรื่องความปลอดภัย
mkdir metasploitable3-workspace
cd metasploitable3-workspace
และทำการโหลด Vagrant file เพื่อทำการ deploy VMs โดยใช้คำสั่ง
wget -O Vagrantfile https://raw.githubusercontent.com/rapid7/metasploitable3/master/Vagrantfile
หลังจากนั้นทำการรันโดยการพิมพ์
vagrant up
หากท่านได้ error ว่า


The IP address configured for the host-only network is not within the
allowed ranges. Please update the address used to be within the allowed
ranges and run the command again.

  Address: 172.28.128.3
  Ranges: 192.168.56.0/21, fe80::/10

Valid ranges can be modified in the /etc/vbox/networks.conf file. For
more information including valid format see:

  https://www.virtualbox.org/manual/ch06.html#network_hostonly

ท่านจะต้องไปสร้าง ไฟล์ที่ชื่อว่า  /etc/vbox/networks.conf และอนุญาตทุก class ip ด้วยคำสั่ง
sudo mkdir /etc/vbox
sudo nano /etc/vbox/networks.conf
และใส่ข้อความคือ * 0.0.0.0/0 ::/0 ในไฟล์ดังกล่าว หลังจากนั้นจึง save และพิมพ์ vagrant up อีกครั้ง

#11
เปิดตัวแล้ววันนี้ สำหรับ PVE 9.2 ซึ่งมาพร้อมฟีเจอร์ใหม่มากมาย เช่น workload balancing, software-defined storage, การจัดการโมเดล CPU แบบปรับเอง และ Disarm/Arm maintenance mode
- Dynamic Load Balancer สำหรับ Cluster Resource Scheduler ปรับโหลดให้สมดุลระหว่างโหนดภายใน cluster
- ขยายการสนับสนุน SDN ด้วย Wireguard และ BGP พร้อมโปรโตคอล Fabric ใหม่
- การกรอง BGP/EVPN ที่ละเอียดขึ้น
- ทำ planed HA cluster maintenance ด้วย Disarm/Arm
- ทำงานด้วย Linux Kernel 7.0
- มาพร้อม QEMU 11.0, LXC 7.0 และ ZFS 2.4
- Ceph Tentacle 20.2
#12
Proxmox Backup Server 4.2 เปิดตัวแล้ววันนี้ด้วยคุณสมบัติใหม่เพียบ เราไปดูกันเลยว่าตัวเด่นๆ มีอะไรบ้าง
- ทำงานบนพื้นฐานของ Debian 13.4 "Trixie" ใช้ kernel ล่าสุด 7.0 มาพร้อม ZFS 2.4 เพิ่มการสนับสนุน hardware ที่เยอะขึ้น
- มี group และ namespace ใน datastore มากขึ้น
- เข้าหรัสฝั่ง server สำหรับการ sync jobs
- ทำงานได้หลาย job มากขึ้น
- ทำงานกับ S3 ได้ดีขึ้น รวมถึง มี stat และ notification
- ปรับปรุงเรื่องประสิทธิภาพ ความเสถียร และ อีกมากมาย

download ได้แล้ววันนี้ที่ https://www.proxmox.com
#13
สำหรับคนที่ enable Guest Processing สำหรับ VM ที่ทำงานบน Proxmox VE, AHV หรือว่า ScaleComputing ท่านอาจจะพบกับ Error
Failed to install guest processing components for [VM name]. Error: Failed to connect to the guest OS.
หรือ
Failed to prepare guest for hot backup. Error: Cannot start service. Machine: [IP address]. Service: [VeeamGuestHelper]. Cannot start service. Win32 error: The service did not respond to the start or control request in a timely fashion. Code: 1053

วิธีแก้คือ
1. ท่านจะต้องแน่ใจว่าทัน ติดตั้ง Veeam 13.0.1.2067 ซึ่งเป็น version ล่าสุด
2. ทำการดาวน์โหลด patch คือ https://www.veeam.com/kb4842

หลังจากนั้นปัญหาจะหมดไป
#14
CILIUM_CLI_VERSION=$(curl -s https://raw.githubusercontent.com/cilium/cilium-cli/main/stable.txt)
curl -L --fail --remote-name-all https://github.com/cilium/cilium-cli/releases/download/${CILIUM_CLI_VERSION}/cilium-linux-amd64.tar.gz
tar xzvf cilium-linux-amd64.tar.gz
mv cilium /usr/local/bin/

#15
Kubernetes / Configuring Talos
April 05, 2026, 09:07:04 PM
เนื่องจาก talos นั้น ไม่ได้มี ssh หรือ remote ได้ และ จะถูกควบคุมด้วย remote machine เท่านั้นเพราะฉะนั้นท่านจะต้องติดตั้ง talosctl ในเครื่องที่ท่านต้องการจะใช้เพื่อ remote ไปหา talos node
ตัวอย่างเช่น เราจะทำการ remote จากเครื่อง Rocky Linux 9.7 ของเรา
ดังนั้นเราจะต้องทำการติตดั้ง talosctl ก่อนในเครื่อง Rocky Linux ของเราดังนี้
curl -Lo /usr/local/bin/talosctl https://github.com/siderolabs/talos/releases/latest/download/talosctl-linux-amd64
chmod +x /usr/local/bin/talosctl

หลังจากนั้น ท่านจะต้องดู ip ที่อยู่หน้า console ของ VM ที่ท่านติดตั้ง talos ไปแล้วทำการเชื่อมต่อไป
เช่น ถ้า ip ของท่านคือ 10.50.100.114 ท่านก็ทำการพิมพ์
talosctl gen config talostest https://10.50.100.114:6443

ระบบจะสร้างไฟล์ให้ท่าน 3 files คือ
controlplane.yaml   
talosconfig
worker.yaml

หลังจากนั้นเราก็แก้ไขไฟล์ controlplane.yaml เพราะถึงตอนนี้อย่าลืมว่า talos ยังไม่ได้ถูกติดตั้งใน disk เลยเพราะบูตจาก iso แต่ตอนนี้เรากำลังจะติดตั้งลง disk
และเราต้องแก้ ให้เป็น fix ip ด้วย

ขอให้ท่านเปิดไฟล์ controlplane.yaml ด้วย editor ที่ต้องการเช่น vi หรือ nano และมองหาค่า network แล้วทำการแก้
    network:
      interfaces:
        - interface: ens18
          addresses:
            - 10.50.100.50/24
          routes:
            - network: 0.0.0.0/0
              gateway: 10.50.100.254

      nameservers:
        - 10.50.100.1
        - 10.50.100.2
และมองหาค่า endpoint: https://10.50.100.114:6443 แทนเปลี่ยนเป็น endpoint: https://10.50.100.50:6443
อย่าลืมว่าไฟล์ yaml นั้น ident ถือเป็นสำคัญ ท่านจะต้อง copy ดังที่แสดง แป๊ะ
หลังจากนั้นทำการ apply หรืออัด config เข้าไป
talosctl apply-config --insecure -n 10.50.100.114 --file controlplane.yaml

รอสักครู่ ระบบจะเปลี่ยนแปลงไอพีให้กับท่าน และท่านสามารถทำการ reboot และ เอา iso file/cdrom ออกได้แล้ว เพราะตอนนี้ talos ถูกติดตั้งใน /dev/sda เรียบร้อยแล้ว
ต่อไปเราก็ติดตั้ง Bootstrap โดยการพิมพ์
talosctl bootstrap --nodes 10.50.100.50 --endpoints 10.50.100.50 --talosconfig=./talosconfig

รอสักครู่พิมพ์
talosctl kubeconfig --nodes 10.50.100.50 --endpoints 10.50.100.50 --talosconfig=./talosconfig

ก็เป็นอันเรียบร้อยคราวนี้ในส่วนของ worker ท่านก็จะต้องดู dhcp ip ก่อนและทำการแก้ไฟล์ worker.yaml ตรงส่วน endpoints และพิมพ์
talosctl apply-config --insecure --nodes 10.50.100.115 --file worker.yaml