OS: openSUSE Leap 42.1
之前的測試環境用的是測試版本的 repo, 目前官方已經到 1.12.1 所以就想進行重新安裝
重新安裝前, 先記下移除 swarm mode 相關程序
Docker 版本
# docker --version
Docker version 1.13.0-dev, build dcdf2b4
使用的來源
# zypper repos -E
# | Alias | Name | Enabled | GPG Check | Refresh
---+----------------------------------------+---------------------------------------------------------------------------------+---------+-----------+--------
1 | Virtualization_containers_experimental | Docker Experimental Packages (openSUSE_Leap_42.1) | Yes | (r ) Yes | Yes
目前的測試環境是 3 個 nodes
先使用 docker node ls 來列出所有的 node
# docker node ls
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS
71llz5z3q8f390s9l47qeypue docker2 Ready Active
91ilfph3oq77e1jfwfzm1hm3g docker3 Ready Active
bvbah38n6vusy7nilnbcve22w * docker1 Ready Active Leader
因為要重新安裝, 所以就把上面的服務都移除了
# docker service ls
ID NAME REPLICAS IMAGE COMMAND
參考官方移除的程序
移除所有 work node
以我的環境來說, 我有兩個 work nodes, 一個 manager node
首先到 work node 上面進行 node 移除動作
使用 docker swarm leave 指令移除 node
# docker swarm leave
Node left the swarm.
回到 manager node 上面觀察
會發現 Availability 為 Down
# docker node ls
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS
71llz5z3q8f390s9l47qeypue docker2 Ready Active
91ilfph3oq77e1jfwfzm1hm3g docker3 Down Active
bvbah38n6vusy7nilnbcve22w * docker1 Ready Active Leader
# docker node rm docker3
docker3
觀察結果
# docker node ls
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS
71llz5z3q8f390s9l47qeypue docker2 Ready Active
bvbah38n6vusy7nilnbcve22w * docker1 Ready Active Leader
在執行 docker rm 的時候, node 必須狀態為 Down 才可以移除, 否則就會出現警告並不能執行
# docker node rm docker2
Error response from daemon: rpc error: code = 9 desc = node 71llz5z3q8f390s9l47qeypue is not down and can't be removed
接下來到 所有的 work node 離開 swarm mode
並進行 docker node rm
回到 manager node
目前只剩下 manager node
# docker node ls
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS
bvbah38n6vusy7nilnbcve22w * docker1 Ready Active Leader
觀察目錄
# du -sh /var/lib/docker/swarm/raft/
123M /var/lib/docker/swarm/raft/
使用 docker swarm leave 指令離開, 因為是 manager node 所以會被提示使用 --force
# docker swarm leave
Error response from daemon: You are attempting to leave the swarm on a node that is participating as a manager. Removing the last manager erases all current state of the swarm. Use `--force` to ignore this message.
# docker swarm leave --force
Node left the swarm.
再次觀察
# du -sh /var/lib/docker/swarm/
4.0K /var/lib/docker/swarm/
到這邊就可以了
接下來就是在各個 node 移除實驗的 repos, 以及移除 docker 套件重新安裝
# zypper -n remove docker
# yast2 repositories
:)
先記下來
~ enjoy it
參考文件
沒有留言:
張貼留言