ZStack là phần mềm IaaS (infrastructure as a service) mã nguồn mở được thiết kế để tự động hóa các trung tâm dữ liệu và quản lý tài nguyên của máy tính, lưu trữ và mạng thông qua các API. Nó được thiết kế để giải quyết những trở ngại ngăn cản các doanh nghiệp áp dụng đám mây riêng trong thiết kế kiến trúc. Tính đơn giản, ổn định, khả năng mở rộng và khả năng mở rộng (Simple, Strong, Smart, Scalable) là những mối quan tâm chính trong thiết kế kiến trúc của ZStack, đã được xem xét ngay từ đầu.
1. Phần cứng:

a. Server: 

  • Management node sử dụng 01 server,
  • Server cài os sử dụng raid 1 – Write Back
  • CEPH nếu sử dụng SSD thì không cần dùng cache disk
  • CEPH data disk cấu hình NON Raid
  • Database của management node cần cấu hinh backup sang nodes khác 4h/ lần
  • CPU: hỗ trợ 64 bit, Intel VT or AMD V ( phần cứng ảo hóa ), không ít hơn 4 Core
  • RAM: 8G hoặc cao hơn đối với môi trường basic, 64G hoặc cao hơn đối với môi trường production
  • Disk: ít nhất 1TB cho lưu trữ storage
  • Network: ít nhất 1 card 1G

b. Network:

  • Tối thiểu SW 1G, khuyến nghị SW 10G

2. Chuẩn bị

Ghi chú:

  • OS được tùy chỉnh lại từ Centos 7.x
  • Nên dùng file iso của ZStack để cài, kể cả node backup
  • Quá trình cài đặt không cần phải kết nối internet do file iso đã chứa đầy đủ các gói cần thiết
  • Có thể dùng ảo hóa để cài ZStack Management Node ( vd VMWare ), ZStack Compute Node hiện tại đang cài trên server vật lý, chưa cài được trên ảo hóa.

3. Network

  • Cần tạo riêng các mạng management network, service network ( ip public ) , và storage network để tránh trường hợp nghẽn khi storage network sử dụng nhiều
  • Management network có thể sử dụng dual-link Gigabit network, tuy nhiên cần cần nhắc sử dụng dual-link 10 Gigabit network
  • Public network tùy nhu cầu khách hàng có thể sử dụng dual-link Gigabit network hoặc cao hơn
  • Ceph storage network cần sử dụng dual-link 10 Gigabit network, chuyển sang mode Access và có hổ trợ  Jumbo Frame, MTU 9000
  • Management node được cấu hình 2 card mạng: management network & services network
  • Computing node cấu hình 3 card mạng: management network, service network, and storage network.
  • Storage node cấu hình 2 card mạng: management network, and storage network.
  • Card mạng cấu hình Bonding mode 1 ( active/ standby ) – mode 4 lacp
  • Nếu sử dụng VLAN, cần cấu hình trunk trên sw. Nếu không có thể sử dụng mode Access. Kịch bản như sau:
    • The management network cấu hình Access mode
    • The storage network cấu hình Access mode
    • The service network cấu hình Trunk mode

4. Cài OS

Tài liệu tham khảo: https://www.zstack-cloud.com/help/en/tutorials/quick_install_guide/v4/2.html

  • Vào BIOS bật chế độ Ảo Hóa và tùy chọn hyper-threading cho CPU
  • Cấu hình RAID cho phù hợp thực tế
  • ZStack Cloud có các kiểu cài đặt: (graphic user interface) GUI, virtual network computing (VNC), and character user interface (CUI), khuyến nghị dùng GUI

  • Tùy chọn Date & Time thành Asia/ Ho Chi Minh

  • ZStack Cloud cung cấp các kiểu
    • ZStack Enterprise Management Node
    • ZStack Community Management Node
    • ZStack Compute Node
    • ZStack Expert Mode

  • Phân chia ổ đĩa

Note: Khuyến nghị chỉ cấu hình đĩa cho hệ thống. Sau khi cài đặt xong bạn có thể cấu hình các đĩa khác

