エンハンスドロードバランサ: sakuracloud_proxylb
Example Usage
resource "sakuracloud_proxylb" "foobar" {
name = "foobar"
plan = 100
vip_failover = true
sticky_session = true
gzip = true
proxy_protocol = true
timeout = 10
region = "is1"
health_check {
protocol = "http"
delay_loop = 10
host_header = "example.com"
path = "/"
}
sorry_server {
ip_address = "192.0.2.1"
port = 80
}
syslog {
server = "192.0.2.1"
port = 514
}
bind_port {
proxy_mode = "http"
port = 80
response_header {
header = "Cache-Control"
value = "public, max-age=10"
}
}
server {
ip_address = sakuracloud_server.foobar.ip_address
port = 80
group = "group1"
}
rule {
host = "www.example.com"
path = "/"
group = "group1"
}
description = "description"
tags = ["tag1", "tag2"]
}
resource sakuracloud_server "foobar" {
name = "foobar"
network_interface {
upstream = "shared"
}
}
Argument Reference
name
- (Required) 名前 /1
-64
文字で指定vip_failover
- (Optional) VIPフェイルオーバ機能の有効フラグ / この値を変更するとリソースの再作成が行われるplan
- (Optional) プラン / 次のいずれかを指定[100
/500
/1000
/5000
/10000
/50000
/100000
]/ この値を変更するとリソースの再作成が行われる / デフォルト:100
region
- (Optional) エンハンスドロードバランサが配置されるリージョン /anycast
を指定した場合は複数リージョンに設置される / 次のいずれかを指定[tk1
/is1
/anycast
]/ この値を変更するとリソースの再作成が行われる / デフォルト:is1
timeout
- (Optional) 実サーバの通信タイムアウト秒数 / デフォルト:10
gzip
- (Optional) コンテンツ配信時のgzip圧縮の有効フラグproxy_protocol
- (Optional) Proxy Protocol v2の有効フラグsyslog
- (Optional) ログ出力先となるSyslogサーバ設定。詳細はsyslogブロックを参照
syslogブロック
server
- (Optional) サーバのIPアドレスport
- (Optional) ポート番号
証明書関連
certificate
- (Optional) 証明書設定。詳細はcertificateブロックを参照
certificateブロック
Note
server_cert
とprivate_key
、intermediate_cert
はエンハンスドロードバランサ ACME設定リソース(sakuracloud_proxylb_acme
)を利用すると上書きされます。
additional_certificate
- (Optional) 追加証明書のリスト。詳細はadditional_certificateブロックを参照intermediate_cert
- (Optional) 中間証明書private_key
- (Optional) 秘密鍵server_cert
- (Optional) サーバ証明書
additional_certificateブロック
server_cert
- (Required) サーバ証明書private_key
- (Required) 秘密鍵intermediate_cert
- (Optional) 中間証明書
バランシング動作
bind_port
- (Required) 待ち受けポート設定のリスト。詳細はbind_portブロックを参照backend_http_keep_alive
- (Optional) 実サーバとのHTTP持続接続[safe
(デフォルト)/aggressive
]health_check
- (Required) ヘルスチェック設定。詳細はhealth_checkブロックを参照rule
- (Optional) 振り分けルール設定のリスト。詳細はruleブロックを参照server
- (Optional) 実サーバ設定のリスト。詳細はserverブロックを参照sorry_server
- (Optional) ソーリーサーバ設定。詳細はsorry_serverブロックを参照sticky_session
- (Optional) Stickyセッションの有効フラグ
bind_portブロック
proxy_mode
- (Required) プロキシモード / 次のいずれかを指定[http
/https
/tcp
]port
- (Optional) 待ち受けポート番号redirect_to_https
- (Optional) httpからhttpsへのリダイレクト有効化フラグ /proxy_mode
がhttp
の場合のみ有効response_header
- (Optional) レスポンスに付与するHTTPヘッダのリスト。詳細はresponse_headerブロックを参照support_http2
- (Optional) HTTP/2を有効にするフラグ /proxy_mode
がhttps
の場合のみ有効ssl_policy
- (Optional) SSLポリシー / 次のいずれかを指定[TLS-1-2-2019-04
/TLS-1-2-2021-06
/TLS-1-3-2021-06
]
response_headerブロック
header
- (Required) ヘッダ名value
- (Required) 値
health_checkブロック
protocol
- (Required) プロトコル / 次のいずれかを指定[http
/tcp
]delay_loop
- (Optional) チェック間隔秒数 /10
-60
の範囲で指定host_header
- (Optional) HTTPチェック時のHostヘッダの値path
- (Optional) HTTPチェック時のリクエストパスport
- (Optional) TCPチェック時のポート番号
ruleブロック
action
- (Optional) マッチした場合のアクション / 次のいずれかを指定[forward
(デフォルト)/redirect
/fixed
]group
- (Optional) 振り分け先グループ名 /host
とpath
にマッチするリクエストを受信した場合に同じgroup
の値を持つ実サーバに振り分けられる /1
-10
文字で指定source_ips
- (Optional) 送信元IPアドレス or CIDRブロック、複数指定する場合は空白またはカンマ区切りで指定host
- (Optional) リクエストのHostヘッダpath
- (Optional) リクエストパスrequest_header_name
- (Optional) リクエストヘッダ名request_header_value
- (Optional) リクエストヘッダ値request_header_value_ignore_case
- (Optional) リクエストヘッダ値大/小文字request_header_value_not_match
- (Optional) リクエストヘッダ値条件
固定応答:
* fixed_content_type
- (Optional) 固定応答で返すContent-Type/次のいずれかを指定[text/plain
/text/html
/application/javascript
/application/json
]
* fixed_message_body
- (Optional) 固定応答で返すボディ
* fixed_status_code
- (Optional) 固定応答で返すステータスコード/次のいずれかを指定[200
/403
/503
]
リダイレクト:
* redirect_location
- (Optional) リダイレクト先/詳細は https://manual.sakura.ad.jp/cloud/appliance/enhanced-lb/#enhanced-lb-rule を参照
* redirect_status_code
- (Optional) リダイレクトで返すステータスコード/次のいずれかを指定[301
/302
]
serverブロック
ip_address
- (Required) IPアドレスport
- (Required) ポート番号 /1
-65535
の範囲で指定enabled
- (Optional) 有効フラグgroup
- (Optional) 振り分け先グループ名 / 振り分けの挙動についてはruleブロックを参照
sorry_serverブロック
ip_address
- (Required) IPアドレスport
- (Optional) ポート番号
Common Arguments
description
- (Optional) 説明 /1
-512
文字で指定icon_id
- (Optional) アイコンIDtags
- (Optional) タグ
Timeouts
timeouts
ブロックでカスタムタイムアウトが設定可能です。
create
- 作成 (デフォルト: 5分)update
- 更新 (デフォルト: 5分)delete
- 削除 (デフォルト: 5分)
Attribute Reference
id
- IDfqdn
- エンハンスドロードバランサにアクセスするためのFQDN / 通常CNAMEレコードの値として利用するproxy_networks
- エンハンスドロードバランサが実サーバにアクセスする際のアクセス元CIDRブロックのリストvip
- 現在の仮想IPアドレス
Import
IDを指定する事でインポート可能です。
$ terraform import sakuracloud_proxylb.example 123456789012