Giới Thiệu
Lưu ý: Việc triển khai một server đơn lẻ không được khuyến khích, nó không đảm bảo về an toàn dữ liệu. Mỗi khu cần phải có ít nhất một server, đồng thời một cluster cần có 3 đến 5 server khi bạn triển khai trong môi trường Production.
Start the agent
Start một Nomad agent trong chế độ phát triển với câu lệnh nomad agent
. Đây là câu lệnh không nên được sử dụng trong môi trường Production, bởi vì nó sẽ không giữ được trạng thái bền vững cho process.
$ sudo nomad agent -dev
Với câu lệnh này, agent sẽ start với cả 2 chế độ là server và client. Hãy đợi cho đến khi nhìn thấy cụm từ “acquired leadership”.
==> No configuration files loaded
==> Starting Nomad agent...
==> Nomad agent configuration:
Advertise Addrs: HTTP: 127.0.0.1:4646; RPC: 127.0.0.1:4647;
Serf: 127.0.0.1:4648
Bind Addrs: HTTP: 127.0.0.1:4646; RPC: 127.0.0.1:4647;
Serf: 127.0.0.1:4648
Client: true
Log Level: DEBUG
Region: global (DC: dc1)
Server: true
Version: 0.10.4
==> Nomad agent started! Log data will stream in below:
[DEBUG] agent.plugin_loader.docker: using client connection
initialized from environment:
plugin_dir=
[DEBUG] agent.plugin_loader.docker: using client connection
initialized from environment:
plugin_dir=
[INFO] agent: detected plugin: name=raw_exec type=driver
plugin_version=0.1.0
[INFO] agent: detected plugin: name=exec type=driver
plugin_version=0.1.0
[INFO] agent: detected plugin: name=qemu type=driver
plugin_version=0.1.0
[INFO] agent: detected plugin: name=java type=driver
plugin_version=0.1.0
[INFO] agent: detected plugin: name=docker type=driver
plugin_version=0.1.0
[INFO] nomad: raft: Initial configuration (index=1):
[{Suffrage:Voter ID:127.0.0.1:4647
Address:127.0.0.1:4647}]
[INFO] nomad: raft: Node at 127.0.0.1:4647 [Follower]
entering Follower state (Leader: "")
[INFO] nomad: serf: EventMemberJoin: Kaitlins-MBP.global 127.0.0.1
[INFO] nomad: starting scheduling worker(s): num_workers=8
schedulers=[service, batch,
system, _core]
2020-03-21T12:37:19.707-0500 [INFO] client: node registration complete
[INFO] nomad: adding server: server="Kaitlins-MBP.global
(Addr: 127.0.0.1:4647) (DC: dc1)"
[DEBUG] nomad: lost contact with Nomad quorum, falling
back to Consul for server list
[INFO] client: using state directory: state_dir=/private/var/folders/92/
ctgjkbzx3718ws9q0vmp3v700000gp/T/NomadClient596211523
[ERROR] nomad: error looking up Nomad servers in Consul:
error="server.nomad:
unable to query Consul datacenters:
Get http://127.0.0.1:8500/v1/catalog/datacenters:
dial tcp 127.0.0.1:8500: connect:
connection refused"
[INFO] client: using alloc directory:
alloc_dir=/private/var/folders/92/
ctgjkbzx3718ws9q0vmp3v700000gp/T/NomadClient805410758
...
[WARN] nomad: raft: Heartbeat timeout from ""
reached, starting election
[INFO] nomad: raft: Node at 127.0.0.1:4647
[Candidate] entering Candidate state in term 2
[DEBUG] nomad: raft: Votes needed: 1
[DEBUG] nomad: raft: Vote granted from 127.0.0.1:4647 in term 2. Tally: 1
[INFO] nomad: raft: Election won. Tally: 1
[INFO] nomad: raft: Node at 127.0.0.1:4647 [Leader] entering Leader state
[INFO] nomad: cluster leadership acquired
Trung tâm dữ liệu của Consul lỗi, bởi vì Nomad agent chưa cài đặt agent Consul. Trong chế độ phát triển, Nomad agent sẽ có thể hoạt động mà không cần tới Consul và nó không ảnh hưởng đến tiến trình của bạn.
Lưu ý: Bất kỳ những loại agent nào như thế này để chạy trong chế độ Client đều phải được thực thi với quyền Root. Nomad sẽ sử dụng tài nguyên của hệ thống do đó cần phải có đặc quyền của root.
Kiểm tra thông tin của Agent
Trong một cửa sổ terminal khác, sử dụng nomad node status
để xem những node đã đăng ký với Nomad Cluster.
$ nomad node status
Khi bạn chỉ có một agent trên local, đầu ra bạn sẽ nhìn thấy chỉ có một node.
ID DC Name Class Drain Eligibility Status
3f12597f dc1 Kaitlins-MBP <none> false eligible ready
Thông số đầu ra sẽ cho bạn thấy giá trị Node ID, Node Name, Node Class, Drain mode và trạng thái hiện tại. Node ID là giá trị sẽ được sinh ra một cách ngẫu nhiên.
Agent cũng nằm trong chế độ server, điều này có nghĩa là nó cũng sử dụng giao thức “Gossip protocol” để kết nối tất cả các server lại với nhau. Bạn có thể xem những thành viên của gossip bằng việc sử dụng server members
câu lệnh:
$ nomad server members
Bạn sẽ nhìn thấy đầu ra như sau.
Name Address Port Status Leader Protocol Build Datacenter Region
Kaitlins-MBP.global127.0.0.1 4648 alive true 2 0.10.4 dc1 global
Tại đây bạn sẽ thấy địa chỉ IP, tình trạng sức khỏe, thông tin về version, datacenter và region. Để xem chi tiết các thuộc tính, bạn có sử dụng cờ -detailed
.
Stop the agent
Bạn có thể sử dụng Ctrl-C
để ngắt tiến trình, dừng agent. Mặc định, tất cả các tín hiệu của agent Nomad sẽ bị ép phải dừng. Agent Nomad đã được cấu hình để thực hiện việc này, nên chúng sẽ không ảnh hưởng gì.
Sau khi làm gián đoạn agent, bạn sẽ thấy thông báo “shutdown”:
==> Caught signal: interrupt
[DEBUG] http: shutting down http server
[INFO] agent: requesting shutdown
[INFO] client: shutting down
[INFO] client.plugin: shutting down plugin manager: plugin-type=device
[INFO] client.plugin: plugin manager finished: plugin-type=device
[INFO] client.plugin: shutting down plugin manager: plugin-type=driver
[INFO] client.plugin: plugin manager finished: plugin-type=driver
[DEBUG] client.server_mgr: shutting down
[INFO] nomad: shutting down server
[WARN] nomad: serf: Shutdown without a Leave
[INFO] agent: shutdown complete
Nomad server thông báo là các Node đã rời khỏi. Khi một server rời ra, việc replication trên server sẽ dừng lại. Những Nomad client sẽ cập nhật trạng thái của chúng để ngăn chặn những tác vụ từ Schedule và bắt đầu chuyển tất tác vụ hiện có đến một nơi khác trong Cluster.
Tiếp Theo
nomad
để xem những thông tin về agent.
Start agent trở lại với câu lệnh sudo nomad agent -dev
trước khi qua bài tiếp theo.
$ sudo nomad agent -dev
Đăng ký liền tay Nhận Ngay Bài Mới
Subscribe ngay
Cám ơn bạn đã đăng ký !
Lỗi đăng ký !
Add Comment