「
linux snap install too slow」でググったら以下のページを見つけた。
結論から言うと、dig か nslookup で fastly.cdn.snapcraft.io が引けるか確認して、引けなかったら、/etc/hosts に
151.101.62.217 fastly.cdn.snapcraft.io
って書き加えとけというアドバイスがビンゴ。9.6MB/s で無事瞬殺。
って言うか、何で引けないんだよ?これ?
他には、
見ると、snapcraft のサーバーが落ちてないか確認できるとの事。
こちらは問題なかった。
因みに、
に診断スクリプトあったので確認してみたが
fastly.cdn.snapcraft.io 引けてるときは
[20210309_223114] kou@H97GAMING3(x86_64): /tmp
$ SNAPD_DEBUG=1 SNAPD_DEBUG_HTTP=9 snap download flutter
2021/03/09 22:31:22.756259 tool_linux.go:204: DEBUG: restarting into "/snap/snapd/current/usr/bin/snap"
Fetching snap "flutter"
2021/03/09 22:31:22.766550 helpers.go:287: DEBUG: Going to download snap "flutter" in "/tmp".
2021/03/09 22:31:22.766730 store_action.go:441: DEBUG: Deltas enabled. Adding header Snap-Accept-Delta-Format: xdelta3
2021/03/09 22:31:22.766762 retry.go:49: DEBUG: Retrying https://api.snapcraft.io/v2/snaps/refresh, attempt 1, elapsed time=2.961µs
2021/03/09 22:31:22.766779 store.go:929: DEBUG: cannot set device session: no device serial yet
2021/03/09 22:31:22.767009 logger.go:67: DEBUG: > "POST /v2/snaps/refresh HTTP/1.1\r\nHost: api.snapcraft.io\r\nUser-Agent: snapd/2.49 (series 16; classic) snap ubuntu/20.04 (amd64) linux/5.4.0-58-generic\r\nContent-Length: 369\r\nAccept: application/json\r\nContent-Type: application/json\r\nSnap-Accept-Delta-Format: xdelta3\r\nSnap-Classic: true\r\nSnap-Device-Architecture: amd64\r\nSnap-Device-Capabilities: default-tracks\r\nSnap-Device-Series: 16\r\nAccept-Encoding: gzip\r\n\r\n"
2021/03/09 22:31:23.959391 retry.go:61: DEBUG: The retry loop for https://api.snapcraft.io/v2/snaps/refresh finished after 1 retries, elapsed time=1.192641599s, status: 200
2021/03/09 22:31:23.959713 store_download.go:161: DEBUG: Available deltas returned by store: []
2021/03/09 22:31:23.959880 store_download.go:197: DEBUG: Starting download of "/tmp/flutter_50.snap.partial".
2021/03/09 22:31:23.959900 retry.go:49: DEBUG: Retrying https://api.snapcraft.io/api/v1/snaps/download/YO0Adf4fqgxL7i3SaCn00oxEfd5CNQ63_50.snap, attempt 1, elapsed time=4.56µs
2021/03/09 22:31:23.959913 store.go:929: DEBUG: cannot set device session: no device serial yet
2021/03/09 22:31:23.960061 logger.go:67: DEBUG: > "GET /api/v1/snaps/download/YO0Adf4fqgxL7i3SaCn00oxEfd5CNQ63_50.snap HTTP/1.1\r\nHost: api.snapcraft.io\r\nUser-Agent: snapd/2.49 (series 16; classic) snap ubuntu/20.04 (amd64) linux/5.4.0-58-generic\r\nAccept: \r\nSnap-Device-Capabilities: default-tracks\r\nX-Ubuntu-Architecture: amd64\r\nX-Ubuntu-Classic: true\r\nX-Ubuntu-Series: 16\r\nX-Ubuntu-Wire-Protocol: 1\r\nAccept-Encoding: gzip\r\n\r\n"
2021/03/09 22:31:25.252135 logger.go:67: DEBUG: > "GET /download-origin/canonical-lgw01/YO0Adf4fqgxL7i3SaCn00oxEfd5CNQ63_50.snap?token=1615309200_c8fa87dae06d78d6bcc4f6b3a4e280447815a572 HTTP/1.1\r\nHost: canonical-bos01.cdn.snapcraft.io\r\nUser-Agent: snapd/2.49 (series 16; classic) snap ubuntu/20.04 (amd64) linux/5.4.0-58-generic\r\nAccept: \r\nReferer: https://api.snapcraft.io/api/v1/snaps/download/YO0Adf4fqgxL7i3SaCn00oxEfd5CNQ63_50.snap\r\nSnap-Device-Capabilities: default-tracks\r\nX-Ubuntu-Architecture: amd64\r\nX-Ubuntu-Classic: true\r\nX-Ubuntu-Series: 16\r\nX-Ubuntu-Wire-Protocol: 1\r\nAccept-Encoding: gzip\r\n\r\n"
2021/03/09 22:31:48.076787 store_download.go:532: DEBUG: Download succeeded in 24.117s (9MB/s).
Fetching assertions for "flutter"
2021/03/09 22:31:48.993579 retry.go:49: DEBUG: Retrying https://api.snapcraft.io/api/v1/snaps/assertions/snap-revision/ZmVyKHgJGuI3txejYy7UL_hFXOnK_n60hAsLgo6gW_UveECAgSpw7lNKzPp1D9gs?max-format=0, attempt 1, elapsed time=4.584µs
2021/03/09 22:31:48.993606 store.go:929: DEBUG: cannot set device session: no device serial yet
2021/03/09 22:31:48.993783 logger.go:67: DEBUG: > "GET /api/v1/snaps/assertions/snap-revision/ZmVyKHgJGuI3txejYy7UL_hFXOnK_n60hAsLgo6gW_UveECAgSpw7lNKzPp1D9gs?max-format=0 HTTP/1.1\r\nHost: api.snapcraft.io\r\nUser-Agent: snapd/2.49 (series 16; classic) snap ubuntu/20.04 (amd64) linux/5.4.0-58-generic\r\nAccept: application/x.ubuntu.assertion\r\nSnap-Device-Capabilities: default-tracks\r\nX-Ubuntu-Architecture: amd64\r\nX-Ubuntu-Classic: true\r\nX-Ubuntu-Series: 16\r\nX-Ubuntu-Wire-Protocol: 1\r\nAccept-Encoding: gzip\r\n\r\n"
2021/03/09 22:31:50.050713 retry.go:61: DEBUG: The retry loop for https://api.snapcraft.io/api/v1/snaps/assertions/snap-revision/ZmVyKHgJGuI3txejYy7UL_hFXOnK_n60hAsLgo6gW_UveECAgSpw7lNKzPp1D9gs?max-format=0 finished after 1 retries, elapsed time=1.05713479s, status: 200
2021/03/09 22:31:50.050754 retry.go:49: DEBUG: Retrying https://api.snapcraft.io/api/v1/snaps/assertions/snap-declaration/16/YO0Adf4fqgxL7i3SaCn00oxEfd5CNQ63?max-format=4, attempt 1, elapsed time=1.99µs
2021/03/09 22:31:50.050768 store.go:929: DEBUG: cannot set device session: no device serial yet
2021/03/09 22:31:50.050894 logger.go:67: DEBUG: > "GET /api/v1/snaps/assertions/snap-declaration/16/YO0Adf4fqgxL7i3SaCn00oxEfd5CNQ63?max-format=4 HTTP/1.1\r\nHost: api.snapcraft.io\r\nUser-Agent: snapd/2.49 (series 16; classic) snap ubuntu/20.04 (amd64) linux/5.4.0-58-generic\r\nAccept: application/x.ubuntu.assertion\r\nSnap-Device-Capabilities: default-tracks\r\nX-Ubuntu-Architecture: amd64\r\nX-Ubuntu-Classic: true\r\nX-Ubuntu-Series: 16\r\nX-Ubuntu-Wire-Protocol: 1\r\nAccept-Encoding: gzip\r\n\r\n"
2021/03/09 22:31:50.327013 retry.go:61: DEBUG: The retry loop for https://api.snapcraft.io/api/v1/snaps/assertions/snap-declaration/16/YO0Adf4fqgxL7i3SaCn00oxEfd5CNQ63?max-format=4 finished after 1 retries, elapsed time=276.259638ms, status: 200
2021/03/09 22:31:50.327062 retry.go:49: DEBUG: Retrying https://api.snapcraft.io/api/v1/snaps/assertions/account/31hpowUutr6Jgcqx1cjBTEnKAbM1La5H?max-format=0, attempt 1, elapsed time=2.446µs
2021/03/09 22:31:50.327078 store.go:929: DEBUG: cannot set device session: no device serial yet
2021/03/09 22:31:50.327200 logger.go:67: DEBUG: > "GET /api/v1/snaps/assertions/account/31hpowUutr6Jgcqx1cjBTEnKAbM1La5H?max-format=0 HTTP/1.1\r\nHost: api.snapcraft.io\r\nUser-Agent: snapd/2.49 (series 16; classic) snap ubuntu/20.04 (amd64) linux/5.4.0-58-generic\r\nAccept: application/x.ubuntu.assertion\r\nSnap-Device-Capabilities: default-tracks\r\nX-Ubuntu-Architecture: amd64\r\nX-Ubuntu-Classic: true\r\nX-Ubuntu-Series: 16\r\nX-Ubuntu-Wire-Protocol: 1\r\nAccept-Encoding: gzip\r\n\r\n"
2021/03/09 22:31:50.584958 retry.go:61: DEBUG: The retry loop for https://api.snapcraft.io/api/v1/snaps/assertions/account/31hpowUutr6Jgcqx1cjBTEnKAbM1La5H?max-format=0 finished after 1 retries, elapsed time=257.892891ms, status: 200
2021/03/09 22:31:50.585008 retry.go:49: DEBUG: Retrying https://api.snapcraft.io/api/v1/snaps/assertions/account-key/BWDEoaqyr25nF5SNCvEv2v7QnM9QsfCc0PBMYD_i2NGSQ32EF2d4D0hqUel3m8ul?max-format=0, attempt 1, elapsed time=3.282µs
2021/03/09 22:31:50.585031 store.go:929: DEBUG: cannot set device session: no device serial yet
2021/03/09 22:31:50.585166 logger.go:67: DEBUG: > "GET /api/v1/snaps/assertions/account-key/BWDEoaqyr25nF5SNCvEv2v7QnM9QsfCc0PBMYD_i2NGSQ32EF2d4D0hqUel3m8ul?max-format=0 HTTP/1.1\r\nHost: api.snapcraft.io\r\nUser-Agent: snapd/2.49 (series 16; classic) snap ubuntu/20.04 (amd64) linux/5.4.0-58-generic\r\nAccept: application/x.ubuntu.assertion\r\nSnap-Device-Capabilities: default-tracks\r\nX-Ubuntu-Architecture: amd64\r\nX-Ubuntu-Classic: true\r\nX-Ubuntu-Series: 16\r\nX-Ubuntu-Wire-Protocol: 1\r\nAccept-Encoding: gzip\r\n\r\n"
2021/03/09 22:31:50.832999 retry.go:61: DEBUG: The retry loop for https://api.snapcraft.io/api/v1/snaps/assertions/account-key/BWDEoaqyr25nF5SNCvEv2v7QnM9QsfCc0PBMYD_i2NGSQ32EF2d4D0hqUel3m8ul?max-format=0 finished after 1 retries, elapsed time=247.988221ms, status: 200
Install the snap with:
snap ack flutter_50.assert
snap install flutter_50.snap
[20210309_223150] kou@H97GAMING3(x86_64): /tmp
$
引けてないときは
[20210309_223224] kou@H97GAMING3(x86_64): /tmp
$ SNAPD_DEBUG=1 SNAPD_DEBUG_HTTP=9 snap download flutter
2021/03/09 22:32:27.287466 tool_linux.go:204: DEBUG: restarting into "/snap/snapd/current/usr/bin/snap"
Fetching snap "flutter"
2021/03/09 22:32:27.297511 helpers.go:287: DEBUG: Going to download snap "flutter" in "/tmp".
2021/03/09 22:32:27.297724 store_action.go:441: DEBUG: Deltas enabled. Adding header Snap-Accept-Delta-Format: xdelta3
2021/03/09 22:32:27.297756 retry.go:49: DEBUG: Retrying https://api.snapcraft.io/v2/snaps/refresh, attempt 1, elapsed time=2.415µs
2021/03/09 22:32:27.297770 store.go:929: DEBUG: cannot set device session: no device serial yet
2021/03/09 22:32:27.297957 logger.go:67: DEBUG: > "POST /v2/snaps/refresh HTTP/1.1\r\nHost: api.snapcraft.io\r\nUser-Agent: snapd/2.49 (series 16; classic) snap ubuntu/20.04 (amd64) linux/5.4.0-58-generic\r\nContent-Length: 369\r\nAccept: application/json\r\nContent-Type: application/json\r\nSnap-Accept-Delta-Format: xdelta3\r\nSnap-Classic: true\r\nSnap-Device-Architecture: amd64\r\nSnap-Device-Capabilities: default-tracks\r\nSnap-Device-Series: 16\r\nAccept-Encoding: gzip\r\n\r\n"
2021/03/09 22:32:28.495313 retry.go:61: DEBUG: The retry loop for https://api.snapcraft.io/v2/snaps/refresh finished after 1 retries, elapsed time=1.197567577s, status: 200
2021/03/09 22:32:28.495607 store_download.go:161: DEBUG: Available deltas returned by store: []
2021/03/09 22:32:28.495779 store_download.go:197: DEBUG: Starting download of "/tmp/flutter_50.snap.partial".
2021/03/09 22:32:28.495813 retry.go:49: DEBUG: Retrying https://api.snapcraft.io/api/v1/snaps/download/YO0Adf4fqgxL7i3SaCn00oxEfd5CNQ63_50.snap, attempt 1, elapsed time=15.854µs
2021/03/09 22:32:28.495839 store.go:929: DEBUG: cannot set device session: no device serial yet
2021/03/09 22:32:28.496032 logger.go:67: DEBUG: > "GET /api/v1/snaps/download/YO0Adf4fqgxL7i3SaCn00oxEfd5CNQ63_50.snap HTTP/1.1\r\nHost: api.snapcraft.io\r\nUser-Agent: snapd/2.49 (series 16; classic) snap ubuntu/20.04 (amd64) linux/5.4.0-58-generic\r\nAccept: \r\nSnap-Device-Capabilities: default-tracks\r\nX-Ubuntu-Architecture: amd64\r\nX-Ubuntu-Classic: true\r\nX-Ubuntu-Series: 16\r\nX-Ubuntu-Wire-Protocol: 1\r\nAccept-Encoding: gzip\r\n\r\n"
2021/03/09 22:32:29.691327 logger.go:67: DEBUG: > "GET /download-origin/canonical-lgw01/YO0Adf4fqgxL7i3SaCn00oxEfd5CNQ63_50.snap?token=1615309200_c8fa87dae06d78d6bcc4f6b3a4e280447815a572 HTTP/1.1\r\nHost: canonical-bos01.cdn.snapcraft.io\r\nUser-Agent: snapd/2.49 (series 16; classic) snap ubuntu/20.04 (amd64) linux/5.4.0-58-generic\r\nAccept: \r\nReferer: https://api.snapcraft.io/api/v1/snaps/download/YO0Adf4fqgxL7i3SaCn00oxEfd5CNQ63_50.snap\r\nSnap-Device-Capabilities: default-tracks\r\nX-Ubuntu-Architecture: amd64\r\nX-Ubuntu-Classic: true\r\nX-Ubuntu-Series: 16\r\nX-Ubuntu-Wire-Protocol: 1\r\nAccept-Encoding: gzip\r\n\r\n"
flutter 4% 155kB/s 21.3m
^C
[20210309_223327] kou@H97GAMING3(x86_64): /tmp
$
みたいな感じになる。
ぱっと見つぅか、diff 取ってもタイムスタンプ以外の違いが見当たらない。
どの CDN 使ってるのかはどうやって確認すればよいのだろうか???
mtr はよくわからんのだが、
fastly.cdn.snapcraft.io 引けてる時
$ mtr --report-wide api.snapcraft.io
Start: 2021-03-09T22:27:13+0900
HOST: H97GAMING3 Loss% Snt Last Avg Best Wrst StDev
1.|-- 192.168.1.1 0.0% 10 0.5 0.5 0.4 0.6 0.1
2.|-- ***.**.**.*** 0.0% 10 28.4 29.8 2.5 42.7 14.4
3.|-- ***.**.**.*** 0.0% 10 24.0 28.5 2.1 46.3 16.3
4.|-- ***.**.**.*** 0.0% 10 32.6 43.0 4.1 93.7 22.9
5.|-- ***.**.**.*** 0.0% 10 25.0 34.2 6.0 47.6 13.0
6.|-- 125.170.96.53 0.0% 10 38.8 42.8 13.4 55.9 14.0
7.|-- 125.170.96.34 0.0% 10 57.5 42.0 16.0 60.0 18.6
8.|-- ae-17.r03.osakjp02.jp.bb.gin.ntt.net 0.0% 10 55.6 40.8 19.6 59.9 16.1
9.|-- ae-2.r25.osakjp02.jp.bb.gin.ntt.net 0.0% 10 52.2 38.8 21.8 60.2 14.6
10.|-- ae-3.r24.lsanca07.us.bb.gin.ntt.net 0.0% 10 132.2 146.3 124.8 167.0 16.2
11.|-- ae-1.r00.lsanca07.us.bb.gin.ntt.net 0.0% 10 128.3 145.2 122.4 160.8 13.0
12.|-- ae-0.level3.lsanca07.us.bb.gin.ntt.net 90.0% 10 150.1 150.1 150.1 150.1 0.0
13.|-- ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
14.|-- SOURCE-MANA.ear2.London1.Level3.net 0.0% 10 329.4 309.9 281.6 369.5 25.6
15.|-- te2-1.tigermelon.canonical.com 0.0% 10 266.0 271.7 250.8 289.0 12.1
16.|-- zeeman.canonical.com 10.0% 10 291.1 294.5 268.7 309.9 11.9
17.|-- api.snapcraft.io 10.0% 10 283.4 276.8 247.9 292.0 13.8
引けてない時
$ mtr --report-wide api.snapcraft.io
Start: 2021-03-09T22:42:44+0900
HOST: H97GAMING3 Loss% Snt Last Avg Best Wrst StDev
1.|-- 192.168.1.1 0.0% 10 0.5 0.5 0.4 0.7 0.1
2.|-- ***.**.**.*** 0.0% 10 15.9 10.9 1.9 35.2 11.0
3.|-- ***.**.**.*** 0.0% 10 8.9 9.6 1.9 35.2 13.2
4.|-- ***.**.**.*** 0.0% 10 20.3 11.6 4.5 28.3 9.3
5.|-- ***.**.**.*** 0.0% 10 12.4 12.0 5.4 36.9 9.7
6.|-- 153.149.219.45 0.0% 10 18.5 19.2 8.8 49.0 12.5
7.|-- 153.149.219.146 0.0% 10 35.3 23.1 9.9 46.3 11.5
8.|-- ae-12.r02.osakjp02.jp.bb.gin.ntt.net 0.0% 10 28.1 23.9 12.2 40.5 8.6
9.|-- ae-3.r25.osakjp02.jp.bb.gin.ntt.net 0.0% 10 26.4 27.4 12.5 52.6 11.9
10.|-- ae-3.r24.lsanca07.us.bb.gin.ntt.net 0.0% 10 137.4 138.6 122.2 170.6 16.4
11.|-- ae-1.r00.lsanca07.us.bb.gin.ntt.net 0.0% 10 127.7 130.0 117.6 158.7 13.0
12.|-- ae-0.level3.lsanca07.us.bb.gin.ntt.net 90.0% 10 120.7 120.7 120.7 120.7 0.0
13.|-- ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
14.|-- SOURCE-MANA.ear2.London1.Level3.net 0.0% 10 272.1 279.7 268.1 307.7 13.2
15.|-- te2-1.tigermelon.canonical.com 0.0% 10 240.5 251.1 240.5 275.9 11.8
16.|-- zeeman.canonical.com 0.0% 10 266.2 270.3 263.3 292.8 11.9
17.|-- api.snapcraft.io 0.0% 10 262.8 269.2 262.7 288.1 9.0
みたいな感じ。
API サーバーじゃなく CDN サーバーの問題っぽいので、この診断じゃ何もわからんっぽい。