ZStack Cloud tự động phân vùng theo mặc định. Nếu bạn muốn tùy chỉnh, có thể chỉnh BIOS theo các mode

  • UEFI mode
    • /boot: stores the core files required for Linux startup. We recommend that you distribute 1 GB to the directory.
    • /boot/efi: stores UEFI boot file. We recommend that you distribute 500 MB to the directory.
    • swap: swap. We recommend that you distribute 32 GB to the swap.
    • /: Linux system root. We recommend that you distribute the rest of the space to the directory.
  • Legacy mode
    • /boot: stores the core files required for Linux startup. We recommend that you distribute 1 GB to the directory.
    • swap: swap. We recommend that you distribute 32 GB to the swap.
    • /: Linux system root. We recommend that you distribute the rest of the space to the directory.

Ghi chú:

  • Khuyến nghị rằng tổng dung lượng đĩa cho ZStack Cloud phải lớn hơn 300 GB.
  • Ở chế độ Legacy, nếu dung lượng của đĩa hệ thống lớn hơn 2 TB, bạn cần định cấu hình phân vùng khởi động BIOS để hỗ trợ phân vùng GPT. Ở chế độ UEFI, bạn không cần định cấu hình mục này và phân vùng GPT được hỗ trợ.

Cấu hình network

  • Khuyến nghị sử dụng NIC bonding
  • Cấu hình static IP ( nên chọn ip private cho eth0 )

  • Cấu hình NIC auto-activation

  • Đặt password root

Restart lại server khi quá trình cài hoàn tất

Chú ý: Cấu hình chrony để đồng bộ giờ giữa các node

5. Cấu hình mạng

Cấu hình bonding:

  • Management network: bond0
  • Services Network: bond1
  • Storage network: bond2

Ghi chú: cấu hình này do server DELL và có port quang.

Create a bond network card bond0 bond1 bond2 in active /standby mode , which will be used as the management network, service network, and storage network

  • zs -bond- ab -c bond0
  • zs -bond- ab -c bond1
  • zs -bond- ab -c bond2

Add network cards em1 and em2 to bond0 , add network cards em3 and em4 to bond1 , add network cards en ps01 and enp s02 to bond2

  • zs – nic -to-bond-a bond0 em1
  • zs – nic -to-bond-a bond0 em2
  • zs – nic -to-bond-a bond1 em3
  • zs – nic -to-bond-a bond1 em4
  • zs – nic -to-bond-a bond2 enps01
  • zs – nic -to-bond-a bond2 enps02

Create a bridge br_bond0 specify the network IP, mask and gateway, where bond1 is used as a service network, no need to specify an IP address, and bond2 is used as a storage network, no need to specify a gateway; parameter -i configures the address for the interface, -b creates a bridge based on the interface and configures it address.

  • zs -network-setting -b bond0 192.168.1.11 255.255.0.0 192.168.1.1
  • zs -network-setting -i bond 2 10.10.0.11 255.255.255.0

Check whether the aggregation port bond is successfully created

zs -show-network

————————————————– ————————-

| Bond Name | SLAVE(s) | BONDING_OPTS                  |

————————————————– ————————-

| bond0 | em1 | miimon =100 mode=active-backup 1 xmit_hash_policy =layer2 0 |

| | em2 |            |

————————————————– ————————-

| bond1 | em3 | miimon =100 mode=active-backup 1 xmit_hash_policy =layer2 0 |

| | em4 |             |

————————————————– ————————-

| bond2 | enps01 | miimon =100 mode=active-backup 1 xmit_hash_policy =layer2 0 |

| | enps02 |             |

————————————————– ————————-

6. Cấu hình hệ thống

bash /opt/zstack-installer.bin -E -I eth0

Lưu ý:

  • Quá trình cài đặt không cần kết nối internet do file iso đã chứa đầy đủ các gói cần thiết.

Khi bạn đăng nhập vào ZStack Cloud lần đầu tiên, bạn sẽ được hướng dẫn sử dụng trình hướng dẫn do ZStack Cloud cung cấp để thiết lập môi trường khởi tạo.

  • Truy cập http://management_node_ip:5000 ( username: admin, password: password )
  • Nếu bạn ngừng sử dụng trình hướng dẫn hoặc xóa các tài nguyên chính trong quá trình thiết lập ban đầu, bạn sẽ không được hướng dẫn sử dụng lại trình hướng dẫn.
  • Chúng tôi khuyên bạn nên sử dụng trình hướng dẫn để hoàn thành các cấu hình môi trường cơ bản của ZStack Cloud.

a. Tạo Zone

Zone là nhóm tài nguyên: Cluster, L2 Networks, và primary storage

b. Tạo Cluster

