Skip to content

Commit badb36e

Browse files
authored
Merge pull request #95877 from john-par/1646300-add-web-service-back-to-article
1646300, add web service back to article.
2 parents 68f5a19 + 914e41b commit badb36e

File tree

2 files changed

+21
-21
lines changed

2 files changed

+21
-21
lines changed

articles/machine-learning/service/how-to-secure-web-service.md

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -14,32 +14,32 @@ ms.date: 08/12/2019
1414
ms.custom: seodec18
1515
---
1616

17-
# Use SSL to secure a through Azure Machine Learning
17+
# Use SSL to secure a web service through Azure Machine Learning
1818
[!INCLUDE [applies-to-skus](../../../includes/aml-applies-to-basic-enterprise-sku.md)]
1919

20-
This article shows you how to secure a that's deployed through Azure Machine Learning.
20+
This article shows you how to secure a web service that's deployed through Azure Machine Learning.
2121

22-
You use [HTTPS](https://en.wikipedia.org/wiki/HTTPS) to restrict access to s and secure the data that clients submit. HTTPS helps secure communications between a client and a by encrypting communications between the two. Encryption uses [Transport Layer Security (TLS)](https://en.wikipedia.org/wiki/Transport_Layer_Security). TLS is sometimes still referred to as *Secure Sockets Layer* (SSL), which was the predecessor of TLS.
22+
You use [HTTPS](https://en.wikipedia.org/wiki/HTTPS) to restrict access to web services and secure the data that clients submit. HTTPS helps secure communications between a client and a web service by encrypting communications between the two. Encryption uses [Transport Layer Security (TLS)](https://en.wikipedia.org/wiki/Transport_Layer_Security). TLS is sometimes still referred to as *Secure Sockets Layer* (SSL), which was the predecessor of TLS.
2323

2424
> [!TIP]
25-
> The Azure Machine Learning SDK uses the term "SSL" for properties that are related to secure communications. This doesn't mean that your doesn't use *TLS*. SSL is just a more commonly recognized term.
25+
> The Azure Machine Learning SDK uses the term "SSL" for properties that are related to secure communications. This doesn't mean that your web service doesn't use *TLS*. SSL is just a more commonly recognized term.
2626
2727
TLS and SSL both rely on *digital certificates*, which help with encryption and identity verification. For more information on how digital certificates work, see the Wikipedia topic [Public key infrastructure](https://en.wikipedia.org/wiki/Public_key_infrastructure).
2828

2929
> [!WARNING]
30-
> If you don't use HTTPS for your , data that's sent to and from the service might be visible to others on the internet.
30+
> If you don't use HTTPS for your web service, data that's sent to and from the service might be visible to others on the internet.
3131
>
3232
> HTTPS also enables the client to verify the authenticity of the server that it's connecting to. This feature protects clients against [man-in-the-middle](https://en.wikipedia.org/wiki/Man-in-the-middle_attack) attacks.
3333
34-
This is the general process to secure a :
34+
This is the general process to secure a web service:
3535

3636
1. Get a domain name.
3737

3838
2. Get a digital certificate.
3939

40-
3. Deploy or update the with SSL enabled.
40+
3. Deploy or update the web service with SSL enabled.
4141

42-
4. Update your DNS to point to the .
42+
4. Update your DNS to point to the web service.
4343

4444
> [!IMPORTANT]
4545
> If you're deploying to Azure Kubernetes Service (AKS), you can purchase your own certificate or use a certificate that's provided by Microsoft. If you use a certificate from Microsoft, you don't need to get a domain name or SSL certificate. For more information, see the [Enable SSL and deploy](#enable) section of this article.
@@ -48,7 +48,7 @@ There are slight differences when you secure s across [deployment targets](how-t
4848

4949
## Get a domain name
5050

51-
If you don't already own a domain name, purchase one from a *domain name registrar*. The process and price differ among registrars. The registrar provides tools to manage the domain name. You use these tools to map a fully qualified domain name (FQDN) (such as www\.contoso.com) to the IP address that hosts your .
51+
If you don't already own a domain name, purchase one from a *domain name registrar*. The process and price differ among registrars. The registrar provides tools to manage the domain name. You use these tools to map a fully qualified domain name (FQDN) (such as www\.contoso.com) to the IP address that hosts your web service.
5252

5353
## Get an SSL certificate
5454

@@ -57,7 +57,7 @@ There are many ways to get an SSL certificate (digital certificate). The most co
5757
* A **certificate**. The certificate must contain the full certificate chain, and it must be "PEM-encoded."
5858
* A **key**. The key must also be PEM-encoded.
5959

60-
When you request a certificate, you must provide the FQDN of the address that you plan to use for the (for example, www\.contoso.com). The address that's stamped into the certificate and the address that the clients use are compared to verify the identity of the . If those addresses don't match, the client gets an error message.
60+
When you request a certificate, you must provide the FQDN of the address that you plan to use for the web service (for example, www\.contoso.com). The address that's stamped into the certificate and the address that the clients use are compared to verify the identity of the web service. If those addresses don't match, the client gets an error message.
6161

6262
> [!TIP]
6363
> If the certificate authority can't provide the certificate and key as PEM-encoded files, you can use a utility such as [OpenSSL](https://www.openssl.org/) to change the format.
@@ -72,7 +72,7 @@ To deploy (or redeploy) the service with SSL enabled, set the *ssl_enabled* para
7272
### Deploy on AKS and field-programmable gate array (FPGA)
7373

7474
> [!NOTE]
75-
> The information in this section also applies when you deploy a secure for the designer. If you aren't familiar with using the Python SDK, see [What is the Azure Machine Learning SDK for Python?](https://docs.microsoft.com/python/api/overview/azure/ml/intro?view=azure-ml-py).
75+
> The information in this section also applies when you deploy a secure web service for the designer. If you aren't familiar with using the Python SDK, see [What is the Azure Machine Learning SDK for Python?](https://docs.microsoft.com/python/api/overview/azure/ml/intro?view=azure-ml-py).
7676
7777
When you deploy to AKS, you can create a new AKS cluster or attach an existing one. For more information on creating or attaching a cluster, see [Deploy a model to an Azure Kubernetes Service cluster](how-to-deploy-azure-kubernetes-service.md).
7878

@@ -141,7 +141,7 @@ For more information, see [AciWebservice.deploy_configuration()](https://docs.mi
141141

142142
## Update your DNS
143143

144-
Next, you must update your DNS to point to the .
144+
Next, you must update your DNS to point to the web service.
145145

146146
+ **For Container Instances:**
147147

@@ -156,7 +156,7 @@ Next, you must update your DNS to point to the .
156156

157157
Update the DNS of the Public IP Address of the AKS cluster on the **Configuration** tab under **Settings** in the left pane. (See the following image.) The Public IP Address is a resource type that's created under the resource group that contains the AKS agent nodes and other networking resources.
158158

159-
[![Azure Machine Learning: Securing s with SSL](./media/how-to-secure-web-service/aks-public-ip-address.png)](./media/how-to-secure-web-service/aks-public-ip-address-expanded.png)
159+
[![Azure Machine Learning: Securing web services with SSL](./media/how-to-secure-web-service/aks-public-ip-address.png)](./media/how-to-secure-web-service/aks-public-ip-address-expanded.png)
160160

161161
## Update the SSL certificate
162162

@@ -253,5 +253,5 @@ aks_target.update(update_config)
253253

254254
## Next steps
255255
Learn how to:
256-
+ [Consume a machine learning model deployed as a ](how-to-consume-web-service.md)
256+
+ [Consume a machine learning model deployed as a web service](how-to-consume-web-service.md)
257257
+ [Securely run experiments and inference inside an Azure virtual network](how-to-enable-virtual-network.md)

articles/machine-learning/service/how-to-troubleshoot-deployment.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -159,12 +159,12 @@ To avoid this problem, we recommend one of the following approaches:
159159

160160
## Debug locally
161161

162-
If you encounter problems deploying a model to ACI or AKS, try deploying it as a local . Using a local makes it easier to troubleshoot problems. The Docker image containing the model is downloaded and started on your local system.
162+
If you encounter problems deploying a model to ACI or AKS, try deploying it as a local web service. Using a local web service makes it easier to troubleshoot problems. The Docker image containing the model is downloaded and started on your local system.
163163

164164
> [!WARNING]
165-
> Local deployments are not supported for production scenarios.
165+
> Local web service deployments are not supported for production scenarios.
166166
167-
To deploy locally, modify your code to use `LocalWebservice.deploy_configuration()` to create a deployment configuration. Then use `Model.deploy()` to deploy the service. The following example deploys a model (contained in the `model` variable) as a local :
167+
To deploy locally, modify your code to use `LocalWebservice.deploy_configuration()` to create a deployment configuration. Then use `Model.deploy()` to deploy the service. The following example deploys a model (contained in the `model` variable) as a local web service:
168168

169169
```python
170170
from azureml.core.model import InferenceConfig, Model
@@ -175,14 +175,14 @@ inference_config = InferenceConfig(runtime="python",
175175
entry_script="score.py",
176176
conda_file="myenv.yml")
177177

178-
# Create a local deployment, using port 8890 for the endpoint
178+
# Create a local deployment, using port 8890 for the web service endpoint
179179
deployment_config = LocalWebservice.deploy_configuration(port=8890)
180180
# Deploy the service
181181
service = Model.deploy(
182182
ws, "mymodel", [model], inference_config, deployment_config)
183183
# Wait for the deployment to complete
184184
service.wait_for_deployment(True)
185-
# Display the port that the is available on
185+
# Display the port that the web service is available on
186186
print(service.port)
187187
```
188188

@@ -292,7 +292,7 @@ There are two things that can help prevent 503 status codes:
292292
> [!IMPORTANT]
293293
> This change does not cause replicas to be created *faster*. Instead, they are created at a lower utilization threshold. Instead of waiting until the service is 70% utilized, changing the value to 30% causes replicas to be created when 30% utilization occurs.
294294
295-
If the is already using the current max replicas and you are still seeing 503 status codes, increase the `autoscale_max_replicas` value to increase the maximum number of replicas.
295+
If the web service is already using the current max replicas and you are still seeing 503 status codes, increase the `autoscale_max_replicas` value to increase the maximum number of replicas.
296296

297297
* Change the minimum number of replicas. Increasing the minimum replicas provides a larger pool to handle the incoming spikes.
298298

@@ -328,7 +328,7 @@ In some cases, you may need to interactively debug the Python code contained in
328328
> [!IMPORTANT]
329329
> This method of debugging does not work when using `Model.deploy()` and `LocalWebservice.deploy_configuration` to deploy a model locally. Instead, you must create an image using the [ContainerImage](https://docs.microsoft.com/python/api/azureml-core/azureml.core.image.containerimage?view=azure-ml-py) class.
330330

331-
Local deployments require a working Docker installation on your local system. For more information on using Docker, see the [Docker Documentation](https://docs.docker.com/).
331+
Local web service deployments require a working Docker installation on your local system. For more information on using Docker, see the [Docker Documentation](https://docs.docker.com/).
332332

333333
### Configure development environment
334334

0 commit comments

Comments
 (0)