Bu makalede, Google Cloud'da bir web sitesinin nasıl barındırılacağı anlatılmaktadır. Google Cloud, web sitelerine hizmet vermek için sağlam, esnek, güvenilir ve ölçeklenebilir bir platform sağlar. Google, Google.com, YouTube ve Gmail gibi sitelerden içerik sunmak için kullandığı altyapının aynısını kullanarak Google Cloud'u oluşturdu. İhtiyaçlarınıza en uygun altyapı türü ve tasarımını kullanarak web sitenizin içeriğini sunabilirsiniz. Aşağıdaki durumlarda bu makaleyi yararlı bulabilirsiniz: - Bir web sitesinin nasıl oluşturulacağı konusunda bilgili ve daha önce bazı web servis altyapısını kurmuş ve çalıştırmış - Sitenizi Google Cloud'a taşıyıp taşımayacağınızı ve nasıl taşıyacağınızı değerlendirme Basit bir web sitesi oluşturmak istiyorsanız, yapılandırılmış bir wiki ve web sayfası oluşturma aracı olan Google Sites'ı kullanmayı düşünün. Daha fazla bilgi için Siteler yardımını ziyaret edin ## Bir seçenek belirleme Google Cloud'u kullanmaya yeni başladıysanız zaten aşina olduğunuz türden bir teknolojiyi kullanarak başlamanız makul bir yaklaşımdır. Örneğin, şu anda sitenizi başka bir bulut sağlayıcıyla veya kendi donanımınız üzerinde barındırmak için donanım sunucuları veya sanal makineler (VM'ler) kullanıyorsanız, Compute Engine sizin için tanıdık bir paradigma sağlar. Halihazırda Heroku veya Engine Yard gibi bir hizmet olarak platform (PaaS) teklifi kullanıyorsanız App Engine başlamak için en iyi yer olabilir. Sunucusuz bilgi işlemi tercih ediyorsanız, Cloud Run muhtemelen sizin için iyi bir seçenektir. Google Cloud'u daha yakından tanıdıktan sonra, Google Cloud'un sunduğu ürün ve hizmetlerin zenginliğini keşfedebilirsiniz. Örneğin, Compute Engine'i kullanarak başladıysanız Google Kubernetes Engine'i (GKE) kullanarak sitenizin yeteneklerini artırabilir veya işlevlerin bir kısmını veya tamamını App Engine ve Cloud Run'a taşıyabilirsiniz. Aşağıdaki tablo, Google Cloud'daki barındırma seçeneklerinizi özetlemektedir: |Seçenek||Ürün||Veri depolama||Yük dengeleme||Ölçeklenebilirlik||Kayıt tutma ve izleme| |Statik web sitesi|| | Bulut depolama Firebase Barındırma |Bulut Depolama paketi|| | HTTP(S) isteğe bağlı |Otomatik| |Sanal makineler||Compute Engine|| | Cloud SQL Admin API, Cloud Storage API, Datastore API ve Cloud Bigtable API veya başka bir harici depolama sağlayıcısı kullanabilirsiniz Sabit disk tabanlı kalıcı diskler, | | HTTP(ler) TCP Proxy'si SSL Proxy'si IPv6 sonlandırma Ağ bölgeler arası Dahili |Yönetilen örnek gruplarıyla otomatik olarak| |Kapsayıcılar||GKE||Compute Engine'e benzer ancak kalıcı disklerle farklı şekilde etkileşime girer||Ağ | HTTP(ler) |Küme otomatik ölçekleyici| |Yönetilen platform|| | Uygulama Motoru |Cloud SQL, Firestore, Cloud Storage gibi Google Cloud hizmetleri ve erişilebilir üçüncü taraf veritabanları|| | HTTP(ler) Google tarafından yönetilmektedir |Google tarafından yönetilir| |Sunucusuz|| | Bulut Koşusu |Cloud SQL, Firestore, Cloud Storage gibi Google Cloud hizmetleri ve erişilebilir üçüncü taraf veritabanları|| | HTTP(ler) Google tarafından yönetilmektedir |Google tarafından yönetilir| Bu makale, Google Cloud'da web sunumu için kullanabileceğiniz ana teknolojileri anlamanıza yardımcı olabilir ve size teknolojilerin nasıl çalıştığına dair bir fikir verebilir. Makale, hazır olduğunuzda daha derin bir anlayış geliştirmenize yardımcı olabilecek eksiksiz belgelere, öğreticilere ve çözüm makalelerine bağlantılar sağlar. ## Maliyetleri anlama Çok fazla değişken olduğundan ve her uygulama farklı olduğundan, maliyetler hakkında özel tavsiyeler vermek bu makalenin kapsamı dışındadır. Google'ın fiyatlandırmanın Google Cloud'da nasıl çalıştığıyla ilgili ilkelerini anlamak için fiyatlandırma sayfasına bakın. Bireysel hizmetlerin fiyatlandırmasını anlamak için ürün fiyatlandırma bölümüne bakın. Google Cloud kullanımınızın nasıl görünebileceğini tahmin etmek için fiyatlandırma hesaplayıcıyı da kullanabilirsiniz. Kullanmak istediğiniz hizmetlerle ilgili ayrıntıları sağlayabilir ve ardından bir fiyat tahmini görebilirsiniz. ## Alan adı hizmetlerini ayarlama Genellikle, siteniz için bir alan adı kaydetmek isteyeceksiniz. Siteniz için benzersiz bir ad kaydetmek üzere Google Domains gibi bir genel alan adı kayıt şirketi kullanabilirsiniz. Kendi alan adı sisteminizin (DNS) tam kontrolünü istiyorsanız, DNS sağlayıcınız olarak hizmet vermesi için Cloud DNS'i kullanabilirsiniz. Bulut DNS belgeleri, başlamanıza yardımcı olacak bir hızlı başlangıç ​​içerir Kullanmak istediğiniz mevcut bir DNS sağlayıcınız varsa, genellikle bu sağlayıcıyla birkaç kayıt oluşturun. gibi bir alan adı için example.com, bir DNS sağlayıcınızla bir kayıt. İçin www.example.com alt etki alanı oluşturursunuz için CNAME kaydı www işaret etmek ona example.com etki alanı. bu Bir kayıt, bir ana bilgisayar adını bir IP adresine eşler bu CNAME kaydı, için bir takma ad oluşturur. Rekor Alan adı kayıt kuruluşunuz aynı zamanda DNS sağlayıcınızsa muhtemelen tek yapmanız gereken budur. Kayıt ve DNS için ayrı sağlayıcılar kullanıyorsanız, alan adı kayıt kuruluşunuzun alanınızla ilişkilendirilmiş doğru ad sunucularına sahip olduğundan emin olun. DNS değişikliklerinizi yaptıktan sonra, bölgenizdeki yaşam süresi (TTL) değerlerinize bağlı olarak kayıt güncellemelerinin yayılması biraz zaman alabilir. Bu yeni bir ana bilgisayar adıysa, DNS çözümleyicileri önceki değerleri önbelleğe almadığından ve istekleri yönlendirmek için gerekli bilgileri almak üzere DNS sağlayıcısıyla iletişim kurabileceğinden, değişiklikler hızlı bir şekilde yürürlüğe girer. ## Statik bir web sitesi barındırma Web sitesi içeriğini HTTP(S) üzerinden sunmanın en basit yolu, *statik web sayfaları*. Statik web sayfaları sunulur genellikle HTML kullanılarak yazıldıkları şekliyle değişmeden. Statik bir web sitesi kullanma sitenizin sayfaları değiştirildikten sonra nadiren değişiyorsa iyi bir seçenektir. küçük bir işletmenin parçası olan blog gönderileri veya sayfalar gibi yayınlanmış İnternet sitesi. Statik web sayfalarıyla çok şey yapabilirsiniz, ancak sitenizin sunucu tarafı kodu aracılığıyla kullanıcılarla güçlü etkileşimlere sahipseniz, şunları yapmalısınız: bu makalede tartışılan diğer seçenekleri göz önünde bulundurun Cloud Storage ile statik bir web sitesi barındırma Cloud Storage'da statik bir site barındırmak için bir Bulut Depolama paketi, içeriği yükleyin ve yeni sitenizi test edin. Yapabilirsiniz Verilerinizi doğrudan depolama.googleapis.com, ya da yapabilirsin etki alanınızın size ait olduğunu doğrulayın ve kullan alan adınız Statik web sayfalarınızı istediğiniz gibi oluşturabilirsiniz. Örneğin, yapabilirsin HTML ve CSS kullanarak elle yazar sayfaları. kullanabilirsiniz *statik site oluşturucu*, örneğin Jekyll, Hayalet, veya Hugo, içeriği oluşturmak için Statik site oluşturucularla, statik bir web sitesi oluşturursunuz: yazarlık işaretleme, ve şablonlar ve araçlar sağlamak. Genel olarak site oluşturucuları içeriğinizi önizlemek için kullanabileceğiniz yerel bir web sunucusu sağlayın Statik siteniz çalışmaya başladıktan sonra, herhangi birini kullanarak statik sayfaları güncelleyebilirsiniz. beğendiğin işlem Bu işlem, bir belgeyi elle kopyalamak kadar basit olabilir. sayfa güncellendi. Daha otomatik bir yaklaşım kullanmayı tercih edebilirsiniz, içeriğinizi GitHub'da depolamak ve ardından bir web kancası çalıştırmak için kovayı güncelleyen komut dosyası. Daha da gelişmiş bir sistem bir gibi sürekli tümleştirme/sürekli teslim (CI/CD) aracı Jenkins, içindeki içeriği güncellemek için Kova. Jenkins'in bir Bulut Depolama Alanı var Eklenti sağlayan bir Derlemeyi yayınlamak için Google Cloud Storage Uploader derleme sonrası adımı Cloud Storage'a yapıtlar Statik içerik veya kullanıcı tarafından yüklenen statik ortam sunması gereken bir web uygulamanız varsa, Bulut Depolama kullanmak, web uygulamanıza yönelik dinamik isteklerin miktarını azaltırken bu içeriği barındırmak ve sunmak için uygun maliyetli ve verimli bir yol olabilir. Ek olarak, Cloud Storage, kullanıcı tarafından gönderilen içeriği doğrudan kabul edebilir. Bu özellik, kullanıcıların büyük medya dosyalarını sunucularınız aracılığıyla proxy kullanmadan doğrudan ve güvenli bir şekilde yüklemesine olanak tanır. Statik web sitenizden en iyi performansı almak için Bulut Depolama için en iyi uygulamalara bakın. Daha fazla bilgi için aşağıdaki sayfalara bakın: - Statik bir web sitesi barındırma - J, Jenkins içindir (blog gönderisi) - Google Cloud'da Band Aid 30 (blog gönderisi) - Bulut Depolama belgeleri Firebase Barındırma ile statik bir web sitesini barındırmaFirebase Barındırma, web uygulamanız için hızlı ve güvenli statik barındırma sağlar.Firebase Barındırma ile, tek bir komut kullanarak web uygulamalarını ve statik içeriği küresel bir içerik dağıtım ağına (CDN) dağıtabilirsinizFirebase Barındırma kullanın:- Sıfır yapılandırmalı SSL, Firebase Barındırma'da yerleşiktir.Özel alan adlarında ücretsiz olarak SSL sertifikaları sağlar- Tüm içeriğiniz HTTPS üzerinden sunulur- İçeriğiniz kullanıcılarınıza iletilir dünyanın dört bir yanındaki CDN uçlarından- Firebase CLI'yi kullanarak, uygulamanızı saniyeler içinde çalışır duruma getirebilirsiniz.Oluşturma sürecinize dağıtım hedefleri eklemek için komut satırı araçlarını kullanın- Yeni varlıkların atomik dağıtımı, tam sürüm oluşturma ve tek tıklama gibi sürüm yönetimi özelliklerine sahip olursunuz geri almalar- Barındırma, tek sayfalı uygulamalar ve daha çok uygulamaya benzeyen diğer siteler için yararlı bir yapılandırma sunar- Barındırma, diğer Firebase özellikleriDaha fazla bilgi için aşağıdaki sayfalara bakın:## Sanal makineleri Compute Engine ile kullanmaHizmet olarak altyapı (IaaS) kullanım durumları için , Google Cloud, Compute Engine'i sağlar.Compute Engine sağlam bir bilgi işlem altyapısı sağlar, ancak kullanmak istediğiniz platform bileşenlerini seçmeniz ve yapılandırmanız gerekir.Compute Engine ile sistemleri yapılandırmak, yönetmek ve izlemek sizin sorumluluğunuzdadır.Google, kaynakların kullanılabilir, güvenilir ve kullanıma hazır olmasını sağlar, ancak bunları sağlamak ve yönetmek size bağlıdır.Buradaki avantaj, sistemler üzerinde tam kontrole ve sınırsız esnekliğe sahip olmanızdırİstediğiniz neredeyse tüm web sitesi hizmet sistemlerini tasarlamak ve devreye almak için Compute Engine'i kullanın.Kendi donanım altyapınız varmış gibi, uygulamanızı oluşturmak için örnek adı verilen sanal makineleri kullanabilirsiniz.Compute Engine, yapılandırmanızı ihtiyaçlarınızı ve bütçenizi karşılayacak şekilde özelleştirmek için çeşitli makine türleri sunar.Tercih ettiğiniz işletim sistemlerini, geliştirme yığınlarını, dilleri, çerçeveleri, hizmetleri ve diğer yazılım teknolojilerini seçebilirsinizGoogle Cloud Marketplace ile otomatik kurulumEksiksiz bir web hizmeti yığını dağıtmanın en kolay yolu, Google Cloud Marketplace'i kullanmaktır.Yalnızca birkaç tıklamayla, Google Click to Deploy veya Bitnami ile tamamen gerçekleştirilmiş 100'den fazla çözümden herhangi birini dağıtabilirsinizÖrneğin, bir LAMP yığını veya WordPress kurabilirsiniz Bulut Pazarı ile.Sistem, eksiksiz, çalışan bir yazılım yığınını tek bir örnek üzerinde yalnızca birkaç dakika içinde dağıtır.Dağıtmadan önce, Cloud Marketplace size siteyi çalıştırmak için maliyet tahminlerini gösterir, sizin için yüklediği yazılım bileşenlerinin hangi sürümleri hakkında net bilgi verir ve bileşen örneği adlarını değiştirerek yapılandırmanızı özelleştirmenize olanak tanır. makine tipi ve bir disk boyutu seçme.Dağıttıktan sonra, Compute Engine örnekleri, bunların yapılandırmaları ve yazılım üzerinde tam kontrole sahip olursunuzManuel kurulumAyrıca altyapınızı şu adreste de oluşturabilirsiniz: Compute Engine, yapılandırmanızı sıfırdan oluşturarak veya bir Google Cloud Marketplace dağıtımı üzerinde oluşturarak manuel olarak.Örneğin, bir yazılım bileşeninin Cloud Marketplace tarafından sunulmayan bir sürümünü kullanmak isteyebilirsiniz veya belki de her şeyi kendi başınıza yükleyip yapılandırmayı tercih edebilirsinizbir web sitesi kurmaya yönelik çerçeve ve en iyi uygulamalar bu makalenin kapsamı dışındadır.Ancak üst düzey bir bakış açısından, Compute Engine'de bir web hizmeti altyapısı kurmanın teknik yönü şunları gerektirir:Gereksinimleri anlamanız.Yeni bir web sitesi oluşturuyorsanız, bulut sunucuları, depolama ihtiyaçları ve ağ altyapısı gibi ihtiyaç duyduğunuz bileşenleri anladığınızdan emin olun.Uygulamanızı mevcut bir çözümden taşıyorsanız, muhtemelen bu gereksinimleri zaten anlamışsınızdır, ancak mevcut kurulumunuzun Google Cloud hizmetleriyle nasıl eşleştiğini düşünmeniz gerekir.Tasarımı planlayın.Mimarinizi baştan sona düşünün ve tasarımınızı yazın.Olabildiğince açık olun.Bileşenleri oluşturun.Bilgisayarlar ve ağ anahtarları gibi genellikle fiziksel varlıklar olarak düşünebileceğiniz bileşenler, Compute Engine'deki hizmetler aracılığıyla sağlanır.Örneğin, bir bilgisayar istiyorsanız, bir Compute Engine örneği oluşturmanız gerekir.Kalıcı bir sabit disk sürücüsü istiyorsanız, onu da siz oluşturun.Cloud Deployment Manager veya Terraform, bunu kolay ve tekrarlanabilir bir süreç haline getirir.Yapılandırın ve özelleştirin. İstediğiniz bileşenleri elde ettikten sonra, bunları yapılandırmanız, yazılımları yükleyip yapılandırmanız ve ihtiyaç duyduğunuz tüm özelleştirme kodlarını yazıp dağıtmanız gerekir.Gelecekteki dağıtımları hızlandırmaya yardımcı olan kabuk betiklerini çalıştırarak yapılandırmayı çoğaltabilirsiniz.Deployment Manager, kaynakların otomatik dağıtımı için bildirime dayalı, esnek yapılandırma şablonları sağlayarak burada da yardımcı olur.Puppet ve Chef gibi BT otomasyon araçlarından da yararlanabilirsiniz.Varlıkları dağıtın.Muhtemelen web sayfalarınız ve resimleriniz var.Test.Her şeyin beklediğiniz gibi çalıştığını doğrulayın.Üretime dağıtın.Dünyanın görmesi ve kullanması için sitenizi açınBaşlamanıza ve Compute Engine örneklerini manuel olarak kurmanın nasıl bir şey olduğunu anlamanıza yardımcı olması için bir veya daha fazlasını deneyin aşağıdaki öğreticiler:Compute Engine ile veri depolama Çoğu web sitesinin bir tür depolamaya ihtiyacı vardır. Kullanıcılarınızın yüklediği dosyaları ve elbette sitenizin kullandığı varlıkları kaydetmek gibi çeşitli nedenlerle depolamaya ihtiyacınız olabilir. Google Cloud, aşağıdakiler de dahil olmak üzere çeşitli yönetilen depolama hizmetleri sağlar: - MySQL tabanlı Cloud SQL'de bir SQL veritabanı - NoSQL veri depolaması için iki seçenek: Firestore ve Cloud Bigtable - Tutarlı, ölçeklenebilir, yüksek kapasiteli nesne depolama Bulut depolama Bulut Depolama birkaç sınıfta gelir: - Standart maksimum kullanılabilirlik sağlar - Nearline, ayda bir defadan az erişilen veriler için ideal, düşük maliyetli bir seçim sunar - Coldline, üç ayda birden daha az erişilen veriler için ideal, düşük maliyetli bir seçenek sunar - Arşiv, arşivleme, yedekleme ve felaket kurtarma için en düşük maliyetli seçeneği sunar - Compute Engine'deki kalıcı diskler bulut sunucularınız için birincil depolama alanı olarak kullanmak üzere. Compute Engine teklifleri adı verilen her iki sabit disk tabanlı kalıcı disk standart kalıcı diskler ve katı hal kalıcı diskler (SSD). Kalıcı diskler kullanarak Compute Engine'de tercih ettiğiniz depolama teknolojisini kurmayı da seçebilirsiniz. Örneğin, SQL veritabanınız olarak PostgreSQL'i veya NoSQL depolama alanınız olarak MongoDB'yi ayarlayabilirsiniz. Google Cloud'daki depolama hizmetlerinin tüm yelpazesini ve avantajlarını anlamak için Depolama seçeneği belirleme bölümüne bakın. Compute Engine ile yük dengeleme Ölçekte çalışan herhangi bir web sitesi için, iş yükünü sunucular arasında dağıtmak üzere yük dengeleme teknolojilerinin kullanılması genellikle bir gerekliliktir. Yük dengeli web sunucularınızı Compute Engine'de tasarlarken çeşitli seçenekleriniz vardır, örneğin: - HTTP(S) yük dengeleme Bulut Yükü Dengelemeyi kullanmanın temellerini açıklar - İçerik tabanlı yük dengeleme. Gelen URL'ye göre trafiğin farklı örneklere nasıl dağıtılacağını gösterir - Bölgeler arası yük dengeleme. Farklı bölgelerde sanal makine örneklerini yapılandırmayı ve bölgeler arasında trafiği dağıtmak için HTTP veya HTTPS yük dengelemeyi kullanmayı gösterir. - TCP Proxy yük dengeleme. Birden çok bölgede bulunan bir hizmet için genel TCP Proxy yük dengelemenin ayarlanmasını gösterir - SSL Proxy yük dengeleme. Birden çok bölgede bulunan bir hizmet için genel SSL Proxy yük dengelemenin ayarlanmasını gösterir - HTTP(S), SSL Proxy ve TCP Proxy yük dengeleme için IPv6 sonlandırma. IPv6 sonlandırmasını ve IPv6 isteklerini işlemek için yük dengeleyicileri yapılandırma seçeneklerini açıklar - Ağ yük dengeleme. HTTP trafiğini sağlıklı örnekler arasında dağıtmak için bir katman 3 yük dengeleme yapılandırması oluşturan temel bir senaryoyu gösterir. - Microsoft IIS arka uçlarını kullanarak bölgeler arası yük dengeleme. Trafiği Microsoft Internet Information Services (IIS) sunucularına dağıtmak için Compute Engine yük dengeleyicinin nasıl kullanılacağını gösterir - Dahili yük dengelemeyi ayarlama Ağ trafiğini internete açık olmayan özel bir ağda dağıtan bir yük dengeleyici kurabilirsiniz. Dahili yük dengeleme, yalnızca tüm trafiğin özel bir ağda kaldığı intranet uygulamaları için değil, aynı zamanda bir ön ucun özel bir ağ kullanarak arka uç sunucularına istekte bulunduğu karmaşık web uygulamaları için de kullanışlıdır. Yük dengeleme dağıtımı esnektir ve Compute Engine'i mevcut çözümlerinizle birlikte kullanabilirsiniz. Örneğin, Nginx kullanan HTTP(S) yük dengeleme, Compute Engine yük dengeleyici yerine kullanabileceğiniz olası bir çözümdür. Compute Engine ile içerik dağıtımı Yanıt süresi herhangi bir web sitesi için temel bir ölçüm olduğundan, gecikmeyi azaltmak ve performansı artırmak için bir CDN kullanmak, özellikle küresel web trafiğine sahip bir site için genellikle bir gerekliliktir. Cloud CDN, içeriği kullanıcılara en yakın önbellek konumlarından teslim etmek için Google'ın küresel olarak dağıtılmış uç noktalarını kullanır. Cloud CDN, HTTP(S) yük dengeleme ile çalışır. İçeriği Compute Engine, Cloud Storage veya her ikisinden tek bir IP adresinden sunmak için HTTP(S) yük dengeleyici için Cloud CDN'yi etkinleştirin Compute Engine ile otomatik ölçeklendirme Talep değiştikçe sunucu eklemek ve kaldırmak için mimarinizi ayarlayabilirsiniz. Bu yaklaşım, daha tipik talep dönemlerinde maliyetleri kontrol altında tutarken sitenizin yoğun yük altında iyi performans göstermesini sağlamaya yardımcı olabilir. Compute Engine, bu amaçla kullanabileceğiniz bir otomatik ölçekleyici sağlar Otomatik ölçeklendirme, yönetilen örnek gruplarının bir özelliğidir. Yönetilen örnek grubu, ortak bir örnek şablonundan oluşturulan homojen sanal makine örneklerinden oluşan bir havuzdur. Bir otomatik ölçekleyici, yönetilen bir örnek grubuna örnek ekler veya kaldırır. Compute Engine'de hem yönetilen hem de yönetilmeyen örnek grupları bulunsa da yönetilen örnek gruplarını yalnızca bir otomatik ölçekleyici ile kullanabilirsiniz. Daha fazla bilgi için bkz. Compute Engine'de otomatik ölçeklendirme Ölçeklenebilir ve esnek bir web uygulaması çözümü oluşturmak için gerekenlere derinlemesine bir bakış için bkz. Ölçeklenebilir ve esnek web uygulamaları oluşturma Compute Engine ile günlüğe kaydetme ve izleme Google Cloud, web sitenizde neler olup bittiğini takip etmek için kullanabileceğiniz özellikler içerir Cloud Logging, Google Cloud'daki uygulama ve hizmetlerden günlükleri toplar ve depolar. Bir günlük aracı kullanarak günlükleri görüntüleyebilir veya dışa aktarabilir ve üçüncü taraf günlüklerini entegre edebilirsiniz. Cloud Monitoring, siteniz için panolar ve uyarılar sağlar.İzlemeyi Google Cloud konsoluyla yapılandırırsınız.Bulut hizmetleri, sanal makineler ve MongoDB, Apache, Nginx ve Elasticsearch gibi yaygın açık kaynak sunucular için performans ölçümlerini inceleyebilirsiniz.İzleme verilerini almak ve özel ölçümler oluşturmak için Cloud Monitoring API'yi kullanabilirsinizCloud Monitoring ayrıca web sitelerinize yanıt verip vermediklerini görmek için istekler gönderen çalışma kontrolleri sağlar.Çalışma denetimi başarısız olursa bir olay oluşturan bir uyarı politikası dağıtarak bir web sitesinin kullanılabilirliğini izleyebilirsinizDevOps'u Compute Engine ile YönetmeDevOps yönetimi hakkında bilgi için Compute Engine ile aşağıdaki makalelere bakın:- Kubernetes kullanarak dağıtılmış yük testi- Compute Engine'de Spinnaker çalıştırma- Spinnaker ile Google Cloud'da dağıtımları yönetme# # GKE ile kapsayıcıları kullanmaDocker kapsayıcıları gibi kapsayıcıları zaten kullanıyor olabilirsiniz.Web sunumu için, kapsayıcılar aşağıdakiler dahil çeşitli avantajlar sunar:Bileşenleştirme.Web uygulamanızın çeşitli bileşenlerini ayırmak için kapları kullanabilirsiniz.Örneğin, sitenizin bir web sunucusu ve bir veritabanı çalıştırdığını varsayalım.Bu bileşenleri ayrı kaplarda çalıştırabilir, bir bileşeni diğerini etkilemeden değiştirebilir ve güncelleyebilirsiniz.Uygulamanızın tasarımı daha karmaşık hale geldikçe, kapsayıcılar, mikro hizmetler de dahil olmak üzere hizmet odaklı bir mimari için çok uygundur.Bu tür bir tasarım, diğer hedeflerin yanı sıra ölçeklenebilirliği de destekler.Taşınabilirlik.Bir kapsayıcı, uygulamanızı çalıştırmak için ihtiyaç duyduğu her şeye sahiptir ve uygulamanız ve bağımlılıkları bir arada paketlenmiştir.Kapsayıcılarınızı, temeldeki sistem ayrıntıları hakkında endişelenmeden çeşitli platformlarda çalıştırabilirsiniz.Hızlı dağıtım.Dağıtma zamanı geldiğinde, sisteminiz bir dizi tanım ve görüntüden oluşturulur, böylece parçalar hızlı, güvenilir ve otomatik olarak dağıtılabilir.Kapsayıcılar genellikle küçüktür ve örneğin sanal makinelere kıyasla çok daha hızlı dağıtılırGoogle Cloud'da kapsayıcı bilgi işlem, web sunumu için daha da fazla avantaj sunar:Düzenleme.GKE, Google tarafından kullanıma sunulan açık kaynaklı konteyner düzenleme sistemi olan Kubernetes üzerinde oluşturulmuş, yönetilen bir hizmettir.GKE ile kodunuz, Compute Engine örneklerinden oluşan bir kümenin parçası olan kapsayıcılarda çalışır.Tek tek kapsayıcıları yönetmek veya her bir kapsayıcıyı manuel olarak oluşturup kapatmak yerine, tanımladığınız yapılandırmayı kullanan GKE aracılığıyla kümeyi otomatik olarak yönetebilirsiniz.Görüntü kaydı.Container Registry veya Artifact Registry, Google Cloud'da Docker görüntüleri için özel depolama alanı sağlar.Kayıt defterine bir HTTPS uç noktası aracılığıyla erişebilirsiniz, böylece ister Compute Engine örneği ister kendi donanımız olsun, herhangi bir makineden görüntü alabilirsiniz.Kayıt hizmeti, özel görüntülerinizi Google Cloud projeniz kapsamında Cloud Storage'da barındırır.Bu yaklaşım, varsayılan olarak özel resimlerinize yalnızca projenize erişimi olan sorumlular tarafından erişilebilmesini sağlar.Hareketlilik.Bu, hibrit bir çözüm oluşturmak için iş yüklerini taşıma ve diğer bulut sağlayıcılarla birleştirme veya bulut bilgi işlem iş yüklerini şirket içi uygulamalarla karıştırma esnekliğine sahip olduğunuz anlamına gelirGKEGKE, Google Cloud üzerinde çalıştığından ve Compute Engine örneklerini düğüm olarak kullandığından, depolama seçeneklerinizin Compute Engine'deki depolamayla pek çok ortak noktası vardır.Cloud SQL, Cloud Storage, Datastore ve Bigtable'a API'leri aracılığıyla erişebilir veya isterseniz başka bir harici depolama sağlayıcısı kullanabilirsiniz.Ancak GKE, Compute Engine kalıcı diskleriyle normal bir Compute Engine örneğinin yapacağından farklı bir şekilde etkileşim kurarBir Compute Engine örneği ekli bir disk içerir.Compute Engine kullandığınızda, örnek var olduğu sürece, disk hacmi örnekte kalır.Hatta diski çıkarıp farklı birörneğiyle kullanabilirsiniz.Ancak bir kapsayıcıda, diskteki dosyalar geçicidir. Ne zaman bir konteyner örneğin bir çökmeden sonra yeniden başlatıldığında, diskteki dosyalar kaybolur. Kubernetes çözer kullanarak bu sorunu Ses soyutlama ve bir tür hacim gcePersistentDisk Bu, Compute Engine kalıcı disklerini kapsayıcılarla birlikte kullanabileceğiniz anlamına gelir. GKE'yi kullandığınızda veri dosyalarınızın silinmesini önleyin Bir birimin özelliklerini ve faydalarını anlamak için önce bölmeler hakkında biraz bilgi sahibi olmalısınız. Bir bölmeyi, bir veya daha fazla kapsayıcı için uygulamaya özel bir mantıksal ana bilgisayar olarak düşünebilirsiniz. Bir pod, bir düğüm örneğinde çalışır. Kapsayıcılar bir bölmenin üyesi olduklarında, bir dizi paylaşılan depolama birimi de dahil olmak üzere çeşitli kaynakları paylaşabilirler. Bu birimler, verilerin kapsayıcı yeniden başlatmalarında hayatta kalmasını ve bölme içindeki kapsayıcılar arasında paylaşılmasını sağlar. Elbette, bir bölmede tek bir kapsayıcı ve birim de kullanabilirsiniz, ancak bölme, bu kaynakları mantıksal olarak birbirine bağlamak için gerekli bir soyutlamadır. Bir örnek için WordPress ve MySQL ile kalıcı diskleri kullanma öğreticisine bakın. GKE ile yük dengeleme Birçok büyük web hizmet mimarisinin, trafik taleplerini paylaşabilen çalışan birden çok sunucuya sahip olması gerekir. GKE ile birden fazla kapsayıcı, düğüm ve kapsül oluşturup yönetebildiğiniz için, yük dengeli bir web sunum sistemi için doğal bir uyumdur. Ağ yük dengelemeyi kullanma GKE'de bir yük dengeleyici oluşturmanın en kolay yolu, Compute Engine'in ağ yük dengelemesini kullanmaktır. Ağ yük dengeleme, adres, bağlantı noktası ve protokol türü gibi gelen internet protokolü verilerine dayalı olarak sistemlerinizin yükünü dengeleyebilir. Ağ yük dengeleme, yönlendirme kurallarını kullanır. Bu kurallar, yük dengeleme için hangi örneklerin kullanılabileceğini listeleyen hedef havuzlara işaret eder. Ağ yük dengeleme ile SMTP trafiği gibi ek TCP/UDP tabanlı protokollerin yükünü dengeleyebilirsiniz ve uygulamanız paketleri doğrudan inceleyebilir Ağ yük dengelemesini basitçe ekleyerek dağıtabilirsiniz. tür: Yük Dengeleyici hizmet yapılandırma dosyanızın bulunduğu alan HTTP(S) yük dengelemeyi kullanma HTTPS yük dengeleme, içerik tabanlı yük dengeleme veya bölgeler arası yük dengeleme gibi daha gelişmiş yük dengeleme özelliklerine ihtiyacınız varsa GKE hizmetinizi Compute Engine'in HTTP/HTTPS yük dengeleme özelliğiyle entegre edebilirsiniz. Kubernetes, harici trafiği Kubernetes uç noktalarına yönlendirmek için bir kurallar koleksiyonunu kapsayan Giriş kaynağını sağlar. GKE'de bir Giriş kaynağı, Compute Engine HTTP/HTTPS yük dengeleyicinin sağlanmasını ve yapılandırılmasını işler GKE'de HTTP/HTTPS yük dengelemeyi kullanma hakkında daha fazla bilgi için bkz. Ingress ile HTTP yük dengelemeyi ayarlama GKE ile ölçeklendirme Kümelerin otomatik olarak yeniden boyutlandırılması için Küme Otomatik Ölçekleyici'yi kullanabilirsiniz. Bu özellik, boş kaynaklara sahip bir düğümü bekleyen ancak programlanmayan bölmeler olup olmadığını düzenli olarak kontrol eder. Bu tür bölmeler varsa, yeniden boyutlandırma bekleyen bölmelerin programlanmasına izin veriyorsa, otomatik ölçekleyici düğüm havuzunu yeniden boyutlandırır. Küme Otomatik Ölçekleyici ayrıca tüm düğümlerin kullanımını da izler. Bir düğüme uzun bir süre ihtiyaç duyulmazsa ve tüm bölmeleri başka bir yerde planlanabiliyorsa düğüm silinir Küme Otomatik Ölçekleyicisi, sınırlamaları ve en iyi uygulamaları hakkında daha fazla bilgi için Küme Otomatik Ölçekleyici belgelerine bakın GKE ile günlüğe kaydetme ve izleme Compute Engine'de olduğu gibi Günlük Kaydı ve İzleme, günlük kaydı ve izleme hizmetlerinizi sağlar. Günlüğe kaydetme, uygulamalardan ve hizmetlerden günlükleri toplar ve depolar. Bir günlük aracı kullanarak günlükleri görüntüleyebilir veya dışa aktarabilir ve üçüncü taraf günlüklerini entegre edebilirsiniz. İzleme, siteniz için panolar ve uyarılar sağlar. İzlemeyi Google Cloud konsoluyla yapılandırırsınız. Bulut hizmetleri, sanal makineler ve MongoDB, Apache, Nginx ve Elasticsearch gibi yaygın açık kaynak sunucular için performans ölçümlerini inceleyebilirsiniz. İzleme verilerini almak ve özel metrikler oluşturmak için İzleme API'sini kullanabilirsiniz. DevOps'u GKE ile Yönetme GKE'yi kullandığınızda, çoğu kişinin DevOps'u düşündüğünde aklına gelen avantajların çoğuna zaten sahip oluyorsunuz. Bu, özellikle paketleme, dağıtım ve yönetim kolaylığı söz konusu olduğunda doğrudur. CI/CD iş akışı ihtiyaçlarınız için Jenkins gibi popüler araçlardan yararlanabilirsiniz. Aşağıdaki makalelere bakın: ## App Engine ile yönetilen bir platform üzerinde geliştirme Google Cloud'da, hizmet olarak yönetilen platforma (PaaS) App Engine adı verilir. Web sitenizi App Engine'de oluşturduğunuzda, özelliklerinizi kodlamaya odaklanırsınız ve destekleyici altyapıyı yönetme işini Google'a bırakırsınız. App Engine; ölçeklenebilirlik, yük dengeleme, günlüğe kaydetme, izleme ve güvenliği, bunları kendiniz oluşturup yönetmenize kıyasla çok daha kolay hale getiren çok çeşitli özellikler sunar. App Engine, çeşitli programlama dillerinde kod yazmanıza olanak tanır ve diğer çeşitli Google Cloud hizmetlerini kullanabilir App Engine, uygulamaları güvenli, korumalı bir ortamda çalıştırmanıza izin veren standart ortamı sağlar. App Engine standart ortamı, istekleri birden çok sunucuya dağıtır ve sunucuları trafik taleplerini karşılayacak şekilde ölçeklendirir. Uygulamanız, sunucunun donanımından, işletim sisteminden veya fiziksel konumundan bağımsız, kendi güvenli ve güvenilir ortamında çalışır. App Engine, size daha fazla seçenek sunmak için esnek bir ortam sunar. Esnek ortamı kullandığınızda, uygulamanız yapılandırılabilir Compute Engine örneklerinde çalışır ancak barındırma ortamını sizin yerinize App Engine yönetir. Bu, daha fazla programlama dili seçeneği için özel çalışma zamanları da dahil olmak üzere ek çalışma zamanlarını kullanabileceğiniz anlamına gelir. Çeşitli CPU ve bellek seçenekleri arasından seçim yapma gibi Compute Engine'in sunduğu bazı esnekliklerden de yararlanabilirsiniz. Programlama dilleri App Engine standart ortamı varsayılan çalışma süreleri sağlar ve kaynak kodunu desteklenen programlama dillerinin belirli sürümlerinde yazarsınız Esnek ortamla, desteklenen programlama dillerinden herhangi birinin bir sürümünde kaynak kodu yazarsınız. Bu çalışma zamanlarını özelleştirebilir veya özel bir Docker görüntüsü veya Dockerfile ile kendi çalışma zamanınızı sağlayabilirsiniz. Kullandığınız programlama dili öncelikliyse, App Engine standart ortamı tarafından sağlanan çalıştırma sürelerinin gereksinimlerinizi karşılayıp karşılamadığına karar vermeniz gerekir. Olmazsa, esnek ortamı kullanmayı düşünmelisiniz Hangi ortamın uygulamanızın gereksinimlerini en iyi şekilde karşıladığını belirlemek için App Engine ortamı seçme bölümüne bakın. Dile göre başlangıç ​​öğreticileri Aşağıdaki öğreticiler, App Engine standart ortamını kullanmaya başlamanıza yardımcı olabilir: - Python'da Merhaba Dünya - Java'da Merhaba Dünya - PHP'de Merhaba Dünya - Ruby'de Merhaba Dünya - Go'da Merhaba Dünya - Node.js'de Merhaba Dünya Aşağıdaki öğreticiler, esnek ortamı kullanmaya başlamanıza yardımcı olabilir: - Python'a başlarken - Java'ya başlarken - PHP'ye Başlarken - Go'ya başlarken - Node.js'ye başlarken - Ruby'ye başlarken - .NET'e başlarken App Engine ile veri depolama App Engine, verilerinizi depolamak için size seçenekler sunar: |İsim||Yapı||Tutarlılık| |Firestore||Şemasız||Kesinlikle tutarlı.| |Cloud SQL||İlişkisel||Kesinlikle tutarlı.| |Bulut Depolama||Dosyalar ve ilişkili meta verileri||Paketlerin veya nesnelerin listesini alan liste işlemlerinin gerçekleştirilmesi dışında kesinlikle tutarlı.| Standart ortamla birkaç üçüncü taraf veritabanını da kullanabilirsiniz. App Engine'de depolama hakkında daha fazla ayrıntı için Bir depolama seçeneği belirleme bölümüne bakın ve ardından tercih ettiğiniz programlama dilini seçin Esnek ortamı kullandığınızda, standart ortamla kullanabileceğiniz depolama seçeneklerinin tümünü ve ayrıca daha geniş bir üçüncü taraf veritabanları yelpazesini kullanabilirsiniz. Esnek ortamdaki üçüncü taraf veritabanları hakkında daha fazla bilgi için bkz. Üçüncü taraf veritabanlarını kullanma App Engine ile yük dengeleme ve otomatik ölçeklendirme Varsayılan olarak App Engine, gelen istekleri uygun arka uç örneklerine otomatik olarak yönlendirir ve sizin için yük dengeleme yapar. Ancak, Google Cloud'un tam özellikli kurumsal sınıf HTTP(S) yük dengeleme özelliklerinden yararlanmak istiyorsanız sunucusuz ağ uç noktası gruplarını kullanabilirsiniz. Ölçeklendirme için, App Engine trafik dalgalandıkça otomatik olarak anddown örnekleri oluşturabilir veya trafik miktarından bağımsız olarak çalıştırılacak bir dizi örnek belirleyebilirsiniz. App Engine ile günlüğe kaydetme ve izleme App Engine'de istekler otomatik olarak günlüğe kaydedilir ve bunları görüntüleyebilirsiniz. Google Cloud konsolunda günlükler. App Engine ayrıca şunlarla da çalışır: günlüğe kaydetme işlevi sağlayan standart, dile özgü kitaplıklar ve günlük girişlerini Google Cloud konsolundaki günlüklere iletir. Örneğin, Python'da standart Python kayıt modülünü kullanabilir ve Java'da logback ekleyiciyi entegre edebilirsiniz veya java.util.log Bulut Kaydı ile. Bu yaklaşım, Cloud Logging'in tüm özelliklerini etkinleştirir ve yalnızca birkaç satırlık Google Cloud'a özel kod gerektirir Cloud Monitoring, App Engine uygulamalarınızı izlemek için özellikler sağlar. Google Cloud konsolu aracılığıyla olayları, çalışma süresi kontrollerini ve diğer ayrıntıları izleyebilirsiniz. ## Cloud Run ile sunucusuz bir platform üzerinde geliştirme Google Cloud'un sunucusuz platformu, temeldeki altyapı hakkında endişelenmeden istediğiniz gibi kod yazmanıza olanak tanır. Google Cloud'un depolaması, veritabanları, makine öğrenimi ve daha fazlasıyla tam yığın sunucusuz uygulamalar oluşturabilirsiniz Container mimarisine alınmış web siteleriniz için GKE'yi kullanmanın yanı sıra bunları Cloud Run'a da dağıtabilirsiniz. Cloud Run, Google Cloud'da yüksek düzeyde ölçeklenebilir kapsayıcılı uygulamalar çalıştırmanıza olanak tanıyan, tümüyle yönetilen, sunucusuz bir platformdur. Yalnızca kodunuzun çalıştığı süre için ödeme yaparsınız Cloud Run ile kapsayıcıları kullanarak web sitelerinizi oluşturmak, SQL veritabanınıza Cloud SQL üzerinden erişmek ve dinamik HTML sayfaları oluşturmak için Nginx, Express.js ve Django gibi gelişmiş teknolojilerden yararlanabilirsiniz. Cloud Run belgeleri, başlamanıza yardımcı olacak bir hızlı başlangıç ​​içerir Cloud Run ile veri depolama Cloud Run kapsayıcıları kısa ömürlüdür ve kullanım durumlarınız için kotalarını ve sınırlarını anlamanız gerekir. Dosyalar, bir kapsayıcı örneğinde işlenmek üzere geçici olarak depolanabilir, ancak bu depolama, çalışma zamanı sözleşmesinde açıklandığı gibi hizmet için kullanılabilir bellekten gelir. Kalıcı depolama için App Engine'e benzer şekilde Google Cloud'un Cloud Storage, Firestore veya Cloud SQL gibi hizmetlerini seçebilirsiniz. Alternatif olarak, üçüncü taraf bir depolama çözümü de kullanabilirsiniz. Cloud Run ile yük dengeleme ve otomatik ölçeklendirme Varsayılan olarak, Cloud Run üzerinde derleme yaptığınızda, gelen istekleri otomatik olarak uygun arka uç kapsayıcılarına yönlendirir ve sizin için yük dengeleme yapar. Ancak, Google Cloud'un tam özellikli kurumsal sınıf HTTP(S) yük dengeleme özelliklerinden yararlanmak istiyorsanız sunucusuz ağ uç noktası gruplarını kullanabilirsiniz. HTTP(S) yük dengeleme ile Cloud CDN'yi etkinleştirebilir veya birden fazla bölgeden trafik sunabilirsiniz. Ayrıca, hizmetinizi geliştirmek için API Gateway gibi ara katman yazılımlarını kullanabilirsiniz. Cloud Run için Google Cloud, kapsayıcı örneği otomatik ölçeklendirmesini yönetir senin için. Her revizyon işlemek için gereken kapsayıcı örneği sayısına göre otomatik olarak ölçeklenir gelen tüm istekler. Bir revizyon varsayılan olarak herhangi bir trafik almadığında sıfır kapsayıcı örneğine ölçeklenir. Ancak, isterseniz şunları yapabilirsiniz: boşta tutulacak bir örneği belirtmek için bu varsayılanı değiştirin veya *sıcak* kullanarak minimum örnek ayarı Cloud Run ile günlüğe kaydetme ve izleme Cloud Run'da otomatik olarak Cloud Logging'e gönderilen iki tür günlük vardır: - İstek günlükleri: Cloud Run hizmetlerine gönderilen isteklerin günlükleri. Bu günlükler otomatik olarak oluşturulur - Kapsayıcı günlükleri: Kapsayıcı günlüklerini yazma bölümünde açıklandığı gibi desteklenen konumlara yazılan, genellikle kendi kodunuzdan kap örneklerinden yayılan günlükler Hizmetiniz için günlükleri birkaç şekilde görüntüleyebilirsiniz: - Google Cloud konsolundaki Cloud Run sayfasını kullanın - Google Cloud konsolunda Cloud Logging Logs Explorer'ı kullanın Bu görüntüleme yöntemlerinin her ikisi de Cloud Logging'de depolanan aynı günlükleri inceler, ancak Günlük Gezgini daha fazla ayrıntı ve daha fazla filtreleme yeteneği sağlar Cloud Monitoring, Cloud Run performans izleme, ölçümler ve çalışma süresi kontrollerinin yanı sıra belirli ölçüm eşikleri aşıldığında bildirim göndermek için uyarılar sağlar. Google Cloud'un işlem paketi fiyatlandırması geçerlidir; bu, Cloud Run'ın tamamen yönetilen sürümünde metrikler için herhangi bir ücret alınmadığı anlamına gelir. Cloud Monitoring özel metriklerini de kullanabileceğinizi unutmayın. Cloud Run, Cloud Monitoring ile entegredir *kurulum veya yapılandırma gerekmez*. Bu, ölçümlerinizin Cloud Run hizmetleri, çalışırken otomatik olarak yakalanır ## İçerik yönetim sistemleri oluşturma Bir web sitesine hizmet vermek, web sitesi varlıklarınızı yönetmek anlamına gelir. Cloud Storage, bu varlıklar için küresel bir havuz sağlar. Yaygın bir mimari, statik içeriği Cloud Storage'a dağıtır ve ardından dinamik sayfaları oluşturmak için Compute Engine ile eşitlenir. Cloud Storage, WordPress, Drupal ve Joomla gibi birçok üçüncü taraf içerik yönetim sistemiyle çalışır. Cloud Storage ayrıca Amazon S3 uyumlu bir API sunar, böylece Amazon S3 ile çalışan herhangi bir sistem Cloud Storage ile çalışabilir Aşağıdaki diyagram, bir içerik yönetim sistemi için örnek bir mimaridir. ## Sıradaki ne - Google Cloud ile ilgili referans mimarileri, diyagramları, eğiticileri ve en iyi uygulamaları keşfedin. Bulut Mimarisi Merkezimize bir göz atın.