如何避免gcloud计算警报存储缓存中的密钥

如何避免gcloud计算警报存储缓存中的密钥,第1张

概述我写了一些小代码来控制谷歌云平台上的多个计算引擎.整个文件在这里是github.该部分导致的问题是gcloud compute ssh如下def upload_file(self, projectname): var = raw_input('Upload file with name: ' + projectname + ' will remove

我写了一些小代码来控制谷歌云平台上的多个计算引擎.整个文件在这里是github.

该部分导致的问题是gcloud compute ssh如下

def upload_file(self,projectname):    var = raw_input("Upload file with name: " + projectname + " will remove all file and directory with same name in the instance. Are you sure? (y/n)")    if var.lower().strip() != "y":        print "Abort uploading."        return    is_zip = False    if projectname.split('.')[1] == "zip":        is_zip = True    fullpath_projectname = __location__ + "/" + projectname    if os.path.isfile(fullpath_projectname):        all_instances = self.search_any('instances',filter="labels.type=" + self.working_group_label)        all_instances_name = [x['name'] for x in all_instances]        i = 0        for instance in all_instances_name:            temp_command = 'gcloud_command_' + str(i)             i += 1            temp_instance = user_name + "@" + instance            temp_file_path = '/home/' + user_name + '/'            command_arr = []            command_arr.append('call gcloud compute ssh ' + temp_instance + ' --zone ' + zone + ' --command "cd ' + temp_file_path + '; sudo rm -rf ' + temp_file_path + projectname.split('.')[0] + '; sudo rm -f ' + temp_file_path + projectname.split('.')[0] + '*"\n')            command_arr.append('call gcloud compute scp "' + fullpath_projectname + '" ' + temp_instance + ':' + temp_file_path + '\n')            if is_zip:                command_arr.append('call gcloud compute ssh ' + temp_instance + ' --zone ' + zone + ' ' + ' --command "cd ' + temp_file_path + '; sudo unzip ' + temp_file_path + projectname + '"' + '\n')            with open(os.path.join(__location__,'bat/' + temp_command + '.bat'),'w') as bat:                bat.writelines(command_arr)            subprocess.Popen(os.path.join(__location__,shell=True)

此部分用于将相同文件(通常为.zip)上载到具有相同标记的所有实例.但是,在我的本地计算机上执行此 *** 作会跳出很多警报,要求我保存ssh指纹.

像这样,

最初它是一个小工具,为了我自己的方便,为了运行多个计算引擎来查询在线数据(我希望有多个IP,以避免被归类为DDoS).但现在我需要与其他团队分享这一点,以便捆绑警报会导致其他人混淆.

我可以手动逐个缓存它,但对其他人来说不方便.

我试图通过改变最后一行来回答缓存

proc = subprocess.Popen(os.path.join(__location__,shell=True)proc.communicate(input='y')

但是这使得所有上传只是一个接一个地进行,对于许多实例来说这是非常慢的.最佳答案警告来自底层的ssh二进制文件.您可以分别使用–ssh-flag和–scp-flag来gcloud compote ssh和gcloud compute scp来控制实际执行ssh *** 作的底层二进制文件的行为.

对可行方法的一个很好的解释是provided here(查看接受答案中的第一个选项).但是,我不知道PuTTY是否会接受相同的语法,因此您可能需要为其查找正确的标志值.

这些命令的完整文档可在here和here获得. 总结

以上是内存溢出为你收集整理的如何避免gcloud计算警报存储缓存中的密钥全部内容,希望文章能够帮你解决如何避免gcloud计算警报存储缓存中的密钥所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/langs/1206008.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-04
下一篇2022-06-04

发表评论

登录后才能评论

评论列表(0条)

    保存