diff --git a/content/learning-paths/laptops-and-desktops/wsl2/ssh.md b/content/learning-paths/laptops-and-desktops/wsl2/ssh.md index e12a3e7983..9c66667b40 100644 --- a/content/learning-paths/laptops-and-desktops/wsl2/ssh.md +++ b/content/learning-paths/laptops-and-desktops/wsl2/ssh.md @@ -80,7 +80,7 @@ There are two options to SSH from another machine on the local network: - Bridged networking - Port forwarding -# Bridged networking +### Bridged networking WSL uses NAT by default. This means the Linux distribution running in WSL will get an IP address starting with 172.X.X.X and not an IP address on the local network. NAT makes it impossible to SSH to WSL. @@ -88,7 +88,7 @@ One way to get an IP on the local network is to use a bridged network. For more information refer to the [short WSL bridging and networking reference](https://github.com/luxzg/WSL2-fixes/blob/master/networkingMode%3Dbridged%20-%20quick%20setup.md) -# Port forwarding +### Port forwarding Another way to connect to WSL via SSH is to forward or proxy the Windows port for SSH, such as 2022, to the WSL instance. @@ -120,8 +120,13 @@ Get the IP address of Windows: ipconfig ``` -From another local machine SSH to the Windows IP on port 2022 and it should forward to WSL running on that Windows computer. +From another local machine, SSH to the Windows IP on port 2022. It should forward to WSL running on that Windows computer. +## What you've accomplished and what's next + +You've now learned when SSH is useful for WSL and when the built-in `/mnt/c` mount is enough for local file transfers. You installed and started the OpenSSH server inside your Linux distribution, connected from Windows using `ssh.exe`, changed the SSH port when needed, and reviewed options for connecting to WSL from another machine on your local network. + +Next, you'll learn how to connect to WSL using RDP and VNC so you can work with a full Linux desktop environment from Windows. diff --git a/content/learning-paths/servers-and-cloud-computing/gcp/terraform.md b/content/learning-paths/servers-and-cloud-computing/gcp/terraform.md index 66880364d0..1b20a2090e 100644 --- a/content/learning-paths/servers-and-cloud-computing/gcp/terraform.md +++ b/content/learning-paths/servers-and-cloud-computing/gcp/terraform.md @@ -8,9 +8,9 @@ weight: 2 # 1 is first, 2 is second, etc. layout: "learningpathall" --- -# Deploy an Arm based VM using Terraform +## Deploy an Arm based VM using Terraform -## Generate an SSH key pair +### Generate an SSH key pair Generate an SSH key pair (public key, private key) using `ssh-keygen` to use for Arm VMs access. To generate the key pair, follow this [guide](/install-guides/ssh/#ssh-keys). @@ -19,13 +19,13 @@ If you already have an SSH key pair present in the `~/.ssh` directory, you can s {{% /notice %}} -## Acquire GCP Access Credentials +### Acquire GCP Access Credentials The installation of Terraform on your Desktop/Laptop needs to communicate with GCP. Thus, Terraform needs to be authenticated. To obtain GCP user credentials, follow this [guide](/install-guides/gcloud/#acquire-user-credentials). -## Terraform infrastructure +### Terraform infrastructure Add resources required to create a VM in `main.tf`. Add below code in `main.tf` file: @@ -64,9 +64,9 @@ resource "google_compute_instance" "vm_instance" { Replace `project_ID` with your value which can be found in the [Dashboard](https://console.cloud.google.com/home?_ga=2.56408877.721166205.1675053595-562732326.1671688536&_gac=1.125526520.1675155465.CjwKCAiAleOeBhBdEiwAfgmXfwdH3kCFBFeYzoKSuP1DzwJq7nY083_qzg7oyP2gwxMvaE0PaHVgFhoCmXoQAvD_BwE) of Google Cloud console. {{% /notice %}} -## Terraform commands +### Terraform commands -### Initialize Terraform +#### Initialize Terraform Run `terraform init` to initialize the Terraform deployment. This command downloads all the modules required to manage your resources. ``` @@ -100,7 +100,7 @@ rerun this command to reinitialize your working directory. If you forget, other commands will detect it and remind you to do so if necessary. ``` -### Create a Terraform execution plan +#### Create a Terraform execution plan Run `terraform plan` to create an execution plan. ``` @@ -109,7 +109,7 @@ Run `terraform plan` to create an execution plan. A long output of resources to be created will be printed. -### Apply a Terraform execution plan +#### Apply a Terraform execution plan Run `terraform apply` to apply the execution plan to your cloud infrastructure. Below command creates all required infrastructure. ``` @@ -132,7 +132,7 @@ In the Google Cloud console, go to the [VM instances page](https://console.cloud ![terraform4 #center](https://github.com/ArmDeveloperEcosystem/arm-learning-paths/assets/40816837/320b4c6f-0d2b-44f3-9517-dc427d82a018) -## SSH into the launched instance +### SSH into the launched instance Run following command to connect to VM through SSH: diff --git a/content/learning-paths/servers-and-cloud-computing/migration/golang.md b/content/learning-paths/servers-and-cloud-computing/migration/golang.md index d8f5da78dc..81826d09d8 100644 --- a/content/learning-paths/servers-and-cloud-computing/migration/golang.md +++ b/content/learning-paths/servers-and-cloud-computing/migration/golang.md @@ -8,7 +8,7 @@ layout: "learningpathall" --- -# Go on Arm Neoverse processors +## Go on Arm Neoverse processors [Go](https://go.dev/) is a statically typed, compiled programming language supported by Google. diff --git a/content/learning-paths/servers-and-cloud-computing/migration/java.md b/content/learning-paths/servers-and-cloud-computing/migration/java.md index f49d1bdd12..3c27026e06 100644 --- a/content/learning-paths/servers-and-cloud-computing/migration/java.md +++ b/content/learning-paths/servers-and-cloud-computing/migration/java.md @@ -8,19 +8,17 @@ layout: "learningpathall" --- -# Java on Arm Neoverse processors +## Java on Arm Neoverse processors Java is a general-purpose, high-level programming language used in a wide variety of applications. -Java code is typically compiled to bytecode that runs on a Java virtual machine (JVM) making it portable across computer architectures. +Java code is usually compiled to bytecode that runs on a Java virtual machine (JVM) making it portable across computer architectures. -There are many ways to install Java on Arm Linux distributions. Refer to the [Java install guide](/install-guides/java/) for information about how to install Java. - -# How can I increase Java performance on Arm? +There are many ways to install Java on Arm Linux distributions. For more information, see the [Java install guide](/install-guides/java/). Java runs well on Arm, but there are some things to investigate to make sure you are getting the best performance. -## Which JVM flags impact performance? +## JVM flags that impact performance The JVM includes a number of flags which are available to tune performance and aid in debugging. Some of the flags are general purpose and some are Arm architecture specific. @@ -30,7 +28,7 @@ To print the final values of the flags after the JVM has been initialized run: java -XX:+PrintFlagsFinal -version ``` -Use the output from the above command to see the current values before making any changes. +Use the output from the previous command to see the current values before making any changes. For example, to check the value of `CICompilerCount` run: @@ -58,7 +56,7 @@ The `-XX:CompilationMode` flag instructs the JIT compiler to to use highest opti The best way to determine optimal values for your application is to test your application with different values. -### Architecture flags +#### Architecture flags There are flags that are specific to the Arm architecture and indicate if a particular hardware feature is used. You can see all the flags by running: