2つのAWSインスタンスが高可用性で動作しています。 (私はkeepalivedを使用しています)
Elastic IPが関連付けられていますが、すべて問題ありませんでした。
このスクリプトを使用して、フェイルオーバーが発生した場合にインスタンスIPを変更しました。
#!/bin/bash
EIP=52.212.151.17
INSTANCE_ID=i-0bdd8a68eb573fd1a
/usr/bin/aws ec2 disassociate-address --public-ip $EIP
/usr/bin/aws ec2 associate-address --public-ip $EIP --instance-id $INSTANCE_ID
しかし、今私のサーバーはipv4とipv6を持っています。そして、私はipv6に対して同じことをすることはできません。 ipv4のみ。
Ipv6に同じことをするにはどうすればよいですか? Elastic ipv6がないので?
IPv6アドレッシングは、IPv4が通常管理されているものとは異なります。 IPv6は subnet によって管理されており、現在のIPv4のように個別のアドレスによって管理されることはありません。
したがって、Amazon AWSでは、最初にIPv6 CIDRブロックをVPCに割り当てる必要があります。次に、個々のIPv6アドレスをインスタンスに割り当てることができます。 IPv6入門 および IPアドレスの理解 については、Amazonのガイドを参照してください。
デフォルトでは、インスタンスはIPv6アドレスを自動的に取得します。これが不要な場合は、特定のIPv6アドレスを割り当てることができます。ただし、IPv4とは異なり、IPv6ではアドレスをインスタンスではなくインスタンスのネットワークインターフェイスに割り当てます。
使用する - aws ec2 assign-ipv6-addresses
インスタンスのネットワークインターフェースにIPv6アドレスを割り当てます。