Kapsayıcı grubu için statik IP adresini kullanıma sunma
Bu makalede, Azure uygulama ağ geçidi kullanarak bir kapsayıcı grubu için statik, genel IP adresini kullanıma sunmanın bir yolu gösterilmektedir. Azure Container Instances'ta çalışan bir dış kapsayıcılı uygulama için statik giriş noktasına ihtiyacınız olduğunda bu adımları izleyin.
Bu makalede, bu senaryoya yönelik kaynakları oluşturmak için Azure CLI'yi kullanacaksınız:
- Azure sanal ağı
- Küçük bir web uygulamasını barındıran sanal ağda dağıtılan kapsayıcı grubu
- Genel ön uç IP adresine sahip bir uygulama ağ geçidi, ağ geçidinde bir web sitesi barındıran bir dinleyici ve arka uç kapsayıcı grubuna giden bir yol
Uygulama ağ geçidi çalıştırıldığı ve kapsayıcı grubu ağın temsilci alt ağında kararlı bir özel IP adresi ortaya çıkardıkça, kapsayıcı grubuna bu genel IP adresinden erişilebilir.
Not
Azure Uygulaması lication Gateway HTTP, HTTPS, HTTP/2 ve WebSocket protokollerini destekler.
Bir uygulama ağ geçidi için Azure, ağ geçidinin sağlandığı ve kullanılabilir olduğu süreye ve işlediği veri miktarına göre ücretlendirilir. Fiyatlandırmaya bakın.
Sanal ağ oluşturma
Tipik bir durumda, zaten bir Azure sanal ağınız olabilir. Yoksa, aşağıdaki örnek komutlarla gösterildiği gibi bir tane oluşturun. Sanal ağ, uygulama ağ geçidi ve kapsayıcı grubu için ayrı alt ağlara ihtiyaç duyar.
Bir azure kaynak grubuna ihtiyacınız varsa bir Azure kaynak grubu oluşturun. Örneğin:
az group create --name myResourceGroup --location eastus
az network vnet create komutuyla bir sanal ağ oluşturun . Bu komut ağda myAGSubnet alt ağını oluşturur.
az network vnet create \
--name myVNet \
--resource-group myResourceGroup \
--location eastus \
--address-prefix 10.0.0.0/16 \
--subnet-name myAGSubnet \
--subnet-prefix 10.0.1.0/24
Arka uç kapsayıcı grubu için bir alt ağ oluşturmak için az network vnet subnet create komutunu kullanın. Burada adı myACISubnet'tir.
az network vnet subnet create \
--name myACISubnet \
--resource-group myResourceGroup \
--vnet-name myVNet \
--address-prefix 10.0.2.0/24
Statik bir genel IP kaynağı oluşturmak için az network public-ip create komutunu kullanın. Sonraki bir adımda, bu adres uygulama ağ geçidinin ön ucu olarak yapılandırılır.
az network public-ip create \
--resource-group myResourceGroup \
--name myAGPublicIPAddress \
--allocation-method Static \
--sku Standard
Kapsayıcı grubu oluştur
Önceki adımda yapılandırdığınız sanal ağda bir kapsayıcı grubu oluşturmak için aşağıdaki az container create komutunu çalıştırın.
Grup myACISubnet alt aya dağıtılır ve görüntüyü çeken aci-helloworld
appcontainer adlı tek bir örnek içerir. Belgelerdeki diğer makalelerde gösterildiği gibi, bu görüntü statik bir HTML sayfası sunan Node.js yazılmış küçük bir web uygulamasını paketler.
az container create \
--name appcontainer \
--resource-group myResourceGroup \
--image mcr.microsoft.com/azuredocs/aci-helloworld \
--vnet myVNet \
--subnet myACISubnet
Başarıyla dağıtıldığında kapsayıcı grubuna sanal ağda özel bir IP adresi atanır. Örneğin, grubun IP adresini almak için aşağıdaki az container show komutunu çalıştırın:
az container show \
--name appcontainer --resource-group myResourceGroup \
--query ipAddress.ip --output tsv
Çıktı şuna benzer olacaktır: 10.0.2.4
.
Sonraki bir adımda kullanmak için IP adresini bir ortam değişkenine kaydedin:
ACI_IP=$(az container show \
--name appcontainer \
--resource-group myResourceGroup \
--query ipAddress.ip --output tsv)
Önemli
Kapsayıcı grubu durdurulur, başlatılır veya yeniden başlatılırsa, kapsayıcı grubunun özel IP'si değiştirilebilir. Böyle bir durumda, uygulama ağ geçidi yapılandırmasını güncelleştirmeniz gerekir.
Uygulama ağ geçidi oluşturma
Uygulama ağ geçidi hızlı başlangıcındaki adımları izleyerek sanal ağda bir uygulama ağ geçidi oluşturun. Aşağıdaki az network application-gateway create komutu, genel ön uç IP adresine ve arka uç kapsayıcı grubuna giden bir yola sahip bir ağ geçidi oluşturur. Ağ geçidi ayarları hakkında ayrıntılı bilgi için Application Gateway belgelerine bakın.
az network application-gateway create \
--name myAppGateway \
--location eastus \
--resource-group myResourceGroup \
--capacity 2 \
--sku Standard_v2 \
--http-settings-protocol http \
--public-ip-address myAGPublicIPAddress \
--vnet-name myVNet \
--subnet myAGSubnet \
--servers "$ACI_IP" \
--priority 100
Azure'ın uygulama ağ geçidini oluşturması 15 dakika kadar sürebilir.
Genel IP adresini test et
Artık uygulama ağ geçidinin arkasındaki kapsayıcı grubunda çalışan web uygulamasına erişimi test edebilirsiniz.
Ağ geçidinin ön uç genel IP adresini almak için az network public-ip show komutunu çalıştırın:
az network public-ip show \
--resource-group myresourcegroup \
--name myAGPublicIPAddress \
--query [ipAddress] \
--output tsv
Çıktı, şuna benzer bir genel IP adresidir: 52.142.18.133
.
Başarıyla yapılandırıldığında çalışan web uygulamasını görüntülemek için tarayıcınızda ağ geçidinin genel IP adresine gidin. Başarılı erişim şuna benzer:
Sonraki adımlar
- WordPress kapsayıcı örneğini bir uygulama ağ geçidinin arkasında arka uç sunucusu olarak içeren bir kapsayıcı grubu oluşturmak için hızlı başlangıç şablonuna bakın.
- Ayrıca SSL sonlandırma için sertifikayla bir uygulama ağ geçidi yapılandırabilirsiniz. Genel bakış ve öğreticiye bakın.
- Senaryonuza bağlı olarak, Azure Container Instances ile diğer Azure yük dengeleme çözümlerini kullanmayı göz önünde bulundurun. Örneğin, Azure Traffic Manager'ı kullanarak trafiği birden çok kapsayıcı örneğine ve birden çok bölgeye dağıtın. Bu blog gönderisine bakın.