SLA (Service Level Agreement)

SLA stands for Service Level Agreement, which means agreement service level, service quality assurance, etc. on the level of service(definitions, ranges, contents, achievement targets, etc.) tied between providers and their users it will be. This is an indication of how much quality can be guaranteed to the contractor by the service provider.

SLAs are often used mainly for communication service, cloud services, rental servers, etc. We define guarantee items such as definition of service, communication speed, upper limit of usage stop time, etc. When the quality of service falls below the guaranteed value of SLA, reduction of usage fee etc will be done.

In many cases, this reduction is often limited to the usage fee, and it does not include lost profits etc. that the service could not be used properly. In principle, the specified item can be quantitatively measured, and the upper limit, the lower limit, the average, etc. are expressed numerically, and the measurement method etc. are also defined at the same time.

As a user, it is an index to measure the availability and stability of the service, so it is a good idea to check it when selecting a service. Although the SLA values presented by each company vary, it can be seen that there are large differences when looking at “stop time”.

Windows10 VPN connection

With VPN connection, you can connect securely via the company’s network or the Internet(when working in a public place like a coffee shop).

Before connecting to VPN, it is necessary to prepare a VPN profile on the PC. You can create a VPN profile yourself or set up a workplace account to get a VPN profile from your company.

On the add VPN connection screen, do the following:
Under VPN Provider, select Windows(built-in). In the Connection name box, enter the friendly name of the VPN connection profile(for example, your VPN). This is the name of the VPN connection search for when connecting. In the server name and address box, type the VPN server address.
Under [VPN type], select the type of VPN connection to be created. You need to know the type of VPN connection used by user computer or VPN service. In the type of sign-in information, select the type of sign-in information (credential information) to use. It will be a user name and password, a one-time password, a certificate, or a smart card if you connect to VPN at work. Enter a user name and password in each box(optional).

VPN Connection

VPN is a virtual private network built using public lines. It is a technology that allows you to share data and information using a VPN device such as a router with VPN function even if you are a remote location. The merit of VPN is that it costs less than leased line. Especially for Internet VPN it is inexpensive because it uses normal internet line contract.

VPN is a network technology that has been in use since the 2000s, with the background of the development of IT technology and virtualization technology in the background. Besides low-cost merits, data communication is also secured for safety, so more enterprises are introducing it.

Mechanism and features of VPN connection using the Internet
To establish a VPN connection between business offices located in geographically remote places, connect a LAN by installing a VPN dedicated router at both offices. This creates a virtual leased line via the Internet and allows you to access data on each other’s servers even if you are at a remote place. Because it becomes like connected to a common LAN, even you are away, you can share files and the work the same way.

Google Translation Toolbar settings

There are times when I am dealing with multiple languages at work, and when want to translate all at once to turn on pop of “このページを翻訳しますか?”.

Open google chrome setting screen.

Next will look at the detailed setting.

Check the section “Use translation tools on pages other than my mother tongue”.

As offshore development increases, opportunities to use translation tools increase.

AWS CommandLine

AWS Command Line Interface(CLI)
Operate AWS on the command line

It seems that you can easily install AWS CLI by using Python pip. AWS-CLI seems to work with Python 2.6.5 or higher or Python 3.3 or higher.
Let’s put aws cli in centos6.

[vagrant@localhost ~]$ python -V
Python 3.5.2

Installation of AWS-CLI
[vagrant@localhost ~]$ pip install awscli –upgrade –user
Collecting awscli
Downloading https://files.pythonhosted.org/packages/25/f2/ae339ba36dc8774b8fb2b7da1b7351ccdedc7af4b2458221e7ac865b4d2d/awscli-1.16.96-py2.py3-none-any.whl (1.4MB)
100% |████████████████████████████████| 1.4MB 4.3MB/s
Collecting s3transfer<0.2.0,>=0.1.12 (from awscli)
Downloading https://files.pythonhosted.org/packages/d7/14/2a0004d487464d120c9fb85313a75cd3d71a7506955be458eebfe19a6b1d/s3transfer-0.1.13-py2.py3-none-any.whl (59kB)
100% |████████████████████████████████| 61kB 3.2MB/s
Requirement already satisfied, skipping upgrade: PyYAML<=3.13,>=3.10 in ./.pyenv/versions/3.5.2/lib/python3.5/site-packages (from awscli) (3.13)
Collecting botocore==1.12.86 (from awscli)
Downloading https://files.pythonhosted.org/packages/d7/af/fd9c0f1f0fdc03d3367a56f35093f8b1020ba1a97ead9fa580156895944b/botocore-1.12.86-py2.py3-none-any.whl (5.2MB)
100% |████████████████████████████████| 5.3MB 545kB/s
Collecting rsa<=3.5.0,>=3.1.2 (from awscli)
Downloading https://files.pythonhosted.org/packages/e1/ae/baedc9cb175552e95f3395c43055a6a5e125ae4d48a1d7a924baca83e92e/rsa-3.4.2-py2.py3-none-any.whl (46kB)
100% |████████████████████████████████| 51kB 3.8MB/s
Collecting colorama<=0.3.9,>=0.2.5 (from awscli)
Downloading https://files.pythonhosted.org/packages/db/c8/7dcf9dbcb22429512708fe3a547f8b6101c0d02137acbd892505aee57adf/colorama-0.3.9-py2.py3-none-any.whl
Collecting docutils>=0.10 (from awscli)
Downloading https://files.pythonhosted.org/packages/36/fa/08e9e6e0e3cbd1d362c3bbee8d01d0aedb2155c4ac112b19ef3cae8eed8d/docutils-0.14-py3-none-any.whl (543kB)
100% |████████████████████████████████| 552kB 650kB/s
Requirement already satisfied, skipping upgrade: python-dateutil<3.0.0,>=2.1; python_version >= “2.7” in ./.pyenv/versions/3.5.2/lib/python3.5/site-packages (from botocore==1.12.86->awscli) (2.7.3)
Collecting jmespath<1.0.0,>=0.7.1 (from botocore==1.12.86->awscli)
Downloading https://files.pythonhosted.org/packages/b7/31/05c8d001f7f87f0f07289a5fc0fc3832e9a57f2dbd4d3b0fee70e0d51365/jmespath-0.9.3-py2.py3-none-any.whl
Requirement already satisfied, skipping upgrade: urllib3<1.25,>=1.20; python_version >= “3.4” in ./.pyenv/versions/3.5.2/lib/python3.5/site-packages (from botocore==1.12.86->awscli) (1.23)
Collecting pyasn1>=0.1.3 (from rsa<=3.5.0,>=3.1.2->awscli)
Downloading https://files.pythonhosted.org/packages/7b/7c/c9386b82a25115cccf1903441bba3cbadcfae7b678a20167347fa8ded34c/pyasn1-0.4.5-py2.py3-none-any.whl (73kB)
100% |████████████████████████████████| 81kB 2.2MB/s
Requirement already satisfied, skipping upgrade: six>=1.5 in ./.pyenv/versions/3.5.2/lib/python3.5/site-packages (from python-dateutil<3.0.0,>=2.1; python_version >= “2.7”->botocore==1.12.86->awscli) (1.11.0)
Installing collected packages: jmespath, docutils, botocore, s3transfer, pyasn1, rsa, colorama, awscli
The scripts pyrsa-decrypt, pyrsa-decrypt-bigfile, pyrsa-encrypt, pyrsa-encrypt-bigfile, pyrsa-keygen, pyrsa-priv2pub, pyrsa-sign and pyrsa-verify are installed in ‘/home/vagrant/.local/bin’ which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use –no-warn-script-location.
Successfully installed awscli-1.16.96 botocore-1.12.86 colorama-0.3.9 docutils-0.14 jmespath-0.9.3 pyasn1-0.4.5 rsa-3.4.2 s3transfer-0.1.13
You are using pip version 18.0, however version 19.0.1 is available.
You should consider upgrading via the ‘pip install –upgrade pip’ command.