Cluster là nhóm các máy chủ ( compute nodes )

Note:

  • XDragon: Alibaba Cloud Dragon architecture

c. Thêm máy chủ ( host )

Host cung cấp compute, network, và lưu trữ cho các VM

Lưu ý:

  • Trong môi trường product, để đảm bảo tính ổn định và bảo mật, khuyến nghị tách mạng quản lý ra khỏi public network, để các management nodes và compute nodes nằm trong mạng độc lập và có địa chỉ độc lập ( eth0 kết nối management network, ZStack Cloud sử dụng management Network để kết nối với compute nodes. Nếu bạn sử dụng eth1 để kết nối public network, you can use the top aggregation switch to interconnect with the Internet.)
  • Việc tách management network và public network nhằm giúp tối đa hóa bảo mật và đảm bảo băng thông cho management network
  • Khuyến nghị bạn nên sử dụng lệnh adduser để tạo một người dùng bình thường ( normal user phải có quyền sudo )

#Create a normal user named vinahost

[root@localhost ~]# adduser vinahost

#Grant the user the sudo permission

[root@localhost ~]# echo “vinahost    ALL=(ALL)    NOPASSWD: ALL” >>/etc/sudoers

d. Thêm sao lưu ( Backup Storage )

  • Backup Storage là 1 hoặc nhiều server chứa VM image templates, bao gồm ISO
  • Có thể thêm các kiểu backup storages
    • ImageStore: stores images in the format of chips and supports incremental storage.
    • Sftp: stores images in the format of files.
    • Ceph: stores images in the format of distributed blocks.
  • ImageStore

Lưu ý:

  • Trong môi trường product, để đảm bảo tính ổn định và bảo mật, khuyến nghị tách management network ra khỏi public network
  • Bạn có thể gán management network IP vào backup storage để tiết kiệm băng thông  public network
  • Nếu public network có băng thông 10G, có thể gán public network IP address cho backup storage. Điều này làm tăng tốc độ truyền dữ liệu giữa backup storage và compute nodes.
  • Bạn có thể đặt dedicated storage network nếu cần thiết
  • Mặc định dùng user root, bạn có thể sử dụng normal user ( normal user phải có quyền sudo )

e. CEPH

  • Mặc định dùng user root, bạn có thể sử dụng normal user ( normal user phải có quyền sudo )
  • Pool UUID ( tùy chọn ), chỉ định một storage pool cho Ceph backup storage: nếu bạn chỉ định 1 pool thì bạn cần tạo pool trong Ceph backup storage, nếu để trống thì hệ thống sẽ tự tạo một storage pool

f. Thêm lưu trữ chính ( Primary Storage )

  • Primary Storage là 1 hoặc nhiều server chứa tập tin lưu trữ VM ( volume files of VM instances ). Tập tin bao gồm: root volume snapshots, data volume snapshots, image caches, root volumes, và data volumes.
    • LocalStorage: sử dụng đĩa của máy chủ để lưu trữ.
    • Network Sharing Storage: hỗ trợ NFS, Shared Mount Point, và Ceph.
      • NFS  cho phép bạn lưu trữ bằng cách sử dụng NFS protocol.
      • Shared Mount Point chia sẻ qua mạng để lưu trữ gồm những hệ thống phân tán phổ biến như MooseFS, GlusterFS, OCFS2, và GFS2.
      • Ceph lưu trữ các tập tin ở địch dạng khối phân tán (distributed blocks, object storage)

Ghi chú: 

  • Primary Storage được liên kết với backup storage
    • Nếu bạn sử dụng ImageStore backup storage, bạn có thể sử dụng primary storage của LocalStorage, NFS, Share Mount Point, hoặc Ceph
    • Nếu bạn sử dụng Ceph backup storage, bạn chỉ có thể dùng Ceph primary storage
  • Nếu bạn cần thêm primary storage của SharedBlock, hãy thoát khỏi wizard và thêm primary storage trên trang primary storage management.

g. LocalStorage

  • Nếu bạn thêm LocalStorage primary storage, tất cả các host đều được cấu hình với cùng thư mục bạn chỉ định

Ghi chú:

  • Nếu đường dẫn đã chỉ định không tồn tại trên primary storage, hệ thống sẽ tự động tạo đường dẫn.
  • Bạn không thể chỉ định đường dẫn của hệ thống. Nếu không máy chủ sẽ thống báo lỗi, các đường dẫn đó là: /, /dev/, /proc/, /sys/, /usr/bin, /bin

