现实世界的Windows Azure:采访Transparencia Sp. z o.o的Grzegorz Skowron-Moszkowicz

nioovo是一个由GPC支持的全球web门户,旨在帮助用户轻松管理和更新联系人信息。该项目利用Windows Azure平台提供的灵活性、可扩展性和安全性,实现了高效低成本的全球服务。用户只需通过简单的步骤即可实现联系信息的自动同步。

MSDN: nioovo的想法从哪里来?

Skowron-Moszkowicz: 在2010年7月,波兰互联网公司GPC Sp.
z o.o.做了一项研究发现平均纸质版的通讯录包含137条记录,而电子版平均有161项,并且只有百分之4.7的记录包含完整的联系信息。研究得出的结论是不完整联系信息的主要原因是非常耗时的手动性质地输入和更新信息。

为了解决这些难题,GPC支持我们去创建和维护一个全球web门户,叫做nioovo,客户可以使用它来更新他们的联系信息并与家人、朋友和同事同步共享这些更新信息。GPC想让我们创建一个真正的全球服务,它应该在波兰、 德国、美国和在印度、中国、新西兰一样很有用。

MSDN: 为什么您选择在Windows Azure上构建?

Skowron-Moszkowicz: 起初,我们认为没有一个可用的解决方案能满足我们的可用性、容量、成本和安全的要求。但是仔细看看微软云计算服务后,我们发现Windows
Azure
完全适合我们的需求。我们选择了Windows Azure,因为它是唯一我们所信任的解决方案,它提供我们全球web门户的快速、可靠、高度安全的操作,即使是很小的公司也能负担得起它的成本。

MSDN: nioovo使用Windows Azure的主要好处是什么?

Skowron-Moszkowicz: 首先,用传统的解决方案不可能达到这种灵活性和可扩展性。对GPC(对nioovo web门户拥有雄心勃勃的计划的一个年轻公司)来说,无限的可扩展性是其成功的关键。微软数据中心的全球网络可以确保高可用性并且几乎能确保没有任何延误或效率的问题。

没有预付的基础设施成本也是一个很大的好处。我们仔细监测了使用情况来决定最佳支付模式并且一开始我们决定使用先收现付模型——低负荷意味着更低的成本。随着我们增加我们的负荷,每月定付款可能更具成本效益。由于我们需要改变,我们的定价选择也是如此。

最后,因为我们已经建立了使用Windows Azure的nioovo,我们可以为客户提供适当级别的安全性,这对公司的成功是非常重要的。我们不必担心安全性,这很好,因为我们已经有很多的责任。

MSDN: Windows Azure平台上开发的主要好处是什么?

Skowron-Moszkowicz: Windows Azure是拥有创建IT解决方案的一个完美的工具;开发人员可以使用脱机开发环境在他们的PC机上模拟Windows
Azure云并在部署之前测试应用程序。另外,Windows Azure提供无限的可扩展性、极高的效率和巨大的存储空间。

MSDN: nioovo现在可用了吗?

Skowron-Moszkowicz: 我们在开发六个月后推出nioovo。通过互联网和移动远程通信提供商Orange
Polska支持的120种不同的移动接口,目前已有八种语言版本可用并且联系数据兼容138种语言。现在客户点击通过web门户上的四个简单步骤(需要不到一分钟的时间),其完整的和更新的信息就自动地到达他们想要联系的人。

单击此处阅读完整的案例研究。

读取更多 Windows Azure 客户成功案例,请访问:www.windowsazure.com/evidence

本文翻译自:http://blogs.msdn.com/b/windowsazure/archive/2011/06/28/real-world-windows-azure-interview-with-grzegorz-skowron-moszkowicz-president-of-the-board-at-transparencia-sp-z-o-o.aspx