[vagrant@localhost ~]$ aws –version
-bash: aws: コマンドが見つかりません

If I just installed it, I have to passed the path because the aws command was not recognized.

AWS CodeDeploy Error Handling

Can use the AWS CodeDeploy console, the AWS CLI, or the AWS CodeDeploy API to view details about deployment associated with an AWS account.

/opt/codedeploy-agent/deployment-root/deployment-logs/codedeploy-agent-deployments.log

To view the deployment details using the AWS CLI, invoke the get-deployment command or the batch-get-deployments command to get a list of unique deploy IDs to use as input to the get-deployment and batch-get-deployments commands.

Is it better to acquire the execution log of codedeploy as devops thinking?

Writing automatic configuration script, PAC file

In the PAC file, describe the processing condition for specifying the proxy server to use based on the information such as the URL of the access destination. Within script processing, it returns the destination(URL or IP address) and port number of the proxy server matching the condition such as the host name of the URL and the IP address.

PAC file sample

function FindProxyForURL(url, host){
  if(isPlainHostName(host)){
    return "DIRECT";
  } else {
    if (shExpMatch(url, "http://www.bing.com/")){
      return "PROXY www.bing-proxy.com:6060";
    } else if (shExpMatch(url, "http://www.microsoft.com/")){
      return "PROXY www.microsoft-proxy.com:7070";
    } else {
      return "PROXY www.other-proxy.com:8080"
    }
  }
}

Proxy server setting method of Windows 10

When browsing a web page on the internet, it may be set to access via a specific server. This server is called “Proxy server”. It can also be used for non-web access.

The main advantages of this setting are as follows.

Caching can be used when viewing the same web page from multiple personal computers.
(It is unnecessary for all the personal computers to acquire the same data, and the communication volume is reduced)
You can use the “filter” function of not accessing specific URLs.
It is possible to collectively record access histories of all personal computers.

Let’s see how to set “proxy server” on Windows 10.

Open setting and chose network and internet.

Here you can see proxy.

Use setup script
use automatic configuration script
Just specify the location of the PAC file. In what cases proxy to use is described in the PAC file (programming language, a file written in JavaScript)

Specify the URL of the PAC file
Manual proxy set up
specify your own proxy server(specify address and port)
setting method
specify the proxy server address and port number

What is “Proxy Server”

A proxy server is a server that connects to the Internet on behalf of a computer that can not directly connect to the Internet, and represents a server that act on behalf of access to a Web site, and a proxy mean substitute when translated into.

The corporate in-house LAN has a firewall setting to protect the connected computer from malicious external access, but in this state, since you can not access the website from the inside of the company, a proxy serve is putting on.

function
1. cache
2. filtering
3. ensure anonymity

CodeDeploy Appspec.yml

AppSpec
AppSpec is the contents of the deployment process executed by AWS CodeDeploy. It is a file composed of YAML format that describes specific contents, what kind of things to handle in the deployment. In using CodeDeploy, it is very important to specify what are to be set in AppSpec.

The name of the AppSpec file must be appspec.yml and be placed in the root directory. If this requirement is not met, the deployment fails. Also, if there is an AppSpec file, you can make the deployment content including it into a compressed file in Zip.

file composition

version: 0.0
os: operating-system-name
files:
  source-destination-files-mappings
permissions:
  permissions-specifications
hooks:
  deployment-lifecycle-event-mappings

start -> applicationstop -> downloadbundle -> beforeinstall -> install -> afterinstall -> applicationstart -> validateservice -> end