h. NFS

  • Nếu bạn sử dụng NFS primary storage, ZStack Cloud sẽ gắn kết thư mục NFS được chia sẻ với tất cả các hosts . Các hosts cần được cấp quyền đọc và ghi trên thư mục được gắn kết.

Mount Path: Chỉ định URL của một thư mục được chia sẻ trên máy chủ NFS một đường dẫn trên primary storage. Bạn có thể chỉ định địa chỉ IP hoặc tên miền.

Ghi chú:

  • URL có định dạng: NFS_Server_IP:/NFS_Share_folder, for example, 192.168.0.1:/nfs_root.
  • Bạn cần phải cấu hình trước các quyền truy cập trên thư mục chia sẻ ở phía máy chủ NFS.
  • Để đảm bảo tính bảo mật của máy chủ NFS, chúng tôi khuyên bạn nên định cấu hình các quy tắc bảo mật để triển khai kiểm soát truy cập.
  • Bạn cần sử dụng lệnh “showmount -e” trên máy chủ NFS để kiểm tra thư mục được chia sẻ.
  • Bạn không thể chỉ định đường dẫn của hệ thống. Nếu không máy chủ sẽ thống báo lỗi, các đường dẫn đó là: /, /dev/, /proc/, /sys/, /usr/bin, /bin

Mount Option: Để thêm Mount Option, hãy đảm bảo rằng các tùy chọn này được máy chủ NFS hỗ trợ.

Ghi chú:

  • Phân tách từng tùy chọn bằng dấu phẩy (,), ví dụ: nfsvers=3,sec=sys,tcp,intr,timeo=5. Ví dụ này có nghĩa là NFS Phiên bản 3 được sử dụng trên máy chủ NFS, cơ chế xác thực UNIX tiêu chuẩn được sử dụng, TCP được sử dụng làm giao thức truyền tải, cuộc gọi NFS có thể bị gián đoạn trong trường hợp ngoại lệ và thời gian chờ là 0,5 giây (5 / 10).
  • Để chỉ định các tùy chọn mount, bạn có thể tham khảo nội dung trong mục “-o option” của mount.
  • Bạn có thể đặt các tùy chọn theo các tùy chọn gắn kết thường được sử dụng trên máy khách. Nếu tùy chọn đã cấu hình xung đột với máy chủ NFS, cấu hình ở phía máy chủ sẽ được ưu tiên.

Storage Network: Chỉ định mạng cho lưu trữ shared storage. Bạn có thể sử dụng management network.

Ghi chú:

  • Nếu bạn chỉ định một mạng lưu trữ chuyên dụng, bạn cần chỉ định CIDR của mạng.
  • Bạn có thể sử dụng mạng lưu trữ để kiểm tra tình trạng sức khỏe của các phiên bản VM.

i. Shared Mount Point

Nếu bạn sử dụng Shared Mount Point (SMP) primary storage trên ZStack Cloud, bạn có thể dùng hệ thống phân tán ( distributed file systems ): MooseFS, GlusterFS, OCFS2, và GFS2 để cung cấp cho network sharing storage


7. Hướng dẫn nâng cấp zStack Management

wget https://cdn.zstack.io/product_downloads/Cloud_suite/4.4.16/hm4a87b0ds/zstack/zstack-upgrade –no-check-certificate

  • Download iso mới nhất

wget https://cdn.zstack.io/product_downloads/Cloud_suite/4.4.16/hm4a87b0ds/zstack/ZStack-Cloud-x86_64-DVD-4.4.16-c76.iso –no-check-certificate

  • Backup database ( thư mục backup chứ trong /var/lib/zstack/mysql-backup/ )

zstack-ctl dump_mysql –file-name zstack-mysql-before-upgrade

  • Thực hiện việc nâng cấp

bash zstack-upgrade ZStack-Cloud-x86_64-DVD-4.4.16-c76.iso

  • Sau khi thực hiện việc nâng cấp xong, truy cập lại trang dashboard và kiểm tra lại version ( quá trình này mất khoảng 10p, trong thời gian nâng cấp không  ảnh hưởng đến các VM đang chạy, chỉ không truy cập được trang dashboard )
  • Liên hệ với mình qua email hautph(@)gmail.com nếu cần sự trợ giúp.
Print Friendly, PDF & Email