Как получить тип ОС с помощью gcloud cli

#google-cloud-platform #gcloud

#google-облачная платформа #gcloud

Вопрос:

В моем проекте запущено несколько экземпляров gcp .

Итак, мне нужно перебрать каждый экземпляр и получить версию ОС, и если версия ОС соответствует определенному значению, мне нужно выполнить другую gcloud команду, чтобы получить установленные библиотеки.

Итак, я использую эту команду для перебора каждого экземпляра:

 $(gcloud compute instances list --format="value(name)")

// which gives the output as below

name: temp-1
---
name: temp-2
---
name: test1
  

Мне тоже нужно избавиться name: .

  1. И мне нужно получить дистрибутив Linux (ubuntu, centos / rhel) для каждого экземпляра, используя /etc/os-release

Возможно ли использовать ssh (без реального использования ssh) и выполнить awk -F= '/^NAME/{print $2}' /etc/os-release команду на каждом сервере (temp-1, temp-2, test1) и вернуть результат в командную строку?

Ответ №1:

Я вижу несколько способов сделать это. Вы можете использовать любую из следующих команд:

 $ gcloud compute ssh --zone us-central1-a instance-1 --command "uname -a"
Linux instance-1 4.19.0-11-cloud-amd64 #1 SMP Debian 4.19.146-1 (2020-09-17) x86_64 GNU/Linux

$ gcloud compute ssh --zone us-central1-a instance-1 -- uname -a
Linux instance-1 4.19.0-11-cloud-amd64 #1 SMP Debian 4.19.146-1 (2020-09-17) x86_64 GNU/Linux
Connection to n.n.n.n closed.
  

В качестве альтернативы, в масштабе, вы можете использовать продукт VM Manager: