Embodiments of the present invention provide a means for managing portable Internet Protocol (IP) addresses and virtual machine persistent storage. The invention includes defining a set of available portable IP addresses. When a request for a portable IP address is received from a first virtual machine (VM), a first portable IP address is assigned to the first VM. The assignment of the first portable IP address to the first VM extends for a predetermined amount of time and requires a lease renewal to extend the assignment.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A method for managing portable Internet Protocol (IP) addresses and virtual machine persistent storage in a cloud computing environment, the method comprising: receiving, by one or more computer processors, a request for a first portable IP address from a first VM, wherein concurrent requests do not result in allocation of the first portable IP address to more than the first VM; determining, by one or more computer processors, an available IP address within an IP address range, wherein the IP address range is defined for a cluster containing the first VM; creating, by one or more computer processors, a lock on an entry of the determined available IP address within the IP address range; assigning, by one or more computer processors, the determined available IP address to the first VM, wherein assigning the determined available IP address to the first VM comprises a configured pairing of the available portable IP address and a first persistent data volume to the first VM; renewing, by one or more computer processors, a lease on the determined available IP address to the first VM, wherein renewing the lease maintains the lock on the entry of the assigned configured pairing of the available IP address to the first VM; in response to determining that the lease renewal has been received from the first VM, maintaining, by one or more computer processors, the assignment of the configured pairing to the first VM; persisting, by one or more computer processors, the configured pairing upon revoking assignment of the configured pairing to the first VM; and managing, by one or more computer processors, allocation of one or more portable IP addresses to one or more VMs to maintain basic invariants that are depended upon by static clustering systems, and wherein leases are used to ensure that the one or more VMs are not concurrently using a same portable IP address.
2. The method of claim 1 , further comprising: destroying, by one or more computer processors, the first VM if the first VM is suspected of no longer functioning.
3. The method of claim 1 , wherein a lease is a predetermined period of time in which the first portable IP address is assigned to the first VM.
4. The method of claim 1 , further comprising: determining, by one or more computer processors, that the first VM has failed, wherein the first VM has been assigned the configured pairing; assigning, by one or more computer processors, the configured pairing to a second VM; and destroying, by one or more computer processors, the first VM.
5. The method of claim 1 , further comprising: defining, by one or more computer processors, a set of available portable IP addresses, of which the first portable IP address is a member.
6. The method of claim 1 , further comprising: locking, by one or more computer processors, the assignment of the configured pairing to the first VM, wherein locking the assignment prevents the configured pairing from being assigned to another VM; determining, by one or more computer processors, whether a lease renewal has been received from the first VM; responsive to determining that the lease renewal has not been received from the first VM, unlocking the assignment of the configured pairing to the first VM; and responsive to determining that the lease renewal has not been received from the first VM, revoking, by one or more computer processors, the assignment of the configured pairing to the first VM.
7. A computer program product for managing portable Internet Protocol (IP) addresses and virtual machine persistent storage in a cloud computing environment, the computer program product comprising: one or more non-transitory computer-readable tangible storage devices and program instructions stored on at least one of the one or more tangible storage devices, the program instructions comprising: program instructions to receive a request for a first portable IP address from a first VM, wherein concurrent requests do not result in allocation of the first portable IP address to more than the first VM; program instructions to determine an available IP address within an IP address range, wherein the IP address range is defined for a cluster containing the first VM; program instructions to create a lock on an entry of the determined available IP address within the IP address range; program instructions to assign the determined available IP address to the first VM, wherein assigning the determined available IP address to the first VM comprises a configured pairing of the available portable IP address and a first persistent data volume to the first VM; program instructions to renew a lease on the determined available IP address to the first VM, wherein renewing the lease maintains the lock on the entry of the assigned configured pairing of the available IP address to the first VM; program instructions to, in response to determining that the lease renewal has been received from the first VM, maintain the assignment of the configured pairing to the first VM; program instructions to persist the configured pairing upon revoking assignment of the configured pairing to the first VM; and program instructions to manage allocation of one or more portable IP addresses to one or more VMs to maintain basic invariants that are depended upon by static clustering systems, and wherein leases are used to ensure that the one or more VMs are not concurrently using a same portable IP address.
8. The computer program product of claim 7 , further comprising: program instructions to destroy the first VM if the first VM is suspected of no longer functioning.
9. The computer program product of claim 7 , wherein a lease is a predetermined period of time in which the first portable IP address is assigned to the first VM.
10. The computer program product of claim 7 , further comprising: program instructions to determine that the first VM has failed, wherein the first VM has been assigned the configured pairing; program instructions to assign the configured pairing to a second VM; and program instructions to destroy the first VM.
11. The computer program product of claim 7 , further comprising: program instructions to define a set of available portable IP addresses, of which the first portable IP address is a member.
12. The computer program product of claim 7 , further comprising: program instructions to lock the assignment of the configured pairing to the first VM; program instructions to determine whether a lease renewal has been received from the first VM; program instructions to unlock the assignment of the configured pairing to the first VM, in response to determining that the lease renewal has not been received from the first VM; and program instructions to revoke the assignment of the configured pairing to the first VM, in response to determining that the lease renewal has not been received from the first VM.
13. A computer system for managing portable Internet Protocol (IP) addresses and virtual machine persistent storage in a cloud computing environment, the computer system comprising: one or more processors, one or more computer-readable memories, one or more computer-readable tangible storage devices, and program instructions stored on at least one of the one or more tangible storage devices for execution by at least one of the one or more processors via at least one of the one or more memories, the program instructions comprising: program instructions to receive a request for a first portable IP address from a first VM, wherein concurrent requests do not result in allocation of the first portable IP address to more than the first VM; program instructions to determine an available IP address within an IP address range, wherein the IP address range is defined for a cluster containing the first VM; program instructions to create a lock on an entry of the determined available IP address within the IP address range; program instructions to assign the determined available IP address to the first VM, wherein assigning the determined available IP address to the first VM comprises a configured pairing of the available portable IP address and a first persistent data volume to the first VM; program instructions to renew a lease on the determined available IP address to the first VM, wherein renewing the lease maintains the lock on the entry of the assigned configured pairing of the available IP address to the first VM; program instructions to, in response to determining that the lease renewal has been received from the first VM, maintain the assignment of the configured pairing to the first VM; program instructions to persist the configured pairing upon revoking assignment of the configured pairing to the first VM; and program instructions to manage allocation of one or more portable IP addresses to one or more VMs to maintain basic invariants that are depended upon by static clustering systems, and wherein leases are used to ensure that the one or more VMs are not concurrently using a same portable IP address.
14. The computer system of claim 13 , further comprising: program instructions to destroy the first VM if the first VM is suspected of no longer functioning.
15. The computer system of claim 13 , wherein a lease is a predetermined period of time in which the first portable IP address is assigned to the first VM.
16. The computer system of claim 13 , further comprising: program instructions to determine that the first VM has failed, wherein the first VM has been assigned the configured pairing; program instructions to assign the configured pairing to a second VM; and program instructions to destroy the first VM.
17. The computer system of claim 13 , further comprising: program instructions to lock the assignment of the configured pairing to the first VM; program instructions to determine whether a lease renewal has been received from the first VM; program instructions to unlock the assignment of the configured pairing to the first VM, in response to determining that the lease renewal has not been received from the first VM; and program instructions to revoke the assignment of the configured pairing to the first VM, in response to determining that the lease renewal has not been received from the first VM.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
November 9, 2015
July 23, 2019
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.