Làm cách nào tôi có thể tạo phân vùng trao đổi trên Amazon EC2 với bộ nhớ phù du?


8

Đây là đầu ra của df -k:

Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/xvda1            10317860   7059008   2734732  73% /
none                    847584         0    847584   0% /dev/shm
/dev/xvdb            153899044    192068 145889352   1% /mnt/ephemeral

Tôi đang sử dụng hình ảnh khởi động Centos EBS.

Tôi đã đọc các câu hỏi khác nhau liên quan đến điều này nhưng họ nói để gắn ổ đĩa mới. Nhưng tôi nghĩ rằng ổ đĩa đã được gắn tại /dev/xvdb. Tôi có đúng không?

Tôi chỉ có thể sử dụng này:

mkswap -f /dev/xvdb
#add in /etc/fstab
/dev/xvdb       swap    swap    defaults        0       0
swapon /dev/xvdb

Nó sẽ làm việc chứ?

Câu trả lời:


8

/ dev / xvdb thực sự được gắn kết, bạn cần kiểm tra xem liệu có bất cứ thứ gì được lưu trữ trên đó mà bạn muốn giữ hay không, mặc dù giữ những thứ quan trọng trên ổ đĩa phù du là một ý tưởng tồi.

Bạn sẽ cần ngắt kết nối / dev / xvdb trước khi bạn làm bất cứ điều gì với nó.

Trong khi bạn có thể

mkswap /dev/xvdb 

nó sẽ tạo ra một không gian hoán đổi của toàn bộ ổ đĩa phù du mà bạn gần như chắc chắn không cần. Ngoài ra, nếu bạn phân vùng trao đổi, bạn có thể sử dụng phần còn lại của ổ đĩa phù du cho những thứ như thư mục tmp hoặc lưu trữ phiên (nếu máy chủ của bạn là máy chủ web). Ổ đĩa phù du rất nhanh, nhưng đáng buồn là không có nhiều thuyết phục.

Dù sao, trở lại để trao đổi phân vùng!

Tốt hơn là chọn sfdisk như Abhishek đề cập hoặc tự tạo phân vùng trao đổi bằng fdisk:

fdisk /dev/xvdb
Press N to create a new partition
P for primary
1 for the first partition
Press Enter to accept the first location
Enter +xG where x is the size of the swapspace you want. I typically use twice the amount of RAM, but this is not a hard and fast rule
Enter T to change the type
Enter 82 for Linux Swap
Enter W to write the changes
Enter q to quit

Bây giờ bạn có thể tạo không gian trao đổi của mình với

mkswap /dev/xvdb1

Và sau đó kích hoạt nó với

swapon /dev/xvdb1

Tuy nhiên, một lời cảnh báo và tôi xin lỗi Nếu tôi "Dạy bà ngoại mút trứng" Nhưng đúng như tên gọi của nó, một ổ Ephemeral là ... tốt, Ephemeral. Nếu bạn từng tắt cá thể của mình, bạn sẽ phải tạo lại phân vùng trao đổi và kích hoạt nó. Vì lý do này, không thêm không gian hoán đổi mới được tạo của bạn vào fstab của bạn.

Khởi động lại sẽ tốt tuy nhiên.


1
Tôi đã đặt mã tạo ra trao đổi trong rc.local. ổn chứ. để hoán đổi tự động được tạo ra mỗi khi nó bắt đầu
Pandora

1
Tôi sẽ không Nếu máy chủ khởi động lại, không gian trao đổi sẽ vẫn ở đó, do đó không cần phải tạo lại nó. Nếu máy chủ kết thúc (tắt) và sau đó được khởi động lại, thì ổ đĩa phù du mà bạn có trước đó sẽ không còn nữa, do đó, bạn sẽ phải tạo không gian hoán đổi từ đầu.
GeoSword

Ưu điểm của việc tạo lại mọi lúc là bạn có một môi trường ổn định không cần can thiệp thủ công để khởi động lại. Chỉ là một ý nghĩ; không chắc có mất nhiều thời gian để tạo lại trao đổi hay không (và nếu có, có lẽ một phân vùng nhỏ hơn có thể được sử dụng).
Brian C

3

Tôi đã tạo một tập lệnh có thể hữu ích để tạo trao đổi trên các thiết bị phù du. Nó sử dụng lvm để tạo âm lượng trao đổi và cũng tạo ra một âm lượng có thể hữu ích như / tmp. Bạn có thể sử dụng cloud-init để kích hoạt nó.

bootcmd:
 - [ cloud-init-per, once, mk-eph, /usr/local/sbin/mk-eph.sh]

# Filesystem setup
fs_setup:
 - label: 'tmp'
   filesystem: 'xfs'
   device: '/dev/ephemeral/tmp'
   partition: 'auto'

mounts:
 - [ /dev/ephemeral/tmp, /tmp, auto, "defaults,nobootwait" ]
 - [ ephemeral0, null ]

runcmd:
 - [ chmod, 1777, /tmp ]

2

Đầu tiên hãy ngắt kết nối bộ lưu trữ điện tử của bạn và kết thúc như bên dưới

  umount /dev/xvdb # in case it is already mounted
  sfdisk /dev/xvdb << EOF
  ,1024,82
  ,
  ;
  ;
  EOF
  mkswap /dev/xvdb1 && swapon /dev/xvdb1
  mkfs.xfs -f /dev/xvdb2 && mount /dev/xvdb2 /mnt

Làm thế nào để tôi nhập các dòng như, 1024. , ;; ý tôi là tôi cần phải nhập từng dòng sao chép tất cả và sau đó dán. Ngoài ra, bạn đang làm bao nhiêu ổ đĩa trao đổi. tôi có thể làm cho nó 10GB không
Pandora

2
Những gì mã này nên được ghi lại. Nó tạo ra một phân vùng trao đổi và XFS có kích thước cụ thể và không rõ các lệnh này sẽ tồn tại như thế nào thông qua việc khởi động lại.
Mark Stosberg
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.