Ease of use is one thing. I have clients that can benefit from cloud based solutions. They may have a typical hosting account with some name brand hosts but for various reasons I find myself getting annoyed and deciding I’m moving them to the cloud.
I move them to Google Cloud Platform but only temporarily because I know that when I leave them (I’m just a freelancer) they’ll be lost. If they decide they want to be in the cloud every single time I then move them to AWS. Why did I pick Google to begin with? Only one reason…the credit. That credit allows me to move them without them feeling pressured but when they make the decision to stick with the cloud they leave Google.
Why Is Google Cloud Not Where I Leave Them?
- Ever try to have a server on GCP with more than one IP address? – It is next to impossible compared with the ease of associating multiple IPs to an AWS server. Beyond the technical limitations of GCP they also don’t allow more than one IP address per zone. So I would have to use a load balancer if I wanted more than one server in the same zone. That second layer of steps exceeds the clients interest.
- Often they have WHM / cPanel servers and they require 2 IP addresses for the two required name servers. Google Cloud … I have to make the WHM with one IP then run off to another zone and make a second server thats DNS only but still meets the minimum requirements of cPanel….then I have to make a DNS cluster tieing the two together and I have found these clusters to be very tricky…often somehow falling apart and needing to be put back together. The client in the end just wanted one server. I can do that in about 2 hours total on AWS without additional servers.
- Restrictions – So lets say I make a GCP WordPress micro server. I let people signup and require them to respond to an email from the server. NO ONE ever responds to the email…well, its because GCP by default blocks all SMTP ports. So, if I want something as simple as email I have to go setup a mail relay through another service and guess how many clients eyes glaze over at this point? All.
- Too much reliance on Cloud SDK over simply putting it in the website. Again back to clients being able to use this after I leave them, if they cant do it in the web interface they cant do it. Too often the instructions in the help reference Cloud SDK and thats the end. If a client requires a full time cloud specialist because Google relies on Cloud SDK too much then I can’t leave an everyday client with them.
- Ever tried to SFTP into a server? AWS I pick an SSH key that Ive already added from previous servers and then in my SFTP client I add my connection settings and select the .pem file and I’m in. Google cloud there are just way more steps and issues. Here is a fun example … go to google and type “Google Cloud SSH” and see what Google suggests you are searching for…Google Cloud SSH Key, Google Cloud SSH Not Working, Google Cloud SSH Permissions, Google Cloud SSH Timeout …. that says volumes. Permission denied is basically the expected search from Google if you type a simple thing you will have to be able to do.
So those are my thoughts…its overly complex and drops the ball in an area that only a few people in most companies IT departments can understand.
I added this into UltimateSEO.org because it IS an SEO thing. The speed and loading of your site has a big effect on your ranking. I have improved a sites ranking from the average keyword in the 40s to the 20s by simply putting them on their own server. Who wouldn’t want their keywords jumping like that and for about $30 a month.
UltimateSEO: Make An Impact
[unable to retrieve full-text content]
So you made a WHM server on Google Cloud and before you get to use it suddenly its broken? I feel your pain. Not sure when this started but it seems Google Cloud auto writes over the hostname. Usually not an issue but cPanel seems to rely upon this entry to the point when you type a FQDN like louisville.data502.com it changes to rubbish in a redirect and the site can’t be resolved.
You can see it from their site or I have the steps below.
To configure VPS deployments, many cloud hosting providers use the dhclient script, which includes the configuration of the instance’s hostname.
The dhclient script may not preserve the locally-configured hostname, so hosting providers use scripts to work around this issue. For example, Google Cloud Platform Services™ uses the google_set_hostname script.
The workaround scripts may interfere with WHM’s Change Hostname feature (WHM >> Home >> Networking Setup >> Change Hostname), which causes hostname configuration issues and a locked cPanel & WHM license.
To resolve this issue, you must create a dhclient exit hook script to set the hostname properly.
Create the set-hostname.sh file with the following contents in the /etc/dhcp/dhclient-exit-hooks.d/ directory, where hostname.example.com represents your server’s new hostname:
You can also create the file with the following command, where hostname.example.com represents your server’s new hostname: Note in the code below you should be sudo and hostname.example.com will need to be changed
mkdir -p /etc/dhcp/dhclient-exit-hooks.d/ && echo -ne ‘#!/bin/shnhostname hostname.example.comn/scripts/fixetchostsn’ > /etc/dhcp/dhclient-exit-hooks.d/zzz-set-hostname.sh && chmod +x /etc/dhcp/dhclient-exit-hooks.d/zzz-set-hostname.sh
OR You can make it in a drawn out 3 step process.
- hostname hostname.example.com
That should keep the name as you intended.
Key Components & Services
There are two custom services running on the deployed machines that are essential for the solution to function properly. These services are gcs-sync (running on WordPress instances – both Admin and Content) and cloudsql-proxy (running on the SQL Proxy instances).
The gcs-sync service runs a script /opt/c2d/downloads/gcs-sync that, depending on the role the VM is assigned (Content or Admin), will check in with the GCS bucket tied to the deployment and determine if content needs to be pushed to or pulled from GCS. If you need to interact with the service, you can do so via systemctl. For example:
systemctl stop gcs-sync
will kill the script checking GCS, and the node will not receive any updates that come from the Administrator Node. Conversely, if the service needs to be started you can do so with the following command:
systemctl start gcs-sync
The cloudsql-proxy service makes use of the Cloud SQL Proxy binary so you can connect to your Cloud SQL instance without having to whitelist IP addresses, which can change when instances are deleted and recreated in a Managed Instance Group. The Cloud SQL binary is located at /opt/c2d/downloads/cloud_sql_proxy and the script that executes the binary is located at /opt/c2d/downloads/cloudsql-proxy. Like the service that runs gcs-sync, it can be interacted with using systemctl. Stopping the service can be done with:
systemctl stop cloudsql-proxy
At this point your instance will not be able to communicate with the Cloud SQL instance, and the application will not function. If you needed to manually start the service for any reason you can do so with the following command:
systemctl start cloudsql-proxy
Cloudflare DNS and CDN With WordPress High Availability On Google Cloud
The post Cloudflare DNS and CDN With WordPress High Availability On Google Cloud appeared first on Cloud502.
Cloud502 – Cloud502 Cloud based Data, Analytics, SEO and Hosting Solutions. Cloud502 offers data insights in Louisville, KY.