我有一个服务帐户,该帐户已分配给我的 GCE 实例并被列为活动帐户,我可以通过gcloud auth list在任何一个实例上运行来验证该帐户。该服务帐号目前具有对一些服务的 Google Cloud API 访问权限。我想要做的是更新此访问权限,以便服务帐户可以从 Google Cloud DNS 读取区域/记录集信息。
我查看了有关服务帐户的文档并编辑其访问权限,并尝试编辑 GCP 中的服务帐户权限,但我没有找到直接添加对 Google Cloud DNS 或 Google Cloud Networking 的访问权限的方法,这将是包括 DNS。服务帐户权限可以设置为我自己的用户帐户并分配所有者/编辑角色,但我更愿意只授予服务帐户 Google Cloud DNS 所需的额外访问权限。
任何帮助或见解将不胜感激,谢谢!
我需要弄清楚哪个映像用于在我的组织的 Google Cloud / Compute Engine 项目中创建虚拟机。
我在虚拟机概述页面(在https://console.cloud.google.com/compute/instances内)或通过使用gcloud compute instances describe.
经过快速谷歌搜索或扫描https://cloud.google.com/compute/docs/上的文档后,这些信息对我来说并不明显。
我似乎无法找到一种方法来查看我的 Google Cloud Platform 日志中允许和拒绝的流量。GCP 防火墙确实不记录允许/拒绝的流量吗?
我刚刚开始使用 Google Kubernetes Engine (GKE),我很喜欢它。
我花了一些时间让内部负载均衡器正常工作,这样我的应用程序就有了 10.128.0.0/16 IP。
现在我想知道,我可以从集群中删除外部 IP 吗?
我发现 Google 需要集群上的外部 IP,并且无法将其删除。有人对这个有经验么?
我正在处理健康数据,并且犹豫是否将生产应用程序部署到具有外部 IP 的集群中。我认为我的项目上的防火墙提供了足够的保护,但如果我打算将个人健康数据放入其中,我只是觉得系统具有外部 IP 是错误的。如果您不知道“我可以从集群中删除外部 IP 吗?”的答案。问题,我很想得到一些评论。我在 Google 的 HIPAA 合规性文档中看到GKE 是涵盖产品。
networking hipaa google-cloud-platform google-kubernetes-engine
我无法通过 SSH 连接到 Google Cloud 服务上的实例。
我不太熟悉虚拟机管理和故障排除,但已经尝试了我所知道的一切,谷歌可以提供给我,包括:
无论我尝试什么,唯一的结果是一个加载符号,后跟以下内容:
到项目元数据的密钥传输花费了异常长的时间。传输到实例元数据可能会更快,但只会将密钥传输到该虚拟机。如果您希望从此虚拟机通过 SSH 连接到其他虚拟机,则需要相应地传输密钥。
我不能这样做,因为我没有 GCloud 用于 SSH 进入实例的私钥,并且使用 PuTTY 根本不起作用,因为我给服务器的任何公钥都不起作用全部。
ssh virtual-machines ssh-keys google-compute-engine google-cloud-platform
我们的应用程序需要在两个文件存储中存在数据。在我们当前的 Kubernetes 配置中,我们使用一个持久卷,如下所示:
apiVersion: v1
kind: PersistentVolume
metadata:
name: fileserver-input
spec:
capacity:
storage: 1T
accessModes:
- ReadWriteMany
nfs:
path: /mypath
server: XX.XXX.XXX.XXX
Run Code Online (Sandbox Code Playgroud)
然后我们将其作为一个卷添加到我们的部署中:
volumeMounts:
- mountPath: /mypath
name: my-path
Run Code Online (Sandbox Code Playgroud)
如何做到这一点Cloud Run on GKE?我们已经尝试运行命令将文件存储挂载到 docker 容器中,但是我们没有成功,因为容器没有以特权方式运行。
有没有办法像常规那样指定一个volumeMount GKE,或者在特权模式下运行容器Cloud Run on GKE?
由于奇怪的历史原因,我们在 GCS 存储桶中存储了 2.14Tb 的数据,用于存储 Google 容器注册表 (GCR) 的 docker 镜像。
我们曾经gcloud container images delete <image>删除了数千个未使用的图像,但是 stackdriver 表示底层 GCS 存储桶中存储的总字节数没有变化。
看起来gcloud container images delete已经从注册表中删除了图像元数据,但没有删除底层。
有没有一种方法可以从 GCS 中垃圾收集未使用的数据并减少每月的费用?
这是我们的 GCS 存储桶中对象总大小的图表 - 看起来对象大约每 24 小时被垃圾收集一次(在我们的例子中大约是 UTC 中午)
当我尝试访问元数据服务器时出现Could not resolve host metadata.google.internal错误。Could not resolve host metadata
虽然我使用自己的 VPC 和自定义防火墙,但我不认为这是防火墙的问题,因为根据 Google 元数据服务器流量永远不会离开实例。此外,我的主机文件中有一个条目证明了这一点:
# Google Compute Engine metadata server
169.254.169.254 metadata.google.internal metadata
我尝试 ping 169.254.169.254,但它返回General Failure(但是,它证明什么都没有......我不确定元数据服务器是否允许 ICMP)。
我的 Stackdriver Logging Agent 也因此失败。这是其日志中的一行:
Failed to access metadata service: error_class=Errno::ENETUNREACH error="Failed to open TCP connection to 169.254.169.254:80 (A socket operation was attempted to an unreachable network. - connect(2) for \"169.254.169.254\" port 80)"
如果重要的话,我的 VPC 网络中的内部流量仅限于icmp和tcp:22(ssh)。
发生了什么以及如何解决这个问题?
我有一个 VPC 网络设置,其中有一个连接到本地网络的 VPN。云路由器用于在内部以及与 VPN 网络之间创建路由 (BGP)。其中一个项目是托管具有内部和外部 IP(具有别名 IP 范围)的公共 Kubernetes 集群。它被配置为 VPC 网络的一部分(使用其子网之一)。
我正在尝试将 Kubernetes 上运行的服务连接到内部网络中的资源(通过 Cloud VPN)。不幸的是,这似乎不可能。连接超时。
Cloud VPN、Cloud Router 设置正确,网络之间存在访问/通信。唯一的问题是,我无法从 Kubernetes 容器访问本地资源
注销 Google Cloud似乎应该很容易。如果我运行:
$ unset GOOGLE_APPLICATION_CREDENTIALS
$ gcloud auth revoke --all
Revoked credentials:
- [my account]
$ gcloud auth list
No credentialed accounts.
To login, run:
$ gcloud auth login `ACCOUNT`
Run Code Online (Sandbox Code Playgroud)
乍一看我好像完全退出了gcloud。但是看看当我打开 Python shell 时会发生什么:
>>> from google.cloud import secretmanager_v1beta1 as secretmanager
>>> client = secretmanager.SecretManagerServiceClient()
/Users/my/path/.venv/lib/python3.7/site-packages/google/auth/_default.py:66: UserWarning: Your application has authenticated using end user credentials from Google Cloud SDK. We recommend that most server applications use service accounts instead. If your application continues …Run Code Online (Sandbox Code Playgroud) docker ×1
gcloud ×1
hipaa ×1
kubernetes ×1
networking ×1
routing ×1
security ×1
ssh ×1
ssh-keys ×1