web-dev-qa-db-ja.com

VM GCPのDeploymentManagerによるインスタンス作成にファイアウォールを含める方法

私のyamlテンプレートは次のとおりです。ファイアウォールプロパティを追加して、httpトラフィックを許可します。

resources:

    - name: deployed-vm2222
      type: compute.v1.instance
      properties:
        zone: us-central1-f           
        machineType: https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f/machineTypes/f1-micro
        disks:
        - deviceName: boot
          type: PERSISTENT
          boot: true
          autoDelete: true
6
A.JRJ

次のように、ファイアウォールルールをテンプレートに追加できます。

- name: allow-http-fw
  type: compute.v1.firewall
  properties:
    allowed:
      - IPProtocol: TCP
        ports: 80
    sourceRanges: [ 0.0.0.0/0 ]

ファイアウォールリソース にリストされているプロパティを定義できます。

2
LundinCast

このアクションを実行する際に注意すべき点が2つあります。ラベル付けを適用できるように、インスタンスに正しくタグを付けてください。たとえば、インスタンス、http-serverまたはhttps-serverにタグを付けると、ファイアウォールがパブリックトラフィックを処理していることをファイアウォールが認識していることを確認できます。

ファイアウォールエントリの追加は、次の方法で実現できます。

resources:
  - name: instance
    type: xxxxxxxx
    properties:
      zone: us-east1-b
      tags:
        - http-server
  - name: default-allow-http
    type: compute.v1.firewall
    properties:
      network: https://www.googleapis.com/compute/v1/projects/myproject/global/networks/default
      targetTags: ["http-server"]
      sourceRanges: ["0.0.0.0/0"]
      allowed:
      - IPProtocol: TCP
        ports: ["80"]
3
Richard Rose

ファイアウォールでは、次のものを使用します。

targetTags: ["http"]

次に、インスタンスでは次を使用します。

tags:
    items: ["http"]

完全なファイルは次のようになります。

resources:
- name: default-allow-http
  type: compute.v1.firewall
  properties:
    targetTags: ["http"]
    sourceRanges: ["0.0.0.0/0"]
    allowed:
      - IPProtocol: TCP
        ports: ["80"]    
- name: vm-test
  type: compute.v1.instance
  properties:
    zone: xxxx
    machineType: xxxx
    tags:
        items: ["http"]
    disks:
    - deviceName: boot
      type: PERSISTENT
      boot: true
      autoDelete: true
      initializeParams:
        diskName: xxxx
        sourceImage: xxxx
    networkInterfaces:
    - network: xxxx
      accessConfigs:
      - name: External NAT
        type: ONE_TO_ONE_NAT
0
Fady Ibrahim

@LundinCastはほぼ完全に正しいですpropertiesの下にnetwork:がありません。

networkInterfaces:と同じ値になります

0
Ken Ingram