帮我看看这个报错 Started by user Devops CRD Running in Durability level: MAX_SURVIVABILITY [Pipeline] Start of Pipeline [Pipeline] echo Original Release Version: 58 [Pipeline] node Running on Jenkins in /root/.jenkins/workspace/summary-manager-edge-pipeline [Pipeline] { [Pipeline] withEnv [Pipeline] { [Pipeline] timestamps [Pipeline] { [Pipeline] stage [Pipeline] { (Sync Up Release) [Pipeline] echo 09:26:35 Sync up summary-manager release ... [Pipeline] script [Pipeline] { [Pipeline] echo 09:26:35 CLOUD:azure [Pipeline] echo 09:26:35 Major Deploy Version: 1.39.7 [Pipeline] sh 09:26:35 + helm3 registry login prdtplinkhelmchartzau1.azurecr.io -u bee8c203-08f1-4e0c-9799-a729a7fbfdd7 -p xWy8Q~Kdn~7ayTJL54lMJmyOdmiJVYc8zUksvaE2 09:26:35 WARNING: Kubernetes configuration file is group-readable. This is insecure. Location: /root/.kube/config 09:26:35 WARNING: Using --password via the CLI is insecure. Use --password-stdin. 09:26:38 Login Succeeded [Pipeline] sh 09:26:38 + helm3 show chart oci://prdtplinkhelmchartzau1.azurecr.io/summary-manager --version 1.39.7 09:26:38 WARNING: Kubernetes configuration file is group-readable. This is insecure. Location: /root/.kube/config [Pipeline] sh 09:26:42 + cat ./temp 09:26:42 + grep appVersion 09:26:42 + head -1 09:26:42 + cut -d : -f 2 [Pipeline] echo 09:26:42 RELEASE_VERSION: 1.39.7 [Pipeline] echo 09:26:42 Latest Release Version: 1.39.7 [Pipeline] } [Pipeline] // script [Pipeline] echo 09:26:42 Creating build directories ... [Pipeline] sh 09:26:42 + mkdir ./build-58 [Pipeline] } [Pipeline] // stage [Pipeline] stage [Pipeline] { (Authorization) Stage "Authorization" skipped due to when conditional [Pipeline] } [Pipeline] // stage [Pipeline] stage [Pipeline] { (Promote Stage) [Pipeline] input 09:26:42 Promote to azure.uat-v2.azure-brazil-1? 09:26:42 Proceed or Abort 09:27:01 Approved by Devops CRD [Pipeline] } [Pipeline] // stage [Pipeline] stage [Pipeline] { (Deploy Stage) [Pipeline] echo 09:27:01 Deploying summary-manager Release v1.39.7 to azure.uat-v2.azure-brazil-1 ... [Pipeline] dir 09:27:01 Running in /root/.jenkins/workspace/summary-manager-edge-pipeline/build-58 [Pipeline] { [Pipeline] script [Pipeline] { [Pipeline] sh 09:27:01 + git ls-remote ssh://cicdtplinknbu@pdgerrit.tp-link.com:29418/tplinknbu/devops_cicd feature/20251110-tapocare-ai 09:27:01 + cut -f1 [Pipeline] echo 09:27:01 commit id: 37c935a50d0d6e47396c3c228a08d8a98084a94e [Pipeline] sh 09:27:01 + rm -rf devops_cicd 09:27:01 + mkdir devops_cicd [Pipeline] sh 09:27:02 + git clone --depth 1 -b feature/20251110-tapocare-ai ssh://cicdtplinknbu@pdgerrit.tp-link.com:29418/tplinknbu/devops_cicd 09:27:02 Cloning into 'devops_cicd'... 09:27:04 Total 26483 (delta 8660), reused 21565 (delta 8660) 09:27:05 Updating files: 93% (17705/18954) Updating files: 94% (17817/18954) Updating files: 95% (18007/18954) Updating files: 96% (18196/18954) Updating files: 97% (18386/18954) Updating files: 98% (18575/18954) Updating files: 99% (18765/18954) Updating files: 100% (18954/18954) Updating files: 100% (18954/18954), done. [Pipeline] sh 09:27:06 + rm -rf k8s-values 09:27:06 + mkdir k8s-values [Pipeline] sh 09:27:06 + cp -rf ./devops_cicd/k8s-values/summary-manager ./k8s-values/ [Pipeline] sh 09:27:06 + rm -rf ./devops_cicd [Pipeline] echo 09:27:06 ENV_FOLDER_NAME:azure-pet [Pipeline] echo 09:27:06 deploy() begins... [Pipeline] sh 09:27:07 + yq read ./k8s-values/summary-manager/azure-pet/azure-brazil-1/values.yaml app.namespace [Pipeline] sh 09:27:07 + kubectl get deployment -n pet-app-ipc --context azure.uat-v2.azure-brazil-1 [Pipeline] sh 09:27:09 + cat ./temp 09:27:09 + grep -E summary-manager-[0-9]+(\.[0-9,a-z,A-Z]+)+(-[a-z,A-Z]+)* 09:27:09 + cut -d -f 1 [Pipeline] echo 09:27:09 PREVIOUS_DEPLOY: summary-manager-1.39.7 [Pipeline] sh 09:27:09 + kubectl get deployment summary-manager-1.39.7 -o yaml -n pet-app-ipc --context azure.uat-v2.azure-brazil-1 [Pipeline] sh 09:27:12 + cat ./temp 09:27:12 + yq read - spec.template.metadata.labels."app.kubernetes.io/version" [Pipeline] echo 09:27:12 azure-pet PREVIOUS_VER: 1.39.7 [Pipeline] echo 09:27:12 Deploying to azure-pet: azure-brazil-1 [Pipeline] sh 09:27:12 + kubectl get hpa summary-manager-1.39.7 -o yaml -n pet-app-ipc --context azure.uat-v2.azure-brazil-1 [Pipeline] sh 09:27:15 + cat ./temp 09:27:15 + yq read - spec.minReplicas [Pipeline] sh 09:27:16 + kubectl get hpa summary-manager-1.39.7 -o yaml -n pet-app-ipc --context azure.uat-v2.azure-brazil-1 [Pipeline] sh 09:27:18 + cat ./temp 09:27:18 + yq read - spec.maxReplicas [Pipeline] sh 09:27:18 + kubectl get deployment summary-manager-1.39.7 -o yaml -n pet-app-ipc --context azure.uat-v2.azure-brazil-1 [Pipeline] sh 09:27:20 + cat ./temp+ 09:27:20 yq read - spec.replicas [Pipeline] echo 09:27:20 ONLINE_MIN_REPLICAS: 1 [Pipeline] echo 09:27:20 ONLINE_MAX_REPLICAS: 1 [Pipeline] echo 09:27:20 CURRENT_REPLICAS: 0 [Pipeline] echo 09:27:20 ONLINE_MAX_REPLICAS: 1 [Pipeline] echo 09:27:20 CURRENT_REPLICAS: 0 [Pipeline] sh 09:27:20 + [ -d ./k8s-values/summary-manager/azure-pet ] 09:27:20 + echo true [Pipeline] sh 09:27:21 + [ -d ./k8s-values/summary-manager/global ] 09:27:21 + echo true [Pipeline] sh 09:27:21 + [ -d ./k8s-values/summary-manager/azure-pet/common ] 09:27:21 + echo true [Pipeline] sh 09:27:21 + [ -d ./k8s-values/summary-manager/azure-pet/azure-brazil-1/config ] 09:27:21 + echo true [Pipeline] sh 09:27:21 + kubectl create configmap summary-manager-azure-pet-azure-brazil-1-tmp-config --from-file=./k8s-values/summary-manager/global --from-file=./k8s-values/summary-manager/azure-pet/common --from-file=./k8s-values/summary-manager/azure-pet/azure-brazil-1/config --dry-run -o=yaml [Pipeline] sh 09:27:22 + yq read summary-manager-azure-pet-azure-brazil-1-tmp.yaml data [Pipeline] sh 09:27:22 + yq prefix -i summary-manager-azure-pet-azure-brazil-1-config-map-data.yaml configMap.data [Pipeline] sh 09:27:22 + [ -d ./k8s-values/summary-manager/azure-pet/azure-brazil-1 ] 09:27:22 + echo true [Pipeline] sh 09:27:22 + echo NEW_RELEASE_NAME summary-manager-1.39.7 09:27:22 NEW_RELEASE_NAME summary-manager-1.39.7 [Pipeline] sh 09:27:23 + helm list --namespace pet-app-ipc --kube-context azure.uat-v2.azure-brazil-1 [Pipeline] sh 09:27:26 + cat ./temp 09:27:26 + grep+ summary-manager 09:27:26 head -1 09:27:26 + cut -f 1 [Pipeline] sh 09:27:26 + echo networking init 09:27:26 networking init [Pipeline] sh 09:27:27 + kubectl apply -f ./k8s-values/summary-manager/azure-pet/azure-brazil-1/networking/service.yaml --context azure.uat-v2.azure-brazil-1 09:27:30 service/summary-manager-aps1 unchanged 09:27:30 service/summary-manager-use1 unchanged 09:27:30 service/summary-manager-euw1 unchanged 09:27:30 service/summary-manager-ain1 unchanged 09:27:30 service/summary-manager-zbr1 unchanged [Pipeline] sh 09:27:31 + kubectl apply -f ./k8s-values/summary-manager/azure-pet/azure-brazil-1/networking/istio.yaml --context azure.uat-v2.azure-brazil-1 09:27:33 gateway.networking.istio.io/summary-manager-zbr1-internal-gw unchanged 09:27:33 gateway.networking.istio.io/summary-manager-zbr1-gw unchanged 09:27:33 virtualservice.networking.istio.io/summary-manager-internal-vs unchanged 09:27:34 virtualservice.networking.istio.io/summary-manager-zbr1-vs unchanged [Pipeline] sh 09:27:34 + echo networking init successfully 09:27:34 networking init successfully [Pipeline] sh 09:27:34 + echo networking init successfully 09:27:34 networking init successfully [Pipeline] sh 09:27:34 + AWS_DEFAULT_REGION=ap-southeast-1 AWS_PROFILE=uat helm3 upgrade --install summary-manager-1.39.7 oci://prdtplinkhelmchartzau1.azurecr.io/summary-manager --version 1.39.7 --values ./k8s-values/summary-manager/azure-pet/azure-brazil-1/values.yaml --values summary-manager-azure-pet-azure-brazil-1-config-map-data.yaml --namespace pet-app-ipc --kube-context azure.uat-v2.azure-brazil-1 --timeout 1200s --wait 09:27:34 WARNING: Kubernetes configuration file is group-readable. This is insecure. Location: /root/.kube/config 09:39:56 Error: UPGRADE FAILED: Get "https://uat-k8s-nbu-zbr1-dns-3wzszvat.hcp.brazilsouth.azmk8s.io:443/apis/apps/v1/namespaces/pet-app-ipc/deployments/summary-manager-1.39.7": http2: client connection lost [Pipeline] } [Pipeline] // script [Pipeline] } [Pipeline] // dir [Pipeline] } [Pipeline] // stage [Pipeline] stage [Pipeline] { (Blue-Green Release) Stage "Blue-Green Release" skipped due to earlier failure(s) [Pipeline] stage [Pipeline] { (Promote To BLUE-GREEN-ALL) Stage "Blue-Green Release" skipped due to earlier failure(s) [Pipeline] } [Pipeline] // stage [Pipeline] stage [Pipeline] { (Deploy To BLUE-GREEN-ALL) Stage "Blue-Green Release" skipped due to earlier failure(s) [Pipeline] } [Pipeline] // stage [Pipeline] stage [Pipeline] { (SCALE-DOWN-BLUE) Stage "Blue-Green Release" skipped due to earlier failure(s) [Pipeline] } [Pipeline] // stage [Pipeline] stage [Pipeline] { (Promote To BLUE-GREEN-END) Stage "Blue-Green Release" skipped due to earlier failure(s) [Pipeline] } [Pipeline] // stage [Pipeline] stage [Pipeline] { (Deploy To BLUE-GREEN-END) Stage "Blue-Green Release" skipped due to earlier failure(s) [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // stage [Pipeline] stage [Pipeline] { (Test stage) Stage "Test stage" skipped due to earlier failure(s) [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // timestamps [Pipeline] } [Pipeline] // withEnv [Pipeline] } [Pipeline] // node [Pipeline] End of Pipeline ERROR: script returned exit code 1 Finished: FAILURE
最新发布
11-19
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值