|
导出podman镜像 需要把这些镜像导出来,做成离线包 [root@ceph1 ~]# podman save -o ceph.tar quay.io/ceph/ceph:v15 [root@ceph1 ~]# ls anaconda-ks.cfg ceph.tar [root@ceph1 ~]# du -sh ceph.tar 1.2G ceph.tar [root@ceph1 ~]# podman save -o prometheus.tar quay.io/prometheus/prometheus:v2.18.1 [root@ceph1 ~]# podman save -o ceph-grafana.tar quay.io/ceph/ceph-grafana:6.7.4 [root@ceph1 ~]# podman save -o node-exporter.tar quay.io/prometheus/node-exporter:v0.18.1 [root@ceph1 ~]# podman save -o alertmanager.tar quay.io/prometheus/alertmanager:v0.20.0 7 R+ S: x) K# b3 G4 j2 o" c
修改cephadm脚本 最后需要修改的是cephadm安装脚本,默认安装的时候cephadm是去网上pull镜像,但是实际生产环境是没有外网的,需要修改成直接用本地的镜像 修改_pull_image函数的cmd列表中的pull,将其修改为images。(我用的是octopus版本,其他版本基本不变) @default_image def command_pull(): # type: () -> int
" v" a; o# _2 e( ~# O" A+ w) _
_pull_image(args.image) return command_inspect_image() $ s, s/ x1 ^. N1 N: c
% x3 \- w F" |, p0 x" q7 Z
def _pull_image(image): # type: (str) -> None logger.info('Pulling container image %s...' % image) 7 _. o1 C, {' q4 o4 ]' N
ignorelist = [ "error creating read-write layer with ID", "net/http: TLS handshake timeout", "Digest did not match, expected",
8 p2 E$ |+ H' u+ B
#// cmd = [container_path, 'pull', image] cmd = [container_path, 'images', image] cmd_str = ' '.join(cmd)
4 O, w0 V4 R+ m: Z ?
for sleep_secs in [1, 4, 25]: out, err, ret = call(cmd) if not ret: return
7 Y, U+ E- a1 H/ a( x
if not any(pattern in err for pattern in ignorelist): raise RuntimeError('Failed command: %s' % cmd_str) 4 N! \9 I1 D: V6 p# W2 T1 S! R
logger.info('"%s failed transiently. Retrying. waiting %s seconds...' % (cmd_str, sleep_secs)) time.sleep(sleep_secs)
8 J/ c0 o& R6 Z9 k% E/ I# x9 o
raise RuntimeError('Failed command: %s: maximum retries reached' % cmd_str) 7 g \; f; X9 @9 a" I
( {" ~% Z4 L) [" Q8 l
* z' c2 P: g* X+ p1 |& u! r
( ]9 K E) F7 w% ?" S6 y* M6 K导入镜像:
4 ] X" f2 S! J导入podman镜像复制podman load -i node-exporter.tar 4 q# S' q) I# ]; H! |
5 R8 u5 a# p% q! L: Epodman load -i alertmanager.tar ( {/ O3 D& D/ u' x9 r
2 a5 v( L. F" a$ o' k& Q7 |$ B: ~; t: q8 z5 ~8 Y* k
podman load -i prometheus.tar 2 z* V& J; p8 m5 h# r4 t
: @# V! Y0 z" s+ t7 L- ?! s
$ r/ k1 C2 T8 @9 S- t+ z8 w podman load -i ceph.tar # Y9 b+ T; R5 \: \3 t7 Q
5 ~, B) S0 X* y! Z- m4 ]- @9 z; q% U" |/ Z- u
podman load -i grafana.tar
9 n2 c/ }8 E# q5 l a6 O9 \: c- ~. Y/ k/ _# G: d
1 x9 L+ s) Y; h
7 h T% S$ C5 r! | A
' F4 x$ @* y3 s; q9 T# J' C4 n, }: f7 Q9 |
|